A personal, AI-enhanced knowledge management system built with Nuxt 4, Vue 3, and Tailwind CSS.
This application serves as a "Digitech Garden"—a space to cultivate ideas from initial thoughts ("Seedlings") into mature articles ("Evergreen"). It integrates advanced AI chat capabilities to help you brainstorm and organize your thoughts.
Beautiful, serene landing page with modern design and smooth animations
Clean and elegant light mode with high contrast and readable typography
Rich, deep dark mode with carefully crafted color palette
Integrated AI assistant powered by Claude or GPT-4
Note: To add screenshots, take screenshots of your running application and save them to
public/screenshots/with the names shown above. The images will display once the screenshot files are added.
- 🌿 Digital Garden Metaphor: Categorize notes by growth stage:
- 🌱 Seedling: Rough ideas and initial thoughts.
- 🌿 Budding: Developing concepts with some structure.
- 🌳 Evergreen: Polished, complete documents.
- 🤖 Artificial Intelligence:
- AI Chat: Integrated assistant powered by Claude 3.5 Sonnet or GPT-4o.
- Streaming Support: Real-time responses using the Vercel AI SDK.
- Chat-to-Seed: Instantly specific AI insights as new notes.
- 📅 Daily Journal: A dedicated space for daily logs and reflections.
- 💻 Code Snippets: Manage and store reusable code blocks with syntax highlighting.
- 📚 Reading List: Track articles and resources you want to read.
- 🔐 Secure Authentication: User management via
nuxt-auth-utils.
- Framework: Nuxt 4
- UI Library: Nuxt UI (Tailwind CSS v4)
- Database: PostgreSQL (via Prisma ORM)
- Container: Docker Compose for PostgreSQL
- AI Integration: Vercel AI SDK
- Authentication:
nuxt-auth-utils - Date Handling:
date-fns - Markdown:
markdown-itwithshikifor syntax highlighting.
- Node.js (v18 or later)
- npm or pnpm
- Docker Desktop (for PostgreSQL database)
-
Clone the repository:
git clone https://github.com/yourusername/digital-garden.git cd digital-garden -
Install dependencies:
npm install
-
Setup Environment Variables: Copy
.env.exampleto.env:cp .env.example .env
Update
.envwith your API keys:# Session secret (generate with: openssl rand -base64 32) NUXT_SESSION_PASSWORD=... # Database (already configured for local PostgreSQL) DATABASE_URL="postgresql://postgres:postgres@localhost:5432/digitech_garden" # AI Keys (At least one required) ANTHROPIC_API_KEY=sk-ant-... OPENAI_API_KEY=sk-...
-
Start PostgreSQL Database:
docker compose up -d
This will start a PostgreSQL container in the background.
-
Initialize Database:
npx prisma migrate dev
-
Run Development Server:
npm run dev
Visit
http://localhost:3000to start gardening!
- Start database:
docker compose up -d - Stop database:
docker compose down - View logs:
docker compose logs postgres - Reset database:
docker compose down -v(warning: deletes all data)
app/pages: Application routes and views.garden: Note management and visualization.ai: Chat interface.daily: Journal entries.
server/api: Backend API endpoints.prisma: Database schema and migrations.app/composables: Reusable Vue composables (e.g.,useChat.ts).
The project is configured via nuxt.config.ts.
- Modules: Includes
@nuxt/ui,@prisma/nuxt,nuxt-auth-utils. - UI Theme: Automatic dark/light mode based on system preferences with manual toggle available.
- Light Mode: Clean Gray palette with Emerald accents
- Dark Mode: Rich Slate palette with vibrant Emerald accents
- Nitro: Configured for server-side API handling.
- 🧠 Semantic Search (RAG): "Ask your Garden" functionality using vector embeddings to find related concepts.
- ⚡️ Code Playground: Interactive execution environment for snippets using WebContainers.
- 🎨 Visual Whiteboarding: Integrated canvas for diagrams and mind maps (e.g., Excalidraw).
- 🔗 GitHub Sync: Auto-commit "Evergreen" notes to a private repository for backup and versioning.
Contributions are welcome! Please fork the repository and submit a pull request for any enhancements or bug fixes.