# PromptBase ## Overview PromptBase is a centralized, searchable repository for storing and managing prompts used in AI models, chatbots, or any generative application. It provides a structured way to organize, tag, search, and reuse prompts—streamlining prompt engineering for developers, teams, and enthusiasts. ## Features - **Prompt Types**: Categorize prompts as `System` or `Task` - **Tagging**: Add tags to describe and filter prompts - **Search**: Keyword and full-text search with filter by type and tags - **Metadata**: Each prompt includes: - Title - Description - Tags - Type - Created/Last modified timestamps - **Import/Export**: Import/export prompts via JSON files - **Web UI**: Clean interface to view, edit, and manage prompts - **Planned**: - AI Integration: Suggest prompts using OpenAI, Together, or Ollama APIs - User auth and profiles - Prompt favorites and contributions - Ratings, version history, and sharing ## Usage You'll need a .env file with your Supabase credentials. See `supabase.env.example`. ### Docker To run the app using Docker, you can use the provided `docker-compose.yml` file. ```yaml services: frontend: container_name: PromptBase image: git.keithsolomon.net/keith/promptbase:main restart: unless-stopped environment: - NODE_ENV=production ports: - "4321:4321" volumes: - ./.env:/app/.env:ro # Bind-mount .env as read-only ``` ### To run locally (for development) ```bash npm install npm run dev ``` ## Tech Stack - **Frontend**: Astro js, Tailwind CSS - **Backend**: Supabase (self-hosted) - **Deployment**: Docker (frontend), Supabase (backend) ## Database Schema ### `prompts` | Column | Type | |---------------|------------| | id | UUID | | type | text | | title | text | | description | text | | tags | array(text)| | created_at | timestamp | | updated_at | timestamp | *Future tables: `users`, `user_prompts`* ## Development Roadmap Development is organized into phases. For details, see `checklist.md`. ### MVP Phases 1. **Planning & Setup** 2. **Database & Supabase API** 3. **Front-End UI** 4. **Search & Tagging** 5. **Import/Export Functionality** ### Post-MVP Enhancements - AI Prompt Suggestions - User login with Supabase Auth - User-contributed prompts and favorites - Ratings, version control, external API - Shareable links and embeds ## Contributing Pull requests are welcome! Please keep contributions focused on core functionality and usability improvements.