Welcome home!
Over the course of 6–7 weeks, you’ll learn how to design, implement, and deploy a real-world chatbot using Python and modern web technologies. This site documents your learning journey and will evolve alongside your project.
🚧 This page is a living document. More resources and notes will be added as the project progresses!
🎯 Objectives
- Build a simple but functional rule-based chatbot in Python
- Learn how to structure and modularize Python code
- Create a web interface for the chatbot using Flask
- Practice agile, iterative software development
- Gain experience with deployment tools like Replit, Render, or Heroku
- Deploy a working chatbot demo online
- Document and present the completed project professionally
- Have fun!
🛠 Tools
- Python 3.x
- Git + GitHub
- Visual Studio Code (or equivalent)
- Flask
- Replit / Render / Heroku (pick one for deployment)
- JSON / APIs (optional extension)
📅 Weekly Plan
This plan is tentative and may be adapted based on learning pace or new ideas. The weekly plans’ hyperlinks are cu
🧪 Each week has goals and ends with a “demoable” outcome or checkpoint.
- Week 1 – Intro to Python & Git + Environment Setup
- Goals: Set up Python, Git, VS Code, and project repo
- Outcomes: Terminal chatbot skeleton with input/output loop
- Week 2 – Core Chatbot Logic
- Goals: Implement hardcoded intents and response logic
- Outcomes: Terminal chatbot can handle ~10 basic queries via dictionary or string matching
- [Week 3 – External Data & Code Modularization]
- Goals: Move chatbot responses to an external file (e.g.,
responses.json
) - Outcomes: Chatbot can load knowledge dynamically + optional API response integration
- Goals: Move chatbot responses to an external file (e.g.,
- [Week 4 – Web App Development (Flask)]
- Goals: Convert chatbot into a web app with Flask
- Outcomes: Web chatbot with textbox + submit button, hosted locally
- [Week 5 – Polish & Deploy]
- Goals: Finalize chatbot UI and deploy to a public platform
- Outcomes: Live chatbot URL via Render/Replit/Heroku + basic styling
- [Week 6 – Documentation & Final Demo]
- Goals: Clean up repo, document all code, and prepare for presentation
- Outcomes: Well-documented GitHub repo + project demo + team presentation
📚 Resources
- [Glossary] – Definitions of terms used in the project
- [Reference Docs] – Links to Python, Flask, Git, etc.
📐 Approach to Learning
- Agile & Iterative Development
- Self-Management & Ownership
- Growth Mindset
- Scandinavian Work Culture (“The Danish Way”)
- Innovation-Driven Engineering
- Effective Communication of Technical Work
👥 Author & Audience
This site is created and maintained by Viraj Rajurkar, Junior MLOps Engineer @ Cerebriu.
Created for Abhinav Pai, Summer Intern @ Cerebriu, Summer 2025.
If you’re reading this as a future intern, welcome! This site is both a learning scaffold and a celebration of your work :)