Skip to content

pritpatel2412/kemlang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

39 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

๐Ÿ‡ฎ๐Ÿ‡ณ KemLang โœจ

A Gujarati-Inspired Toy Programming Language with a Smile ๐Ÿ˜„

KemLang makes programming fun, cultural, and beginner-friendly. Blending playful Gujarati syntax with modern tools, it's perfect for learners who want to code in a language that feels close to home.


๐ŸŒŸ Features Youโ€™ll Love

  • โœ… Gujarati-style syntax (sharu, samaapt, lakho, etc.)
  • ๐Ÿง  Simple, English-like constructs to help beginners get started fast
  • ๐Ÿš€ Complete interpreter pipeline (Lexer โ†’ Parser โ†’ Evaluator)
  • ๐Ÿ’ป CLI support for executing .kem files effortlessly
  • ๐ŸŒ Web API powered by FastAPI for remote execution
  • ๐Ÿคช Playful Gujarati error messages for a cultural twist

๐Ÿ’ฌ โ€œKem cho, developer? Letโ€™s make code feel like garba!โ€


๐Ÿ“ฆ Installation

Get started in seconds with either of these:

๐Ÿงฐ Option 1: Install globally

npm install -g kemlang

โšก Option 2: Run instantly with npx

npx kemlang yourfile.kem

๐ŸŽฏ Quick Example

๐Ÿ‘ฉโ€๐Ÿ’ป Letโ€™s write your first KemLang program!

1. Create hello.kem

sharu {
  do naam = "KemLang";
  lakho("Kem cho " + naam);
} samaapt

2. Run it

kemlang hello.kem

3. Output

Kem cho KemLang

๐Ÿ‘ Thatโ€™s it! You just coded in KemLang!


๐Ÿ“œ Language Reference

๐Ÿ’ฌ English ๐Ÿ’ป KemLang Syntax
Start Block sharu {
End Block } samaapt
Print Statement lakho()
Print Example lakho("Hello");
Variable do
Variable Ex. do x = 10;
If / Else jo / nahitar
If Example jo (x > 5) {}
While Loop jyaare
While Example jyaare (x < 5) {}

๐Ÿ“– Pro Tip: Itโ€™s not just code. Itโ€™s a varta (story) your computer understands!


๐Ÿ›  Development

Want to contribute or hack around? Hereโ€™s how:

1. Clone the repo

git clone https://github.com/yourusername/kemlang.git

2. Install dependencies

npm install

3. Run the test suite

npm test

4. Run locally in VS Code

Frontend

  • Open the terminal in VS Code (Ctrl + ~ or Cmd + ~).
  • Navigate to the frontend directory (e.g., cd frontend if applicable).
  • Run the frontend development server:
npm run dev
  • Open your browser and go to the URL displayed in the terminal (usually http://localhost:3000).

Backend

  • Open a new terminal in VS Code.
  • Navigate to the backend directory (e.g., cd backend if applicable).
  • Ensure you have Python and FastAPI installed. If not, install dependencies:
pip install fastapi uvicorn
  • Run the backend server with auto-reload:
uvicorn cli:app --reload
  • The API will be available at http://localhost:8000 (or the port specified in your configuration).

๐Ÿ“„ License

This project is licensed under the MIT License. See LICENSE for full details.


๐Ÿ™ Credits

KemLang is lovingly inspired by:

  • ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ BhaiLang
  • ๐ŸŒ The Vernacular Programming Movement
  • โš“๏ธ Gujarati Culture & Language

๐Ÿ’ซ Kem cho? Happy Coding! ๐Ÿ™Œ

Let your code speak your culture ๐Ÿงก

About

๐Ÿง  Learn to code with desi vibes using Gujarati keywords like sharu, jo, lakho, samaapt & more! โš™๏ธ Built with: Python ๐Ÿ + FastAPI ๐Ÿš€ + React โš›๏ธ ๐ŸŽฎ Try it live:

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors