An open API service indexing awesome lists of open source software.

https://github.com/pritpatel2412/kemlang

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

compiler-design interpreter kemlang opensource parser programming-language python3 react

Last synced: about 2 months ago
JSON representation

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

Awesome Lists containing this project

README

          

# ๐Ÿ‡ฎ๐Ÿ‡ณ 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

```bash
npm install -g kemlang
```

### โšก Option 2: Run instantly with `npx`

```bash
npx kemlang yourfile.kem
```

---

## ๐ŸŽฏ Quick Example

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

### 1. Create `hello.kem`

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

### 2. Run it

```bash
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

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

### 2. Install dependencies

```bash
npm install
```

### 3. Run the test suite

```bash
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:

```bash
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:

```bash
pip install fastapi uvicorn
```

* Run the backend server with auto-reload:

```bash
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** ๐Ÿงก