Initial todo app setup
- Backend: Bun + Elysia + Drizzle ORM + PostgreSQL - Frontend: React + Vite + TailwindCSS + Zustand - Auth: better-auth with invite-only system - Features: Tasks, Projects, Sections, Labels, Comments - Hammer API: Dedicated endpoints for AI assistant integration - Unit tests: 24 passing tests - Docker: Compose file for deployment
This commit is contained in:
63
README.md
Normal file
63
README.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# Todo App
|
||||
|
||||
A Todoist-inspired task management app with API access for Hammer (AI assistant).
|
||||
|
||||
## Tech Stack
|
||||
|
||||
### Backend (apps/api)
|
||||
- **Runtime**: Bun
|
||||
- **Framework**: Elysia
|
||||
- **Database**: PostgreSQL + Drizzle ORM
|
||||
- **Auth**: better-auth (invite-only)
|
||||
- **Jobs**: pg-boss (reminders, notifications)
|
||||
- **Email**: Resend
|
||||
|
||||
### Frontend (apps/web)
|
||||
- **Framework**: React + Vite
|
||||
- **Styling**: TailwindCSS + shadcn/ui
|
||||
- **Data**: TanStack Query
|
||||
- **Routing**: React Router
|
||||
- **State**: Zustand
|
||||
|
||||
## Features
|
||||
|
||||
- ✅ Tasks with priorities, due dates, descriptions
|
||||
- ✅ Projects and sections
|
||||
- ✅ Sub-tasks
|
||||
- ✅ Labels (cross-project tagging)
|
||||
- ✅ Recurring tasks
|
||||
- ✅ Reminders
|
||||
- ✅ Comments with attachments
|
||||
- ✅ Custom filters
|
||||
- ✅ Today / Upcoming / Board views
|
||||
- ✅ Invite-only user management
|
||||
- ✅ Hammer API (AI assistant integration)
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
cd apps/api && bun install
|
||||
cd apps/web && bun install
|
||||
|
||||
# Start API
|
||||
cd apps/api && bun run dev
|
||||
|
||||
# Start Web
|
||||
cd apps/web && bun run dev
|
||||
```
|
||||
|
||||
## Deployment
|
||||
|
||||
- Domain: todo.donovankelly.xyz
|
||||
- Server: Hostinger VPS
|
||||
|
||||
## API Endpoints
|
||||
|
||||
### Hammer API
|
||||
```
|
||||
POST /api/hammer/tasks - Create task assigned to Hammer
|
||||
GET /api/hammer/tasks - Get Hammer's assigned tasks
|
||||
PATCH /api/hammer/tasks/:id - Update/complete task
|
||||
POST /api/hammer/webhook - Register notification webhook
|
||||
```
|
||||
Reference in New Issue
Block a user