Home
Getting Started
Features
Detailed breakdown of the project's directory structure.
Root Directory
├── .github/ # GitHub Actions workflows
├── content/ # MDX content files
├── docs/ # Separate Next.js/Fumadocs documentation app
├── public/ # Static assets
├── scripts/ # Build and utility scripts
└── src/ # Application source codeSource Directory (src/)
app/
Next.js 16 App Router pages and API routes.
app/
├── api/ # API endpoints
│ ├── chatbot/ # AI chatbot
│ ├── emails/ # Contact form
│ ├── github/repos/# GitHub integration
│ ├── gumroad/products/ # Gumroad products
│ ├── notes/[slug]/views/ # View tracking
│ ├── og/ # OG image generation
│ ├── search/ # Content search
│ └── vsco/ # VSCO gallery
├── globals.css # Global styles
├── layout.tsx # Root layout
└── page.tsx # Homepagecomponents/
React components organized by domain.
components/
├── chat/ # Chatbot widget
├── gallery/ # VSCO gallery, featured gallery
├── home/ # Bio, social links, Gumroad
├── layout/ # SiteNav, BottomNav, CommandPalette, SmoothScroll
├── mdx/ # Table, YouTubeEmbed
├── notes/ # ArticlePage, NoteList, RelatedArticles
├── projects/ # ProjectList, FilterBar, OpenSource
├── ui/ # ImagePreview, UniversalImage
└── ThemeProvider.tsx # Custom theme contexthooks/
Custom React hooks.
hooks/
├── use-views.ts # Page view tracking
├── use-gumroad-products.ts # Gumroad products
├── use-vsco-gallery.ts # VSCO gallery data
└── use-infinite-vsco-gallery.ts # Paginated VSCOlib/
Utilities and helper functions.
lib/
├── animation/ # Framer Motion variants
├── content/ # MDX parsing (gray-matter)
├── image/ # Unsplash resolution
├── projects/ # Project config and icons
├── og.ts # OG image URL generation
└── vsco-local.ts # Local VSCO export readerContent Directory
content/
└── notes/ # Blog posts (.mdx)Data Directory
data/
└── vsco-export.json # VSCO data export metadataScripts Directory
scripts/
├── build/ # Image download scripts
├── content/ # Chatbot training data
└── training-data/ # Generated training dataPublic Directory
public/
└── images/ # Image assets
├── unsplash/ # Downloaded Unsplash images
└── vsco/ # Downloaded VSCO imagesConfiguration Files
package.json- Dependencies and scriptstsconfig.json- TypeScript configurationnext.config.ts- Next.js configurationeslint.config.mjs- ESLint rulespostcss.config.mjs- PostCSS configvitest.config.ts- Test configuration
Nicholas Adamou