| # Kashi Coding Handbook |
|
|
| Welcome to the **Kashi Coding Handbook** – your comprehensive guide to building AI-powered CLI tools with Python using modern development practices. |
|
|
| ## What You'll Learn |
|
|
| This handbook teaches you how to build professional command-line interface (CLI) applications enhanced with artificial intelligence capabilities. You'll learn: |
|
|
| - **Modern Python Development**: Using pixi for package management and GitHub Copilot for AI-assisted coding |
| - **CLI Development**: Building robust command-line tools with Typer and Rich |
| - **AI Integration**: Incorporating LLMs using HuggingFace, Docker Model Runner, and MCP servers |
| - **Production Practices**: Testing, code quality, and publishing to PyPI |
| - **Real-World Applications**: Complete project examples demonstrating all concepts |
|
|
| ## Who This Is For |
|
|
| This handbook is designed for developers with basic Python knowledge who want to: |
|
|
| - Build practical CLI tools for automation and productivity |
| - Integrate AI/LLM capabilities into their applications |
| - Learn modern Python development workflows |
| - Deploy and publish professional-grade packages |
|
|
| ## Prerequisites |
|
|
| Before starting, you should have: |
|
|
| - Basic Python syntax knowledge (variables, functions, loops, conditionals) |
| - Ability to run Python scripts from the command line |
| - Basic understanding of files and directories |
| - Familiarity with text editors or IDEs |
|
|
| ## How to Use This Handbook |
|
|
| The handbook is organized into **7 chapters** that build upon each other: |
|
|
| 1. **Foundation Setup** - Development environment and project structure |
| 2. **CLI Development** - Building command-line interfaces with Typer |
| 3. **AI Integration** - Adding LLM capabilities with multiple deployment options |
| 4. **Advanced Features** - Interactive elements and batch processing |
| 5. **Testing & Quality** - Writing tests and maintaining code quality |
| 6. **Publishing** - Preparing and publishing packages to PyPI |
| 7. **Real-World Projects** - Complete example: FileOrganizer with multi-agent system |
|
|
| Each chapter includes: |
|
|
| - Clear learning objectives |
| - Hands-on code examples |
| - GitHub Copilot prompts to accelerate development |
| - Best practices and tips |
|
|
| ## Learning Path |
|
|
| We recommend following the chapters in order, as each builds on concepts from previous chapters. However, if you're already familiar with certain topics, feel free to skip ahead. |
|
|
| **Estimated Time**: 10-12 weeks (assuming 5-10 hours per week) |
|
|
| ## About Kashi School of Computing |
|
|
| The Kashi School of Computing is inspired by the legacy of **Jamshid Kashani** (Ghiyāth al-Dīn Jamshīd Masʿūd al-Kāshī), the brilliant 15th-century Persian mathematician and astronomer. Just as Kashani advanced computational mathematics and astronomical instruments, we advance modern computational practices through: |
|
|
| - **Vibe Coding**: Intuitive, flow-state development enhanced by AI |
| - **Multi-Agent Systems**: Collaborative AI architectures for complex problems |
| - **Real-World Impact**: Building tools that solve actual problems |
|
|
| ## Ready to Begin? |
|
|
| Let's start your journey into building AI-powered CLI tools. Head to **Chapter 1: Foundation Setup** to set up your development environment. |
|
|
| --- |
|
|
| *"The purpose of computing is insight, not numbers." - Inspired by Richard Hamming* |
|
|