Code Lib
Updated a month ago

hackathon-ii_the-evolution-of-todo

NNaimalArain13
0.0k
naimalarain13/hackathon-ii_the-evolution-of-todo
66
Agent Score

πŸ’‘ Summary

A multi-phase project demonstrating the evolution of a todo application from a console app to a cloud-native AI chatbot using spec-driven development.

🎯 Target Audience

AI development studentsSpec-driven development learnersFull-stack developers exploring new stacksDevOps engineers interested in AI-assisted tooling

πŸ€– AI Roast: β€œThis is less a finished skill and more a speculative roadmap for a multi-phase project, where the most concrete deliverable is a basic Python todo list.”

Security AnalysisMedium Risk

The README mentions database connections (DATABASE_URL) and shared secrets (BETTER_AUTH_SECRET) in environment files, posing a risk of credential exposure if these files are committed. It also plans for shell/container execution in later phases. Mitigation: Enforce .gitignore for all .env* files and use a secrets management service for production.

Hackathon II - The Evolution of Todo

Mastering Spec-Driven Development & Cloud-Native AI

This project demonstrates the evolution of a software application from a simple console app to a fully-featured, cloud-native AI chatbot deployed on Kubernetes. Built using Spec-Driven Development with Claude Code and Spec-Kit Plus.

Project Overview

This is a monorepo containing multiple phases of the Todo application evolution:

  • βœ… Phase I: Console App (Complete)
  • 🚧 Phase II: Full-Stack Web Application (In Progress)
  • ⏳ Phase III: AI Chatbot with MCP Server
  • ⏳ Phase IV: Local Kubernetes Deployment
  • ⏳ Phase V: Advanced Cloud Deployment

Quick Start

Phase 1 - Console App (Completed)

cd phase-1 uv venv source .venv/bin/activate # Windows: .venv/Scripts/activate uv sync python3 src/main.py

Phase 2 - Full-Stack Web App (In Progress)

Frontend (Next.js)

cd frontend npm install npm run dev # Opens on http://localhost:3000

Backend (FastAPI)

cd backend uv venv source .venv/bin/activate uv sync uvicorn main:app --reload # Opens on http://localhost:8000

Project Structure

Hackathon II/
β”œβ”€β”€ phase-1/              # βœ… Phase I: Python Console App (Complete)
β”‚   β”œβ”€β”€ src/              # Source code
β”‚   β”œβ”€β”€ tests/            # Unit tests
β”‚   └── README.md         # Phase 1 documentation
β”‚
β”œβ”€β”€ frontend/             # 🚧 Phase II: Next.js Frontend (In Progress)
β”‚   β”œβ”€β”€ app/              # Next.js App Router pages
β”‚   β”œβ”€β”€ components/       # React components
β”‚   β”œβ”€β”€ lib/              # API client and utilities
β”‚   └── CLAUDE.md         # Frontend development guidelines
β”‚
β”œβ”€β”€ backend/              # 🚧 Phase II: FastAPI Backend (In Progress)
β”‚   β”œβ”€β”€ routes/           # API endpoints
β”‚   β”œβ”€β”€ models.py         # Database models
β”‚   β”œβ”€β”€ middleware/       # Authentication middleware
β”‚   └── CLAUDE.md         # Backend development guidelines
β”‚
β”œβ”€β”€ specs/                # Centralized Specifications
β”‚   β”œβ”€β”€ overview.md       # Project overview
β”‚   β”œβ”€β”€ architecture.md   # System architecture
β”‚   β”œβ”€β”€ features/         # Feature specifications
β”‚   β”œβ”€β”€ api/              # API specifications
β”‚   β”œβ”€β”€ database/         # Database schemas
β”‚   └── ui/               # UI specifications
β”‚
β”œβ”€β”€ history/              # Prompt History Records & ADRs
β”‚   β”œβ”€β”€ prompts/          # Development history
β”‚   └── adr/              # Architectural Decision Records
β”‚
β”œβ”€β”€ .specify/             # Spec-Kit Plus templates and scripts
β”‚   β”œβ”€β”€ memory/
β”‚   β”‚   └── constitution.md  # Project principles
β”‚   └── templates/        # Spec templates
β”‚
β”œβ”€β”€ CLAUDE.md             # Root development guidelines
└── README.md             # This file

Technology Stack

Phase I: Console App βœ…

  • Language: Python 3.13+
  • Package Manager: UV
  • UI: Rich (colorful CLI) + Inquirer (interactive menus)
  • Storage: JSON file persistence

Phase II: Full-Stack Web App 🚧

  • Frontend: Next.js 16+ (App Router), TypeScript, Tailwind CSS
  • Backend: FastAPI, Python 3.13+
  • Database: Neon Serverless PostgreSQL
  • ORM: SQLModel
  • Authentication: Better Auth with JWT tokens
  • Deployment: Vercel (frontend) + Hugging Face (backend)

Phase III: AI Chatbot ⏳

  • UI: OpenAI ChatKit
  • AI Framework: OpenAI Agents SDK
  • MCP Server: Official MCP SDK
  • Database: Neon PostgreSQL (with conversations & messages)

Phase IV: Local Kubernetes ⏳

  • Containerization: Docker with Docker AI (Gordon)
  • Orchestration: Kubernetes (Minikube)
  • Package Manager: Helm Charts
  • AIOps: kubectl-ai, kagent

Phase V: Cloud Deployment ⏳

  • Cloud Provider: DigitalOcean Kubernetes (DOKS)
  • Messaging: Kafka on Redpanda Cloud
  • Runtime: Dapr
  • CI/CD: GitHub Actions

Features by Phase

Phase I (Complete) βœ…

  • Add, delete, update, view, mark complete tasks
  • Interactive menu with colorful UI
  • Command-line interface for scripts
  • JSON persistence
  • Input validation

Phase II (In Progress) 🚧

  • Multi-user authentication (Better Auth + JWT)
  • RESTful API with FastAPI
  • Responsive web UI with Next.js
  • Persistent storage in PostgreSQL
  • User isolation and security

Phase III (Planned) ⏳

  • Conversational task management
  • Natural language understanding
  • MCP tools for task operations
  • Stateless chatbot with database persistence

Phase IV (Planned) ⏳

  • Docker containerization
  • Local Kubernetes deployment with Minikube
  • Helm charts for package management
  • AI-assisted DevOps (kubectl-ai, kagent)

Phase V (Planned) ⏳

  • Recurring tasks with automated scheduling
  • Due dates and reminders
  • Event-driven architecture with Kafka
  • Production deployment on DigitalOcean
  • Full Dapr integration (Pub/Sub, State, Bindings, Secrets)

Development Approach

Spec-Driven Development (Required)

This project follows Spec-Driven Development:

  1. Write specifications in /specs
  2. Use Claude Code to generate implementation
  3. Refine specs until code is correct
  4. Manual coding is not allowed per constitution

Workflow

1. Write Spec β†’ @specs/features/task-crud.md
2. Ask Claude Code β†’ "Implement @specs/features/task-crud.md"
3. Claude Code generates code
4. Test and iterate on spec
5. Create Prompt History Record (PHR)

Documentation

Setup Instructions

Prerequisites

  • Python 3.13+ (for backend and Phase 1)
  • UV package manager for Python
  • Node.js 18+ and npm/pnpm/yarn (for frontend)
  • Git for version control
  • PostgreSQL (Neon Serverless for Phase 2+)

Environment Variables

Frontend (.env.local)

NEXT_PUBLIC_API_URL=http://localhost:8000 BETTER_AUTH_SECRET=your-shared-secret-here BETTER_AUTH_URL=http://localhost:3000

Backend (.env)

DATABASE_URL=postgresql://user:password@host/database BETTER_AUTH_SECRET=your-shared-secret-here JWT_ALGORITHM=HS256

Important: BETTER_AUTH_SECRET must be identical in both frontend and backend.

Testing

Phase 1

cd phase-1 pytest tests/

Frontend

cd frontend npm test

Backend

cd backend pytest tests/

Deployment

Phase 2 Deployment

Frontend to Vercel

  1. Push code to GitHub
  2. Connect repository to Vercel
  3. Set environment variables in Vercel dashboard
  4. Deploy automatically on push

Backend to Hugging Face Spaces

  1. Create new Space (FastAPI template)
  2. Upload backend files
  3. Add secrets in Space settings
  4. Deploy

Scoring

| Phase | Points | Due Date | Status | |-------|--------|----------|--------| | Phase I | 100 | Dec 7, 2025 | βœ… Complete | | Phase II | 150 | Dec 14, 2025 | 🚧 In Progress | | Phase III | 200 | Dec 21, 2025 | ⏳ Planned | | Phase IV | 250 | Jan 4, 2026 | ⏳ Planned | | Phase V | 300 | Jan 18, 2026 | ⏳ Planned | | Total | 1,000 | | |

Bonus Points

  • Reusable Intelligence (Subagents/Skills): +200
  • Cloud-Native Blueprints: +200
  • Multi-language Support (Urdu): +100
  • Voice Commands: +200
  • Total Bonus: +600

Contributing

This is an individual hackathon project. Each participant submits separately.

Resources

License

This project is part of the Panaversity, PIAIC, and GIAIC Hackathon II.


Built with Claude Code + Spec-Kit Plus Hackathon II - The Evolution of Todo Version: 2.0.0 | Last Updated: 2025-12-08

5-Dim Analysis
Clarity7/10
Novelty5/10
Utility6/10
Completeness8/10
Maintainability7/10
Pros & Cons

Pros

  • Well-structured monorepo with clear phase separation.
  • Comprehensive documentation and spec-driven approach.
  • Ambitious roadmap covering modern full-stack and cloud-native concepts.

Cons

  • Not a single, deployable 'skill' but a collection of in-progress projects.
  • Utility as an AI agent skill is low in its current state.
  • High complexity and many dependencies for a simple core function.

Related Skills

pytorch

S
toolCode Lib
92/ 100

β€œIt's the Swiss Army knife of deep learning, but good luck figuring out which of the 47 installation methods is the one that won't break your system.”

agno

S
toolCode Lib
90/ 100

β€œIt promises to be the Kubernetes for agents, but let's see if developers have the patience to learn yet another orchestration layer.”

nuxt-skills

S
toolCo-Pilot
90/ 100

β€œIt's essentially a well-organized cheat sheet that turns your AI assistant into a Nuxt framework parrot.”

Disclaimer: This content is sourced from GitHub open source projects for display and rating purposes only.

Copyright belongs to the original author NaimalArain13.