aiyu-ayaan/Aiyu
Aiyu
A fully customizable Developer Portfolio built with Next.js 15, Tailwind CSS, and Postgress. Features a comprehensive Admin Panel (CMS) for managing projects, blogs, and themes without code. Docker-ready
- active
- 7 stars
- 2 forks
- JavaScript
- MIT
- pushed 6d ago

// readmeaiyu-ayaan/Aiyu
🌟 Aiyu - The Ultimate Developer Portfolio & CMS

A modern, responsive, and fully customizable portfolio website and Content Management System built with Next.js 16 (App Router), React 19, Tailwind CSS 4, and PostgreSQL (Prisma ORM).
Featuring a gorgeous space-themed user interface, a highly advanced Admin Panel, an integrated AI Neural Core (Gemini), and a visual Task Scheduler, Aiyu is designed for developers who want a production-ready, security-hardened portfolio with zero-hassle content management.
Tip 📚 Need full guides? Explore the Complete Documentation Wiki or jump to the Quick Start Guide to get running in 5 minutes!
✨ Features Spotlight
🧠 AI Neural Core (Gemini Integration)
Synthesize content, titles, and layouts directly from your admin panel:
- AI Theme Architect: Generate a beautiful, balanced 64+ token custom design system (light & dark modes) from a single concept prompt.
- Creative Project Synthesis: Generate catchy project names, write optimized professional summaries, and auto-map tech stacks.
- Dynamic Subtitle Builder: Contextually generates engaging subtitles for your projects, blogs, and gallery.
⏰ Task Scheduler & Cron Jobs
Full control over background tasks with a custom 60s ticking engine:
- Visual Builder & Parser: Select intervals via UI; a real-time translator converts expressions (e.g.
*/15 * * * *) into human-readable text. - Automated Maintenance: Auto-purge orphaned uploads and optimize heavy PNG/JPG files to highly compressed WebP.
- Custom Webhook Tasks: Register API endpoints to execute on schedule, with custom methods, body payloads, and custom headers supporting n8n-style Fixed/Expression switch toggles.
- Global Encrypted Secrets: Save secure environment variables (
$env.KEY) globally using secure AES-256 encryption, safely masked ([SECRET: KEY]) inside dynamic evaluation previews. - Predefined System Variables: Evaluate context-aware variables dynamically, including
$sitefor dynamic site URL mapping and$devicefor host OS/CPU platform specs (e.g.,$device.platform,$device.os).
📧 Webhook & Push Dual-Routing
Advanced contact settings for real-time lead routing:
- Dual Routing: Forward contact form entries to n8n Webhook endpoints and push applications simultaneously.
- Unified Push Notifications: Seamlessly routes notifications to Discord Webhooks, Telegram Bots, or ntfy Topics with bearer token support.
- Route Validation: Instant one-click connection tests to verify endpoint accessibility.
🎨 Live Theme Customizer
- 52 Preset Themes: Switch between Dracula, Tokyo Night, Nord, Cyberpunk, Catppuccin, and dozens more with a single click.
- Granular Palette Tuning: Modify primary, secondary, background, text, and border tokens with immediate live preview.
📝 Automated Blog & Masonry Gallery
- Blog System: Markdown-based editor with syntax highlighting, auto-saving drafts, and Notion sync API support.
- Gallery: Masonry grid layout with auto image optimization and HEIC photo upload compatibility.
📄 Resume Studio
Full-screen LaTeX resume IDE with a live PDF preview:
- Visual & Code Modes: Edit raw LaTeX or drag-and-drop structured section cards — your choice.
- AI Assistant: Refine a selection, auto-fix compile errors, or tailor your resume to a pasted job description.
- Named Versions & Auto-Everything: Save snapshots, auto-compile, auto-save, and publish your live resume in one click.
🌓 Classic vs V2 Experience
Run two complete site designs side by side:
- One-Click Default: Pick which redesign (Classic or V2) visitors land on at the clean URLs.
- Always Reachable: The non-default version stays live at
/v1or/v2. - V2: an editorial-depth redesign with numbered chapters, GSAP scroll-driven motion, and terminal-style chrome.
🔌 MCP Server & Developer Tools
- Model Context Protocol Server: Expose custom tools, resources, and prompts from your portfolio to AI clients, with its own secured write-access token.
- API Reference Dashboard: In-app docs for the blog automation API, image uploads, and AI Hub CRUD endpoints.
- Server Health: Live CPU/memory/disk/event-loop metrics, uptime monitoring for your deployments, and an AI-powered log analyzer.
🎬 Watch the Story
The v2 home page tells my life story as a scroll-driven film, from the hero to chapter 09. These recordings come straight from the production build (npm run record, 2× speed).
The previews run at 3× the recording. Click one to watch the full 2× MP4 in GitHub's player: journey-desktop.mp4 · journey-mobile.mp4.
📸 Visual Showcase
| Module | Desktop Dark Mode (1920x1080) | Mobile Dark Mode (430x932) |
|---|---|---|
| Home Page | ![]() | ![]() |
| About Me | ![]() | ![]() |
| Projects Showcase | ![]() | ![]() |
| Live Deployments / Apps | ![]() | ![]() |
| Blogs Page | ![]() | ![]() |
| Gallery (Certificates) | ![]() | ![]() |
| GitHub Activity | ![]() | ![]() |
| Contact Us | ![]() | ![]() |
| Admin Command Center | ![]() | ![]() |
🚀 Quick Start (Docker Deployment)
The fastest, most secure way to deploy Aiyu is using Docker.
1. Clone & Configure
git clone https://github.com/aiyu-ayaan/Aiyu.git
cd Aiyu
cp .env.example .env
2. Generate Secure Credentials
Run these node commands to generate secure keys for your .env file:
# JWT Secret Key
node -e "console.log('JWT_SECRET=' + require('crypto').randomBytes(64).toString('hex'))"
# PostgreSQL password
node -e "console.log('POSTGRES_PASSWORD=' + require('crypto').randomBytes(24).toString('hex'))"
Set DATABASE_URL to match your POSTGRES_USER / POSTGRES_PASSWORD / POSTGRES_DB
(use host postgres inside Docker, localhost for host-based development).
3. Build & Deploy
Start all services (App + PostgreSQL + Nginx Proxy):
npm run docker:build
npm run docker:up
The app container runs
prisma migrate deployon startup (RUN_MIGRATIONS=true), so the schema is created/updated automatically against the Postgres service. For a high-availability primary + read-replica Postgres topology, usedocker compose -f docker-compose.replication.yml up -dinstead.
4. Verify Security Hardening
Check if non-root user settings, read-only root system, and miner-prevention capabilities are active:
npm run docker:verify
5. Access and Seed
Visit the link or run a curl request to populate your fresh database:
curl http://localhost/api/seed
- Portfolio: http://localhost
- Admin Panel: http://localhost/admin
💻 Local Development (host + Dockerized Postgres)
Run Next.js and the Prisma CLI directly on your machine, with only PostgreSQL (and optional pgAdmin) in Docker:
cp .env.example .env.local # set DATABASE_URL to localhost
npm install # postinstall runs `prisma generate`
npm run db:up # start Postgres + pgAdmin (docker-compose-dev.yml)
npx prisma migrate deploy # apply the schema
npm run db:seed # populate sample data (or curl /api/seed)
npm run dev # http://localhost:3000
Useful scripts: npm run db:studio (Prisma Studio), npm run db:down (stop the
dev database). pgAdmin is available at http://localhost:5050.
🧪 Running Tests
Unit & component tests (Vitest + Testing Library):
npm test # run once
npm run test:watch
UI / end-to-end tests (Playwright — auto-starts the dev server with real clicks):
npm run test:ui # headless
npm run test:ui:headed # watch the browser
Run everything: npm run test:all.
The admin e2e reads ADMIN_USERNAME / ADMIN_PASSWORD from .env (same as the
screenshot script); the valid-login test is skipped if ADMIN_PASSWORD is unset.
🛠️ The Tech Stack
- Core: Next.js 16 (App Router), React 19, Tailwind CSS 4, Framer Motion
- Database: PostgreSQL 17 with Prisma ORM (Postgres full-text search for blogs)
- Image Processing: Sharp (with HEIC support)
- Authentication: JWT (
jose), AES-256 encrypted secrets storage - Security Protocols: Non-root execution, Capability dropping,
noexec /tmpdirectory, rate limiting, and secure headers. - Testing & Tooling: Playwright, ESLint
📖 Deep-Dive Documentation Wiki
- ⚡ Quick Start - Get running in 5 minutes.
- 🔧 Admin Manual - Complete dashboard usage guide with images.
- 🐳 Deployment Guide - Scale out to cloud instances and VPS.
- 🔒 Security Hardening - Enterprise safety best practices.
- 📊 API Specification - Full REST endpoints usage reference.
Licensed under MIT • Maintained by Aiyu Ayaan and the Open-Source Community.
// stack
- JavaScript
- Admin Panel
- CMS
- Developer Portfolio
- Docker
- Framer Motion
- Fullstack
- Mongodb
- admin-panel
- cms
- developer-portfolio
- docker
- framer-motion
- fullstack
- javascript
- mongodb
- nextjs
- nextjs15
- personal-website
- portfolio
// specs
- status
- Working
- type
- Web
- year
- 2025 - 2026
- language
- JavaScript
- license
- MIT
- stars
- 7
- forks
- 2
- branch
- master
Repository data last synced


















