MCPcopy Index your code
hub / github.com/antoniopataro/dona-clone

github.com/antoniopataro/dona-clone @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
70 symbols 191 edges 40 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Credits to dona.ai for their amazing product.

About

This project is a clone of dona.ai, which is a to-do list focused on user experience I enjoy - in early access for a while now. I've always liked their design and, therefore, decided to recreate it with Typescript and React.

This current version is a refactor of one I finished mid-2022, which in its turn is a refactor of my first to-do apps (somewhere around here).

Feel free to open issues, make suggestions, and get in contact with me.

Instructions

If you want to run it locally, you can follow these steps:

  1. Clone the repository w/ git clone git@github.com:antoniopataro/dona-clone.git;
  2. Install its dependencies w/ npm install or other package manager you might wanna use;
  3. Either run npm run dev for a development version or npm run build && npm run preview for a production preview version.

Fun fact: I've not only used bun in development mode, but also in the app's deploy for gh-pages (dependencies install and build proccess) - if you wanna use it locally, install bun with curl https://bun.sh/install | bash and run the scripts above with bun instead of npm - if you're interested in the workflow, check its deploy.yml.

Tech

  • bun;
  • heroicons;
  • lordicon;
  • react.js;
  • react-beautiful-dnd;
  • react-calendar;
  • react-markdown w/ remark-gfm plugin;
  • react-router-dom;
  • redux saga;
  • redux w/ react-redux and reduxjs/toolkit;
  • tailwindcss w/ postcss;
  • typescript;
  • vite.

Extension points exported contracts — how you extend this code

ImportMetaEnv (Interface)
(no doc)
src/vite-env.d.ts
Props (Interface)
(no doc)
src/components/ColorPicker/index.tsx
UserState (Interface)
(no doc)
src/store/modules/user/slice.ts
IntrinsicElements (Interface)
(no doc)
src/@types/lord-icons.d.ts
HotkeyProps (Interface)
(no doc)
src/hooks/useHotkeys.tsx
Props (Interface)
(no doc)
src/components/TaskWriter/index.tsx
User (Interface)
(no doc)
src/store/modules/user/types.ts
Props (Interface)
(no doc)
src/hooks/useHotkeys.tsx

Core symbols most depended-on inside this repo

replaceAll
called by 13
src/utils/svg-to-data-uri.ts
useOnClickOutside
called by 7
src/hooks/useOnClickOutside.tsx
get
called by 2
src/services/storage.ts
set
called by 2
src/services/storage.ts
useHotkeys
called by 2
src/hooks/useHotkeys.tsx
useWindowSize
called by 2
src/hooks/useWindowSize.tsx
handleAddTask
called by 1
src/components/TaskWriter/index.tsx
focus
called by 1
src/components/TaskWriter/index.tsx

Shape

Function 36
Interface 24
Method 6
Class 4

Languages

TypeScript100%

Modules by API surface

src/store/modules/lists/types.ts10 symbols
src/services/storage.ts10 symbols
src/components/TaskWriter/index.tsx6 symbols
src/utils/svg-to-data-uri.ts3 symbols
src/hooks/useWindowSize.tsx3 symbols
src/hooks/useHotkeys.tsx3 symbols
src/components/TaskItem/index.tsx3 symbols
src/components/Button/index.tsx3 symbols
src/pages/[slug].tsx2 symbols
src/hooks/useOnClickOutside.tsx2 symbols
src/components/Sidebar/index.tsx2 symbols
src/components/Logo/index.tsx2 symbols

For agents

$ claude mcp add dona-clone \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact