Thoughts is a lightweight, production-ready progressive web app (PWA) for capturing short notes and ideas with offline-first behaviour and fast static performance.
Badges: Visit the live site
Highlights
- Offline support via a service worker
- Fast static assets (minified JS/CSS)
- Small footprint: no backend required for core functionality
If Thoughts helps you, you can support the project here:
Your support helps keep Thoughts free, offline-first, and actively maintained.
- Overview
- Features
- Quick Start
- Development
- Build & Release
- Project Structure
- Contribution
- License
Thoughts provides a focused UI for creating and browsing short notes. It is designed to be simple, resilient offline, and easy to deploy to any static hosting provider (Netlify, GitHub Pages, etc.).
- Offline-first PWA with
service-worker.jsandoffline.html - Minified production assets (
script.min.js,custom.min.css) - Simple build helpers in
package.jsonfor minification - Static single-page UI optimized for mobile and desktop
-
Clone the repository:
git clone https://github.com/dheeraz101/Thoughts.git cd Thoughts -
Install dev dependencies (used for minification):
npm install
-
Build production assets (minify JS/CSS):
npm run minify
-
Serve the site locally with any static server (for example
serveor VS Code Live Server):npx serve . -p 5000 # or use a preferred static server
Open the site at http://localhost:5000.
- Edit source files (
script.js,custom.css,index.html) and test in the browser. - Re-run
npm run minifyto update production artifacts. - For quick CSS/JS tweaks you can use the unminified files during development.
npm run sync-versionupdates theversion.jsonand related files.npm run minifyruns JS/CSS minification (usesterserandclean-css-cli).- Deploy the output to a static host (Netlify, GitHub Pages, S3, etc.).
index.html— application shellscript.js,script.min.js— application logiccustom.css,custom.min.css— stylesservice-worker.js— PWA service workeroffline.html— fallback page when offlinepackage.json— build scripts and metadataLICENSE— project license (MIT)
Contributions are welcome. Please open issues for bugs or feature requests, and submit pull requests for fixes. Keep changes small and focused. Include tests or reproduction steps where applicable.
When opening a pull request:
- Provide a clear description of the change
- Link to any related issues
- Ensure code and assets are formatted consistently
This project is licensed under the MIT License — see the LICENSE file for details.
If you'd like, I can also add or expand documentation for any specific feature or workflow (deployment, CI, code style). Just tell me which area to prioritize.
