A modern, full-stack note-taking and productivity app with Pomodoro timer, checklist, OCR, and more.
ThinkLoop/
├── client/ # React + TypeScript (Create React App)
│ ├── src/
│ └── package.json
├── server/ # Express + TypeScript API server (MongoDB)
│ ├── src/
│ └── package.json
└── README.md
- Rich text note editor
- Pomodoro timer with custom durations
- Checklist and task management
- Pinned notes and quick access widgets
- Weather widget (city configurable)
- OCR (image-to-text) support via Tesseract.js
- User authentication (MongoDB)
- Responsive, modern UI
- Multiple Themes
- Undo/redo for notes and titles
- Storage limiting
cd server
npm install
npm run build
npm startcd client
npm install
npm start- Deploy both
clientandserveras separate web services on Render. - Set environment variables such as
MONGODB_URIin the Render dashboard for the server. - The free Render plan will automatically spin down your server after 15 minutes of inactivity, causing “cold starts” when accessed.
- Cold starts: The server may take a minute to wake up after inactivity.
- Resource limits: Free MongoDB and Render plans have storage and connection limits.
- Frontend: React, TypeScript, Create React App, rehype-highlight, Tesseract.js, CSS Modules
- Backend: Node.js, Express, TypeScript, MongoDB, bcrypt, dotenv
- Deployment: Render.com (free plan)
- Other: Weather API, OCR (Tesseract.js)
- Real-time collaboration
- Calendar integration
- Code Formatting using rehype-highlight
- More "Home" widgets
- AI summarizing and writing tools
- More themes and customization