My App

Features

Complete feature list and capabilities of the Seeder Tool

Features

The Seeder Tool provides comprehensive functionality for managing your InstantDB database through an interactive CLI interface.

Core Features

Note Creation

Interactive Note Seeding

  • Step-by-step prompts for all note fields
  • Validation for required fields
  • Support for markdown content
  • Automatic ID generation

Content Sources

  • File Import: Load content from .md or .mdx files
    • Supports relative and absolute paths
    • Automatic file reading and validation
  • Direct Input: Paste markdown content directly
    • Opens your default editor
    • Supports multi-line content
    • Preserves formatting

Date Management

  • Dutch date format (dd-mm-yyyy)
  • Automatic conversion to Unix timestamps
  • Validation to ensure valid dates
  • Support for historical dates

Note Positioning

Pinned Notes

  • Pin notes to position 0
  • Automatically sets position to 0
  • Cannot be placed in folders when pinned

Custom Positioning

  • Set exact position numbers
  • Automatic position shifting for other notes
  • Maintains order integrity

Automatic Positioning

  • Calculates end-of-list position
  • Respects folder boundaries
  • Handles empty folders

Folder Management

Folder Selection

  • Visual folder tree display
  • Supports nested folders
  • Indentation shows hierarchy
  • Root folder option

Folder Operations

  • Move notes between folders
  • Place notes in root
  • Maintain folder relationships

Task Linking

Task Selection

  • List all available tasks
  • Multi-select interface
  • Shows task content preview
  • Links tasks to notes

Task Relationships

  • Tasks link to notes (not reverse)
  • Multiple tasks per note
  • Maintains referential integrity

Note Movement

Repositioning

  • Move notes to different positions
  • Change folder assignments
  • Update positions automatically
  • Preserve note order

Position Options

  • Top (position 0)
  • After specific notes
  • End of list
  • Custom position

User Interface

Colorized Output

  • Cyan - Headers and titles
  • Green - Success messages
  • Yellow - Warnings and info
  • Red - Errors
  • Gray - Secondary information

Progress Indicators

  • Loading spinners for operations
  • Success/error feedback
  • Clear status messages

Interactive Prompts

  • Arrow-key navigation
  • Multi-select checkboxes
  • Confirmation dialogs
  • Input validation

Data Validation

Input Validation

  • Title: Required, non-empty
  • Date: Valid dd-mm-yyyy format
  • File Path: File exists and is readable
  • Position: Valid number
  • Folder: Folder exists in database

Error Handling

  • Clear error messages
  • Graceful failure handling
  • Transaction rollback on errors
  • Helpful troubleshooting hints

Database Operations

Transactions

  • Atomic operations
  • Batch updates
  • Position recalculation
  • Relationship management

Query Operations

  • Fetch all notes
  • Fetch notes by folder
  • Fetch all folders
  • Fetch all tasks
  • Ordered results

Position Management

  • Automatic position calculation
  • Position shifting on insert
  • Position updates on move
  • Maintains sort order

Integration

SK CLI Integration

  • Accessible from SK menu
  • Same functionality
  • Consistent interface
  • Unified workflow

Schema Compatibility

  • Uses InstantDB schema
  • Type-safe operations
  • Schema validation
  • Relationship handling

Use Cases

Content Migration

  • Import existing markdown files
  • Bulk note creation
  • Preserve folder structure
  • Maintain metadata

Content Organization

  • Reorganize existing notes
  • Move notes to folders
  • Adjust note positions
  • Link related tasks

Testing & Development

  • Seed test data
  • Create sample notes
  • Test folder structures
  • Verify relationships

Documentation

  • Create help notes
  • Organize documentation
  • Link related content
  • Maintain structure

Limitations

Current Limitations

  • No Batch Operations: One note at a time
  • No Note Editing: Only creation and movement
  • No Folder Creation: Uses existing folders
  • No Task Creation: Links existing tasks only
  • No Content Editing: Cannot modify note content after creation

Future Enhancements

  • Batch note creation from files
  • Note content editing
  • Folder creation from CLI
  • Task creation and management
  • Import/export functionality

Security

Data Safety

  • No data deletion
  • Transaction-based operations
  • Error rollback
  • Validation before operations

Access Control

  • Uses InstantDB authentication
  • Respects app permissions
  • No direct database access
  • Secure API communication

Performance

Efficiency

  • Single transaction per operation
  • Batch position updates
  • Efficient queries
  • Minimal database calls

Scalability

  • Works with large datasets
  • Efficient folder tree building
  • Optimized position calculations
  • Handles many notes/folders

Next Steps