Metadata-Version: 2.4
Name: mbm
Version: 0.1.0
Summary: MBM - A modular CLI platform with Aaryan language support and AI assistant
Author-email: MBM Team <contact@mbm.edu>
Maintainer-email: MBM Team <contact@mbm.edu>
License: MIT
Project-URL: Homepage, https://github.com/mbm/mbm-cli
Project-URL: Documentation, https://mbm.readthedocs.io
Project-URL: Repository, https://github.com/mbm/mbm-cli
Project-URL: Issues, https://github.com/mbm/mbm-cli/issues
Project-URL: Changelog, https://github.com/mbm/mbm-cli/blob/main/CHANGELOG.md
Keywords: cli,mbm,aaryan,programming-language,ai-assistant,nlp,educational,birthday,countdown
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Education
Classifier: Topic :: Software Development :: Interpreters
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.1.0
Requires-Dist: rich>=13.0.0
Requires-Dist: requests>=2.28.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: platformdirs>=3.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Provides-Extra: nlp
Requires-Dist: spacy>=3.5.0; extra == "nlp"
Provides-Extra: all
Requires-Dist: spacy>=3.5.0; extra == "all"
Dynamic: license-file

# MBM - Modular CLI Platform

[![PyPI version](https://badge.fury.io/py/mbm.svg)](https://badge.fury.io/py/mbm)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey)](https://github.com/mbm/mbm-cli)

**MBM** is a powerful, modular command-line interface platform featuring the Aaryan programming language, an intelligent AI assistant, and a student birthday countdown system. Built for education, productivity, and extensibility.

## 🚀 Installation

### Step 1: Install Python (if not already installed)

Download from [python.org](https://www.python.org/downloads/) and **check "Add Python to PATH"** during installation.

### Step 2: Install MBM

```bash
pip install mbm
```

That's it! Now you can use `mbm` from any terminal.

### Verify Installation

```bash
mbm --version
```

If `mbm` is not recognized, use this alternative (always works):
```bash
python -m mbm.cli.main --version
```

### Troubleshooting PATH Issues

<details>
<summary><b>Windows</b> - If 'mbm' is not recognized</summary>

```powershell
# Find where mbm is installed
python -c "import sys, os; print(os.path.join(os.path.dirname(sys.executable), 'Scripts'))"

# Add that path to your system PATH, or use:
python -m mbm.cli.main
```
</details>

<details>
<summary><b>macOS/Linux</b> - If 'mbm' is not recognized</summary>

```bash
# Find where mbm is installed
python3 -c "import sys, os; print(os.path.join(os.path.dirname(sys.executable), 'bin'))"

# Add to PATH in ~/.bashrc or ~/.zshrc:
export PATH="$PATH:$(python3 -m site --user-base)/bin"
```
</details>

## 📖 Quick Start

### Basic Commands

```bash
# Show MBM banner and help
mbm

# Access Aaryan language
mbm aaryan

# Run an Aaryan program
mbm aaryan run program.ar

# Start AI assistant
mbm ai

# View student birthday countdown (433 students!)
mbm kanishka_singhal
mbm vidhi_dave
mbm students --upcoming

# View animations demo
mbm animate --all

# List all students
mbm students
mbm students -b CSE    # Filter by branch

# Shutdown PC (use with caution!)
mbm blast
```

## 🎯 Features

### 🖥️ CLI Platform
- Clean, intuitive command-line interface
- Rich terminal output with colors and formatting
- **Cross-platform support** (Windows, macOS, Linux)
- Works in any shell (PowerShell, CMD, Bash, Zsh, Fish)

### 🎂 Student Birthday Countdown
- **433 unique student commands** (`mbm <student_name>`)
- Real-time countdown (days, hours, minutes, seconds)
- Animated celebrations for birthdays
- Branch-wise filtering and search

### 🔤 Aaryan Language
- Custom programming language embedded in MBM
- Simple syntax for educational purposes
- File extension: `.ar`

### 🤖 AI Assistant
- **Local-first**: Uses spaCy for NLP (no cloud LLMs)
- **Intent Detection**: Understands what you're asking
- **Entity Extraction**: Identifies key terms and subjects
- **Query Cleanup**: Processes messy natural language

### 🎬 ASCII Animations
- Falling confetti with physics
- Fireworks explosions
- Birthday cakes with flickering candles
- Countdown flip animations

### 🖼️ Media Handling
- Fetches images from **legal sources only** (Wikimedia Commons)
- Opens media using system's native viewer
- Temporary files auto-cleaned

### 📚 Information Retrieval
- Wikipedia API for factual information
- Clean, concise text output
- Privacy-respecting design

## 🏗️ Architecture

```
MBM (Platform CLI)
├── aaryan (Language Module)
├── ai (AI Assistant)
├── people (Special Profiles)
│   ├── students
│   └── faculty
└── utils (Cross-platform Utilities)
```

## 🔒 Privacy & Ethics

- **No web scraping**: Only legal, public APIs
- **No Google Images**: Wikimedia Commons only
- **No cloud LLMs**: Local NLP processing
- **No tracking**: Your data stays local
- **No permanent storage**: Temp files only

## 🛠️ Development

```bash
# Clone repository
git clone https://github.com/mbm/mbm-cli.git
cd mbm-cli

# Create virtual environment
python -m venv venv
source venv/bin/activate  # Linux/macOS
venv\Scripts\activate     # Windows

# Install in development mode
pip install -e ".[dev]"

# Download spaCy model
python -m spacy download en_core_web_sm

# Run tests
pytest
```

## 📜 License

MIT License - see [LICENSE](LICENSE) for details.

## 🙏 Acknowledgments

- MBM University, Jodhpur
- All contributors and supporters

---

**Made with ❤️ by the MBM Team**
