Skip to content
Notifications You must be signed in to change notification settings

barxilly/BenJSJournal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jul 9, 2025
e013997Β Β·Β Β· Jul 9, 2025

History

14 Commits
Jul 9, 2025
Jul 9, 2025
Jul 6, 2025
Jul 9, 2025
Jul 9, 2025
Jul 6, 2025
Jul 9, 2025
Jul 8, 2025
Jul 6, 2025
Jul 6, 2025
Jul 6, 2025
Jul 9, 2025
Jul 8, 2025

Repository files navigation

BenJS Journal

Note: This README was generated with AI assistance to provide comprehensive documentation for the project.

A modern, feature-rich journaling application built with React, TypeScript, and Mantine UI. BenJS Journal is a Progressive Web App (PWA) that offers a clean, intuitive interface for daily journaling with advanced features like speech-to-text, encryption, and mood tracking.

✨ Features

  • πŸ“ Daily Journaling: Create and manage journal entries with title, content, and mood ratings
  • 🎀 Speech Recognition: Voice-to-text functionality for hands-free journaling
  • πŸŒ™ Dark/Light Mode: Responsive theming for comfortable writing in any lighting
  • πŸ”’ Encryption: Secure your entries with built-in encryption capabilities
  • πŸ’Ύ Local Storage: All data stored locally in your browser for privacy
  • πŸ“± PWA Support: Install as a mobile app with offline capabilities
  • ⭐ Mood Tracking: Rate your day with a 5-star system
  • πŸ“… Date Navigation: Easy browsing through past entries
  • πŸ’Ύ Backup & Exportport: Export your journal data in JSON format
  • πŸ”” Notifications: Optional notification reminders for journaling

πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/BenJSJournal.git
    
    cd BenJSJournal
  2. Install dependencies:

    npm install
  3. Start the development server:

    npm run dev
  4. Open your browser and navigate to http://localhost:5173

Building for Production

npm run build

The built files will be in the dist directory.

πŸ› οΈ Tech Stack

  • Frontend: React 19, TypeScript
  • UI Library: Mantine Core, Mantine Dates
  • Build Tool: Vite
  • Styling: CSS Modules, Mantine Styles
  • Speech Recognition: react-speech-recognition
  • Icons: React Icons
  • Date Handling: Day.js
  • Linting: ESLint with TypeScript rules

πŸ“± PWA Features

BenJS Journal can be installed as a Progressive Web App on your device:

  • Offline Support: Continue journaling even without internet
  • App-like Experience: Runs in its own window when installed
  • Mobile Optimized: Responsive design for all screen sizes
  • Service Worker: Caches resources for faster loading

πŸ” Privacy & Securityrity

  • Local Storage: All journal data is stored locally in your browser
  • No Server: No data is sent to external servers
  • Encryption: Built-in encryption for sensitive entries
  • Export Control: You control your data with export/backup features

πŸ—ΊοΈ Roadmap

Completed Features

  • βœ… Base layout and UI
  • βœ… Core journaling functionality
  • βœ… Audio transcriptions
  • βœ… Dark theme support
  • βœ… Encryption capabilities
  • βœ… Backup and export
  • βœ… Mood ratings system
  • βœ… Notifications
  • βœ… PWA functionality

Planned Features

  • ⏳ Markdown support for rich text formatting
  • ⏳ Search functionality across entries
  • ⏳ Tagging system for organization
  • ⏳ File attachments (images, documents)
  • ⏳ Auto-locking for security
  • ⏳ Custom rating categories
  • ⏳ Individual day export as TXT files
  • ⏳ Sound/audio attachments

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is open source. Please check the license file for more details.

πŸ™ Acknowledgments

  • Mantine UI for the excellent component library
  • Vite for the fast development experience

Made with ❀️ for better journaling experiences

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published