{"id":35091397,"url":"https://github.com/godiegh/swazilang","last_synced_at":"2026-04-01T19:02:05.909Z","repository":{"id":314734134,"uuid":"1056048759","full_name":"godieGH/SwaziLang","owner":"godieGH","description":"A scripting language written in C++ that lets you program using natural Swahili keywords and syntax.","archived":false,"fork":false,"pushed_at":"2026-03-20T00:32:34.000Z","size":3283,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-20T14:31:16.955Z","etag":null,"topics":["programming-language","scripting","swahili","swahili-programming-language","swazilang","swazipen"],"latest_commit_sha":null,"homepage":"https://swazilang.netlify.app","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/godieGH.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-13T09:32:23.000Z","updated_at":"2026-03-20T00:32:33.000Z","dependencies_parsed_at":"2025-10-03T15:27:37.601Z","dependency_job_id":"f4e0c68a-b1ac-4859-b61a-87e1d2c7aa5e","html_url":"https://github.com/godieGH/SwaziLang","commit_stats":null,"previous_names":["godiegh/swazilang"],"tags_count":83,"template":false,"template_full_name":null,"purl":"pkg:github/godieGH/SwaziLang","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godieGH%2FSwaziLang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godieGH%2FSwaziLang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godieGH%2FSwaziLang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godieGH%2FSwaziLang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/godieGH","download_url":"https://codeload.github.com/godieGH/SwaziLang/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godieGH%2FSwaziLang/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31291011,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["programming-language","scripting","swahili","swahili-programming-language","swazilang","swazipen"],"created_at":"2025-12-27T14:39:51.906Z","updated_at":"2026-04-01T19:02:05.892Z","avatar_url":"https://github.com/godieGH.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SwaziLang\n\n[![Release](https://img.shields.io/github/v/release/godieGH/SwaziLang?style=flat-square)](https://github.com/godieGH/SwaziLang/releases)\n\nSwaziLang is a scripting language written in C++ that lets you write programs using natural Swahili keywords and syntax.\n\nWant to learn SwaziLang? [Get started here →](https://swazilang.netlify.app)\n\n---\n\n## Build Instructions\n\n```bash\nmkdir build \u0026\u0026 cd build\ncmake ..\ncmake --build .\n```\n\nTo create an installable package for your OS:\n\n```bash\nmake package\n# Packages are output to build/packages/\n```\n\nInstalling the package (recommended — tracked by your package manager):\n\n```bash\nsudo apt install ./packages/\u003cpackage-name\u003e.deb   # Debian/Ubuntu\n```\n\nOr install directly without package tracking:\n\n```bash\nsudo make install\n# Note: uninstallation requires manual removal\n```\n\n---\n\n## Running SwaziLang\n\nAfter building, run the executable from the `build` directory:\n\n```bash\n./swazi\n```\n\nOr install and add to your system `PATH` to run from anywhere.\n\n---\n\n## Dependencies\n\nMost dependencies are managed automatically by CMake via `FetchContent` or bundled with the build. You do **not** need Conan to build or use SwaziLang.\n\n\u003e **Contributors only:** If you prefer using Conan for third-party dependency management during development, install it with:\n\u003e ```bash\n\u003e pip install conan\n\u003e conan --version  # verify installation\n\u003e\n\u003e mkdir build \u0026\u0026 cd build\n\u003e conan install .. --build=missing --output-folder=.\n\u003e ```\n\n---\n\n## Keywords\n\n| Keyword | Meaning / Usage |\n|---|---|\n| `data` | Declare a variable |\n| `thabiti` | Declare a constant or a `const` getter method |\n| `kazi` | Define a function |\n| `tabia` | Define a method inside an object or class |\n| `rudisha` | Return a value from a function or method |\n| `chapisha` | Print with newline |\n| `andika` | Print without newline |\n| `kweli` | Boolean literal: `true` |\n| `sikweli` | Boolean literal: `false` |\n| `kama` | `if` statement / `as` alias in imports |\n| `vinginevyo` / `sivyo` | `else` / `else if` branch |\n| `kwa` | `for` loop |\n| `wakati` | `while` loop |\n| `fanya` | `do-while` loop |\n| `sawa` | Equality operator (`==`) |\n| `sisawa` | Inequality operator (`!=`) |\n| `na` | Logical AND (keyword form of `\u0026\u0026`) |\n| `au` | Logical OR (keyword form of `\\|\\|`) |\n| `unda` | Create a new object/class instance (`new`) |\n| `muundo` | Define a class |\n| `rithi` | Inherit from a class |\n| `futa` | Manually destroy an object instance |\n| `subiri` | Await an async operation |\n| `tumia` | Import a module |\n| `kutoka` | Specify module source in `tumia` statements |\n| `ruhusu` | Export from a module |\n| `jaribu` | `try` block |\n| `makosa` | `catch` block |\n| `kisha` | `finally` block |\n| `onesha` | Throw an error or exception |\n| `ainaya` | Unary: returns the type of a value |\n| `NINAMBA` | Unary: check if value is a number |\n| `NINENO` | Unary: check if value is a string |\n| `NIBOOL` | Unary: check if value is a boolean |\n| `NIKAZI` | Unary: check if value is a function |\n| `NIORODHA` | Unary: check if value is a list/array |\n| `NIOBJECT` | Unary: check if value is an object (alias: `ob`) |\n\n### Operators \u0026 Symbols\n\n- **Arithmetic:** `+`, `-`, `*`, `**`, `/`, `%`\n- **Bitwise:** standard C bitwise operators\n- **Parentheses `( )`** are used for calling functions and methods — not for declaring them.\n\n---\n\n## Example\n\n```swz\nkazi sum(a, b, c):\n    rudisha a + b + c;\n\n# This is a comment\ndata x = 20;\nchapisha sum(3, 9, x);  # prints 32\n```\n\n---\n\n## Comments\n\nUse `#` for single-line comments.\n\n---\n\n## Documentation\n\nFull language documentation and learning resources are available at [swazilang.netlify.app](https://swazilang.netlify.app).\n\n---\n\n## Contributing\n\nIssues and pull requests are welcome. Feel free to open one if you find a bug or want to improve something.\n\n---\n\n## License\n\nSee [LICENSE](https://github.com/godieGH/SwaziLang/blob/main/LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodiegh%2Fswazilang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgodiegh%2Fswazilang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodiegh%2Fswazilang/lists"}