shiroshiro14 / todo

Fast fully keyboard driven todo app with GitHub integration and AI features

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fast fully keyboard driven todo app with GitHub integration and AI features

It's an extension to Learn Anything. The goal is to make the best task manager. It uses the same database that LA is using.

Contents

Ask questions on Discord if interested in developing the project or you get issues with setup.

Everything below needs to be updated.

File structure

Tech stack is described in docs/tech-stack.md.

Setup

Everything is driven using pnpm commands as part of monorepo setup using pnpm workspaces.

First run:

pnpm i

TODO: pnpm dev-setup should create .env variables with default env

Before running the app, you need to setup up some environment variables.

Setup env variables

Create new file .env at root of project with this content:

VITE_HANKO_API=https://e879ccc9-285e-49d3-b37e-b569f0db4035.hanko.io
VITE_GRAFBASE_API_URL=http://127.0.0.1:4000/graphql
VITE_TINYBIRD_API_KEY=

Above Hanko API uses LA's staging auth setup. You can create your own new project at hanko.io and fill it with own API value. Set App URL to http://localhost:3000.

Create new file at grafbase/.env with this content:

GRAFBASE_API_URL=http://127.0.0.1:4000/graphql
HANKO_API_ENDPOINT=https://e879ccc9-285e-49d3-b37e-b569f0db4035.hanko.io/.well-known/jwks.json
UPSTASH_REDIS_REST_URL=
UPSTASH_REDIS_REST_TOKEN=
OPENAI_API_KEY=
TINYBIRD_API_KEY=

Upstash Redis URL/Token can be gotten by creating new project in Upstash Console.

Can use your own OpenAI key. Get it from here.

Tinybird is used for analytics. Can get the key for it in dashboard.

Run server

npx grafbase@latest dev

Open http://localhost:4000 for GraphQL playground. Read Grafbase getting started to get familiar.

Run web

pnpm dev

Then go to http://localhost:3000/, it renders route defined at src/routes/index.tsx.

If signed in (there is valid token stored in cookie), it shows the app, otherwise the landing page.

Mobile app

Check mobile

Contribute

The tasks to do are outlined in GitHub issues and in todo.md (sorted by priority).

If issue/idea you have is not there, open new issue or start discussion.

Any PR with code/doc improvements is welcome. ✨

Join Discord for more indepth discussions.

Docs

All docs can be seen in docs.

Contribute

Always open to useful ideas or fixes in form of issues or PRs.

Can open new issue (search existing issues first) or start discussion.

It's okay to submit draft PR as you can get help along the way to make it merge ready.

🖤

Discord X

About

Fast fully keyboard driven todo app with GitHub integration and AI features

License:MIT License


Languages

Language:TypeScript 99.1%Language:CSS 0.7%Language:Rust 0.1%Language:JavaScript 0.1%