Skip to content

Life event note taking app. Enter notes like a messenger or chat app. Designate note types. View notes in a timeline, including backdated life events.

License

Notifications You must be signed in to change notification settings

demosthenez/tlnotes

Repository files navigation

TLNotes (0.1.0-alpha)

TLNotes is a prototype timeline-based journaling application designed for structured autobiographical notation and self-reflection. It enables users to record and organize life events, thoughts, and experiences in a chronological timeline format. It's largely created with a free trial of grok code fast AI. This is not a complete application, but merely a kind of draft/prototype while trying to work out a sensible layout for the UX. Feel free to contribute.

Purpose

This software is designed for:

  • Retroactive journaling and recall - Capturing life events and memories
  • Structured autobiographical notation - Organizing personal history chronologically
  • Life event documentation - Recording significant moments, periods, and milestones
  • Examination of conscience - For religious and spiritual reflection practices
  • Moral inventory - Supporting 12-step programs and personal development
  • General self-reflection and mindfulness practices

Features

  • Timeline View: Chronological display of all notes and events
  • Multiple Note Types: Standard notes, drafts, dated events, and time periods
  • Tagging System: Organize and filter notes by custom tags
  • Search Functionality: Real-time search across all notes
  • Date Support: Add specific dates to events and define time periods
  • Period Visualization: Color-coded time periods on the timeline
  • Export/Import: JSON-based data backup and migration
  • Offline-First: Progressive Web App (PWA) that works without internet
  • Responsive Design: Mobile-friendly interface
  • Trash Management: Soft delete with recovery options

Installation

TLNotes is a client-side web application requiring no server or installation.

Option 1: Direct Access

Simply open index.html in any modern web browser.

Option 2: Install as PWA (Recommended)

  1. Open index.html in Chrome, Firefox, or Edge
  2. Use your browser's "Install" or "Add to Home Screen" option
  3. The app will run offline and appear as a native app

Usage

Creating Notes

  • Type your note in the input area at the bottom
  • Press the "Add" button or Enter
  • Your note appears at the top of the timeline (current date/time)

Organizing Content

  • Tags: Add tags to categorize notes
  • Types: Choose "Note", "Draft", "Event", or "Period"
  • Dates: Assign specific dates to events and periods
  • Periods: Define start/end dates with custom colors

Navigation & Filtering

  • Search: Use the search bar to find text across all notes
  • Filters: Filter by note type and tags using the filter button
  • Timeline: Scroll through your chronological record

Managing Data

  • Export: Download your notes as JSON in Settings
  • Import: Restore notes from JSON backup
  • Trash: Moved notes go to trash for potential recovery
  • Clear Data: Remove all notes permanently

Browser Requirements

Works in any modern browser with these features:

  • ES6+ JavaScript support
  • CSS Grid and Flexbox
  • IndexedDB (for local storage)
  • Service Worker API (for PWA offline capability)

Tested in:

  • Chrome/Chromium 90+
  • Firefox 88+
  • Safari 14+
  • Edge 90+

Privacy & Data

  • Local Storage Only: All data stored locally in your browser
  • No External Dependencies: No trackers, analytics, or external APIs
  • Zero Data Transmission: Nothing sent to external servers
  • Export Control: Full data export available anytime

Development

This is alpha software. While functional for basic journaling, expect:

  • Potential data loss in future updates
  • Incomplete features and rough edges
  • Breaking changes without notice

Technical Overview

  • Frontend: Vanilla HTML/CSS/JavaScript
  • Storage: Browser IndexedDB via custom database.js
  • State Management: Custom state.js module
  • Responsive UI: Mobile-first CSS with touch gestures
  • Icons: FontAwesome integration
  • PWA: Service Worker for offline functionality

Contributing

This project welcomes contributions for:

  • Bug fixes and stability improvements
  • New features and functionality
  • Documentation enhancements
  • User experience improvements

To contribute:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly (run test.js in browser console)
  5. Submit a pull request

License

Copyright (C) 2025 TLNotes Contributors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

The license text is available in the included LICENSE file.

Disclaimer

This software is provided as-is for experimental and personal use. It is not intended for mission-critical applications. While designed for self-reflection and journaling, it is not a substitute for professional psychological or medical advice.


TLNotes: Structured autobiographical notation for the digital age.

About

Life event note taking app. Enter notes like a messenger or chat app. Designate note types. View notes in a timeline, including backdated life events.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published