Files
Language-Notes-Organizer/README.md
2025-09-05 14:38:22 -05:00

2.0 KiB

AI Language Note Organizer

This project is a command-line application that uses the Google Gemini API to automatically organize your language class notes. It takes a directory of markdown files, identifies common themes and topics, and generates a single, well-structured markdown file with your notes grouped under relevant headings.

Features

  • Recursive File Scanning: Automatically scans through nested directories to find your note files.
  • Flexible Filtering: Use a simple text pattern to specify which notes to process (e.g., "Japanese" or "Spanish_Class").
  • AI-Powered Organization: Leverages the Gemini API to intelligently categorize and structure your notes.
  • Non-Destructive: Your original note files are never modified.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/language-note-organizer.git
    cd language-note-organizer
    
  2. Install the dependencies:

    npm install
    
  3. Set up your environment variables:

    • Create a .env file in the root of the project.
    • Add your Google Gemini API key to the .env file:
      GEMINI_API_KEY=your_api_key_here
      

Usage

Run the application from your terminal with the following command:

node index.js <directory_path> [file_pattern]
  • <directory_path>: The path to the folder containing your note files.
  • [file_pattern] (Optional): A keyword or pattern to filter the files. Only files with names containing this pattern will be processed.

Example

Imagine you have a notes/ directory with the following structure:

notes/
├── japanese/
│   ├── 2023-10-26_Japanese_Grammar.md
│   └── 2023-10-27_Japanese_Vocab.md
└── spanish/
    └── 2023-11-01_Spanish_Phrases.md

To organize only the Japanese notes, you would run:

node index.js notes/ japanese

The script will create a new file named organized_notes.md in the project's root directory with the organized content from your Japanese notes.