Skip to content

Rayquazads/todo-ai-app

Repository files navigation

To-Do AI App

Next.js TypeScript Supabase Vercel n8n

A simple to-do list application built with Next.js + Supabase, deployed on Vercel.
This project is part of the AI Automation Developer – Client Transformation Specialist challenge.
The app allows users to create, edit and complete tasks with persistent storage in Supabase.
In the next steps, it will be extended with n8n and AI enhancements.

Demo: insert Vercel URL here
Database: Supabase (tasks table)


✨ Features (Day 1)

  • Add a task
  • Edit a task inline
  • Mark task as complete
  • Persistent storage in Supabase
  • Healthcheck endpoint: /api/health

Roadmap:

  • Day 2: UX improvements + internal /api/tasks endpoint
  • Day 3: n8n workflow + AI task title enhancement (enhanced_title)
  • Day 4 (bonus): WhatsApp integration (Evolution API) + #to-do list filter
  • Day 5: Loom video + final delivery

🧱 Tech Stack

  • Next.js (App Router, Tailwind)
  • TypeScript
  • Supabase (@supabase/supabase-js)
  • Vercel (deployment)
  • n8n (automation — part 2)

🗄️ Database Schema (Supabase)

create table if not exists public.tasks (
  id bigint generated by default as identity primary key,
  title text not null,
  enhanced_title text,
  completed boolean not null default false,
  source text default 'app',
  user_email text,
  created_at timestamptz not null default now()
);
create index if not exists tasks_created_at_idx
  on public.tasks(created_at desc);

🚀 Run Locally

git clone https://github.com/Rayquazads/todo-ai-app.git
cd todo-ai-app
npm install

create .env.local at the project root:

  • NEXT_PUBLIC_SUPABASE_URL=...
  • NEXT_PUBLIC_SUPABASE_ANON_KEY=...

npm run dev open http://localhost:3000


🌐 Deployment

Vercel (GitHub integration)

  1. Import the GitHub repo in Vercel.
  2. Add these environment variables in Settings → Environment Variables:
NEXT_PUBLIC_SUPABASE_URL=https://<project>.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=<anon-key>

✅ Integration points

## 🧩 Integration points (for n8n – Day 3)

- Read/write on `public.tasks` (via Supabase REST or a custom API endpoint)
- AI output stored in **`enhanced_title`**
- Suggested metadata: **`source = 'bot' | 'app' | 'whatsapp'`**
- *(Bonus)* Trigger only on messages containing **`#to-do list`**

📦 Deliverables (challenge)

  • ✅ Deployed webapp (Vercel)
  • ✅ Public GitHub repository
  • ✅ n8n access (URL / login / password) — upcoming
  • ✅ Loom video (5–10 min) explaining solution & demo

👤 Author

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors