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

1.7 KiB

Project SPEC Sheet: AI Language Note Organizer

1. Project Goals

  • Develop an application to organize markdown-based language class notes from a specified directory.
  • Use an AI to analyze, group, and create headings for related notes.
  • Produce a single, organized markdown file for easy reference, without altering the original files.

2. Core Functionality

  • File Input: Accept a directory path and a file name pattern from the user.
  • Note Processing: Scan for markdown files in the directory that match the specified pattern (e.g., containing "Chinese Class" or "Japanese Class"). Extract content from these files.
  • AI Organization:
    • Use an AI model (Primary: Google Gemini API) to understand the note content.
    • The AI will identify themes and topics (e.g., "Verb Conjugation," "Cultural Notes").
  • Output Generation: Create a new, single markdown file with notes grouped under AI-generated headings.

3. Technical Specifications

  • Language: Node.js
  • AI Service: Google Gemini API. I'll handle the integration; you'll just need to provide the key when the time comes.
  • User Interface: A simple Command-Line Interface (CLI).

4. Project Outline

  1. Setup: Initialize a Node.js project.
  2. File Reader: Build a module to find and read markdown files from a directory that match a user-provided naming pattern.
  3. AI Integration: Create a module to communicate with the Gemini API.
  4. Note Organizer: Implement logic to group notes based on the AI's analysis.
  5. Output Writer: Write the organized notes to a new file.
  6. CLI: Build the user interface.
  7. Testing: Write tests to ensure all parts are working correctly.