jukrb0x / taskhorizon

Todo evolved.
https://taskhorizon.vercel.app
GNU Affero General Public License v3.0
0 stars 0 forks source link
calendar monorepo prototype react tauri todolist

image

Schedule your tasks and events in one place.

demo

image

TaskHorizon is a productivity app that combines To-do and Calendar functionality to enable effective daily task management and scheduling, providing a seamless experience for users. We are currently focused on developing the web and macOS versions of the app, with several exciting new features in the pipeline.

Warning This project is currently in the early prototyping phase and the data integrity has not been fully validated. Please exercise caution when using the prototype.

See Planned Roadmap and Project real-time Roadmap for latest updates.

Monorepo

Architecture

Client

Version 0.2 (draft) :

flowchart TB;
    A{Tauri Core} <-- Command & Event --> B[WebView]
    A --> Notification
    B --> React[React] <-- States --> store[Zustand Store] -- Data Persistence --> ls[(LocalStorage)]
    React -- Render --> vdom[VirtualDOM]
    vdom --> al(Application Layout)
    al --> cv(Calendar View)
    al --> tv(TodoList View)
    al --> us(UserSettings view)
    React -- IPC through Tauri Core .> Notification
    store -- Data Fetching --> ch[Custom Hooks] -- SWR --> axios[Axios XMLHttpRequests]
    React -- APIs --> axios

Frontend

TODO

Backend

TODO

Development

Setup Tauri development prerequisites first.

# install dependencies
pnpm i

# start web dev server
pnpm dev

# start Tauri dev window
# -- it will start both web dev server and Tauri dev window
pnpm tauri dev

# build for production
pnpm tauri build

Framework

Infrastructure

Name Description
Tauri Cross-platform framework (Electron alternative)
React Frontend UI framework
React Router Routing for React
Zustand State Management

User Interface

Name Description
Tailwind CSS Custom UI Components
Mantine UI Component and hooks
styled-components Custom UI Components
Semi-UI UI Components

DX

Name Description
ESLint Linting
Prettier Code formatter
Stylelint CSS linter
Husky Git hooks
lint-staged Git hooks
Commitizen Git commit convention
Tailwind Config Viewer Tailwind config and cheatsheet

Modules

WIP