GitHunt
VA

Vanshdeveloper/console-diary

A minimal, command-driven journaling application designed for developers and thinkers. Write your thoughts in terminal style with a distraction-free interface.

Console Diary

A minimal, command-driven journaling application designed for developers and thinkers. Write your thoughts in terminal style with a distraction-free interface.

๐ŸŒ Live Demo

Features

โœจ Minimal & Distraction-Free - Clean, terminal-inspired design
๐Ÿš€ Command-Driven Interface - Use simple commands to manage your diary
๐Ÿ’พ Auto-Save - All entries are automatically saved in your browser's localStorage
๐Ÿ“ค Export Options - Download your diary as JSON or TXT files
๐Ÿ—‘๏ธ Entry Management - Delete, clear, and reset commands
โŒจ๏ธ Keyboard Shortcuts - Use Ctrl+Enter (or Cmd+Enter on Mac) to save entries
โ™ฟ Accessible - Built with proper semantic HTML and ARIA labels
๐Ÿ“ฑ Responsive - Works beautifully on desktop, tablet, and mobile devices

Getting Started

  1. Open index.html to see the landing page
  2. Click "Enter Diary" or navigate to diary.html to start journaling
  3. Enter a date and your thoughts
  4. Click "Save Entry" or press Ctrl+Enter to save
  5. Type /help in the text area to see all available commands

Available Commands

Command Description
/help Display all available commands
/clear Clear the console output
/export Download diary entries as JSON
/exporttxt Download diary entries as TXT
/reset Delete all entries (cannot be undone)

Project Structure

Console Diary/
โ”œโ”€โ”€ index.html           - Landing page
โ”œโ”€โ”€ diary.html           - Diary application
โ”œโ”€โ”€ README.md            - This file
โ””โ”€โ”€ src/
    โ”œโ”€โ”€ js/
    โ”‚   โ”œโ”€โ”€ script.js    - Landing page logic
    โ”‚   โ””โ”€โ”€ diary.js     - Diary app logic
    โ””โ”€โ”€ styles/
        โ”œโ”€โ”€ stylesheet.css  - Landing page styles
        โ””โ”€โ”€ diary.css       - Diary app styles

Tech Stack

  • HTML5 - Semantic markup with ARIA labels
  • CSS3 - Modern responsive design with CSS variables
  • JavaScript - Vanilla JS (no dependencies)
  • LocalStorage - Browser-based data persistence

Recent Improvements (v1.1)

Code Quality

  • โœ… Refactored JavaScript with better organization and comments
  • โœ… Added error handling and input validation
  • โœ… Improved function naming and modularity
  • โœ… Better code structure with proper separation of concerns

User Experience

  • โœ… Added Ctrl+Enter keyboard shortcut to save entries
  • โœ… Auto-populate date field with today's date
  • โœ… Better visual feedback for buttons and interactions
  • โœ… Improved placeholder text with command hints
  • โœ… Enhanced success/error messages

Accessibility

  • โœ… Added proper ARIA labels and roles
  • โœ… Better semantic HTML structure
  • โœ… Keyboard navigation support
  • โœ… Focus management improvements
  • โœ… Better color contrast and visual hierarchy

Styling & Design

  • โœ… CSS custom properties for consistent theming
  • โœ… Enhanced responsive design for mobile devices
  • โœ… Better typography and spacing
  • โœ… Improved visual consistency across sections
  • โœ… Added focus states for keyboard navigation
  • โœ… Smooth transitions and hover effects
  • โœ… Better button styling with clear CTAs

Features

  • โœ… Export function now includes timestamps
  • โœ… Better error messages for invalid commands
  • โœ… System messages with appropriate colors
  • โœ… Improved entry deletion with confirmation
  • โœ… Better console output formatting
  • โœ… Fixed header positioning
  • โœ… Improved mobile navigation menu
  • โœ… Added "Enter Diary" CTA link in navigation
  • โœ… Better section hierarchy with h1/h2 tags
  • โœ… Enhanced responsive breakpoints
  • โœ… Better visual hierarchy and spacing

Browser Support

  • Chrome/Edge (latest)
  • Firefox (latest)
  • Safari (latest)
  • Mobile browsers (iOS Safari, Chrome Mobile)

Data Privacy

All your diary entries are stored locally in your browser's localStorage. No data is sent to any server. Your privacy is completely protected.

License

Free to use and modify for personal use.

Tips

  • Use /export to back up your entries regularly
  • Date format is YYYY-MM-DD (auto-populated)
  • Entries support multi-line text
  • Delete entries individually or clear everything with /reset
  • Your data persists across browser sessions