Skip to content

ipushthecarts/digi-notebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“˜ Digi Notebook

Digi Notebook is a fully client-side, offline-first digital journaling and note-taking app built as a single HTML file. It mimics the UX of Google Docs while ensuring total autonomy, privacy, and portability. No servers, no dependenciesβ€”just open the file and start writing. (note, the taskbar inside each note is not quite functionall, but is being worked on. please be patient with me. we also suggest you export notes and journals before closing the tab, because notes right now are not saved at all. we are sorry for the inconvenience Thank you!)


πŸš€ Features

  • Offline-First: Works entirely in-browser with no network required.
  • Single-File Architecture: All logic, styles, and data are embedded in one HTML file.
  • Rich Text Editor: Google Docs-style formatting with headers, font sizes, highlights, lists, links, and dividers.
  • Journals & Notes: Organize notes into color-coded journals with autosave and metadata.
  • Autosave Logic: Changes are saved in memory with visual indicators for unsaved edits.
  • Export Options:
    • Export individual notes as standalone HTML files.
    • Export entire journals as ZIP archives (offline JSZip implementation).
  • Responsive UI: Mobile-friendly sidebar and overlay navigation.
  • No External Storage: All data lives in memoryβ€”ideal for ephemeral or secure use cases.

🧱 Tech Stack

  • HTML/CSS/JS: No frameworks, no build tools.
  • TailwindCSS: CDN-based utility-first styling.
  • Font Awesome: Iconography via CDN.
  • Custom JS Classes:
    • GoogleDocsRichTextEditor: Modular rich text editor with formatting state tracking.
    • JSZip & saveAs: Minimal offline implementations for ZIP and file export.

πŸ“‚ File Structure

This repo contains a single file:

Open it in any modern browser to begin. No installation required.


πŸ›‘οΈ Legal & Compliance Notes

  • Privacy: No data is transmitted or stored externally. All content remains local to the user's browser session.
  • Exported Files: HTML exports include embedded metadata (timestamps, journal name) for auditability.
  • Licensing: This project is open-source and provided under the MIT License. See LICENSE.md for details.

πŸ› οΈ Customization

You can modify the following directly in the file:

  • Initial Journals & Notes: Located in the initializeDigiNotebook() function.
  • Editor Styles: Customize font sizes, highlight colors, and toolbar behavior via embedded <style> tags.
  • Export Templates: Modify the HTML structure of exported notes/journals in exportCurrentNote() and exportCurrentJournal().

πŸ§ͺ Dev Ideas

  • Use browser dev tools to inspect and tweak styles or logic.
  • To persist data across sessions, consider integrating localStorage or IndexedDB (not included by default).
  • For institutional deployment, wrap the file in a compliant iframe or kiosk mode browser.

πŸ“œ License

GNU AFFERO GENERAL PUBLIC LICENSE Β© 2025 Mr.Pushcarts
See LICENSE.md for full terms.


πŸ™‹β€β™‚οΈ Author

Built by Mr. Pushcarts - highschool student, and an offline-first enthusiast.
For inquiries, forks, or collaboration, feel free to reach out via GitHub.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages