Skip to content

Repository files navigation

Hello World Project

View Interactive SiteMIT LicenseLanguagesPRs Welcome

The same program, written in 142 different languages.

Browse all 142 languages


Overview

This project collects Hello, World! in 142 programming languages — from Python and C to Brainfuck and Shakespeare. Every file prints the same string. The differences are in the syntax.

Use it to look up how a language works, compare two languages side by side, or find something you have not seen before.

Features

WhatDetails
142 languagesProcedural, OOP, functional, scripting, esoteric, hardware, logic, and markup.
SearchType a name, find the language. Fuzzy matching included.
FilterClick a paradigm tag to narrow the grid.
ComparePick up to 3 languages and see their code side by side.
Copy and downloadOne click to copy or download any source file.
Dark and light modeFollows your system preference. Manual toggle available.
Deep linksLink directly to any language with a URL hash (e.g., #python).
CI/CDGitHub Actions validates the manifest and deploys to Pages on every push.

Project Structure

Hello-World/
├── docs/
│ ├── hello-world/ Source code files for all 142 languages
│ ├── index.html Website entry point
│ ├── style.css Styles and theme system
│ ├── app.js Application logic
│ ├── languages.json Language manifest (auto-generated)
│ └── build.py Build script to regenerate the manifest
├── .github/
│ └── workflows/
│ └── deploy.yml CI/CD: validation and GitHub Pages deployment
├── CONTRIBUTING.md Contribution guidelines
├── LICENSE MIT License
└── README.md

Quick Reference

LanguageFileDescription
Pythonhello.pyHigh-level, general-purpose language.
JavaScripthello.jsPrimary language of the web platform.
Rusthello.rsMemory-safe systems programming.
Gohello.goStatically typed with built-in concurrency.
C++hello.cppHigh-performance compiled language.
Haskellhello.hsPurely functional programming.
Javahello.javaPlatform-independent OOP language.
Chello.cFoundation of systems programming.

For the full list, visit the interactive site or browse the hello-world/ directory.

Build

Regenerate languages.json from the source files:

cd docs
python build.py

The script scans hello-world/, maps file extensions to language metadata via internal dictionaries, and writes the manifest with paradigm tags.

Contributing

Contributions are welcome. See CONTRIBUTING.md for file naming conventions, paradigm tag definitions, and the pull request process.

Summary:

  1. Fork the repository.
  2. Create a feature branch: git checkout -b feature/add-language-name.
  3. Add the source file to docs/hello-world/.
  4. Update the extension mapping in docs/build.py.
  5. Run python docs/build.py to regenerate the manifest.
  6. Commit, push, and open a pull request.

License

Distributed under the MIT License. See LICENSE for the full text.

About

A comprehensive collection of 'Hello, World!' in 140+ programming languages - from Assembly to Zig

Topics

Resources

Contributing

Stars

0 stars

Watchers

1 watching

Forks

Contributors