A modern, lightweight note-taking frontend built with React + TypeScript, designed to work with the QuickNote backend API.
- React 18
- TypeScript
- Vite
- TanStack Router
- TanStack Query (React Query)
- Axios
- Tailwind CSS
- Auth is cookie-based (HttpOnly).
- Protected routes use
beforeLoadguards in TanStack Router. - Server state (user, notes) is handled via React Query.
- Credentials are sent with every request.
- All API calls go through a centralized Axios instance.
- Queries & mutations live in
features/*/*.query.ts. - Cache invalidation is explicit and predictable.
Create a .env file:
VITE_BASE_URL=http://localhost:5000
Development
pnpm install
pnpm devRuns the app on: http://localhost:5173
Production Build
pnpm build
pnpm previewPagination UI can be improved (infinite scroll).
Shared DTO package with backend could further reduce duplication.
Tests are not yet added.
Backend API: https://github.com/mssoheil/quickNote-backend