Skip to content

Repository files navigation

Simply

A minimalist to-do list with tags, categories, a calendar, and a context-aware AI assistant. No accounts, no passwords — just a name on first visit.

Stack

  • Next.js (App Router, TypeScript, Tailwind)
  • SQLite via Turso (libSQL) — same SQLite you know, but deployable on Vercel's serverless functions.
  • Groq for the AI assistant (llama-3.3-70b-versatile)

How identity works

There's no login. On first visit you're asked for a name, which generates a random id stored in localStorage (and a cookie as backup). That id tags every row you create in the database. Clearing browser storage effectively "logs you out" of that device — there's no recovery flow, by design, since there's nothing to recover.

Features

  • Quick add — type a task, use #tag and @category inline shorthand, optionally set a due date.
  • List view — grouped into Overdue / Today / Tomorrow / This week / Later / No date.
  • Calendar — month view with a dot on any day that has open tasks; click a day to filter the list to it.
  • Assistant — a chat panel that can see your current tasks (titles, tags, categories, due dates, completion state) and answer questions about them. It's read-only by design — it won't add or edit tasks for you, only talk about what's there.

Project structure

src/
  app/
    api/
      user/route.ts         # create/fetch identity by id
      todos/route.ts        # list/create todos
      todos/[id]/route.ts   # update/delete a todo
      chat/route.ts         # AI assistant endpoint
    page.tsx                # main app shell
    layout.tsx              # fonts + metadata
  components/
    Onboarding.tsx
    QuickAdd.tsx
    TodoList.tsx / TodoItem.tsx
    Calendar.tsx
    Chat.tsx
    RightPanel.tsx          # calendar/assistant tab switcher
  lib/
    db.ts                   # Turso client + schema
    identity.ts             # server-side header/cookie reader
    useIdentity.ts          # client-side identity hook
    api.ts                  # fetch helpers
    quickAdd.ts             # #tag / @category parser

f63c1e2 (Initial commit: Simply - minimalist to-do app with Next.js, SQLite, Groq AI)

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages