Bloginn is a premium, SEO-first, Medium-inspired publishing ecosystem built for creators and curious minds. Engineered using Next.js App Router, Express, and PostgreSQL, the platform bridges fast static pre-rendering, rich dynamic interactions, and responsive aesthetics.
- Obidian Dark Mode: An ultra-premium, dark glassmorphism aesthetic built on a
#0a0a0fobsidian canvas. - Ambient Stardust Entrance: A mouse-interactive canvas-based stardust particle engine that responds to cursor movements dynamically on load.
- Glow Portal Transitions: Fast, responsive SVG infinity vector wipes that seamlessly transition loaders to content sections.
- Tactile Staggered Parallax: A fully choreographed staggered slide-in for heroes, sidebars, and feeds using
framer-motionsprings.
The codebase is organized as a high-performance monorepo:
├── backend/ # Node.js/Express REST API Engine
│ ├── src/
│ │ ├── controllers/ # Route handler logic
│ │ ├── routes/ # Router declarations
│ │ ├── middleware/ # JWT & authentication filters
│ │ ├── services/ # Business logic Layer
│ │ └── config/ # Environment configurations
│ └── prisma/ # Database schema & migrations
│
└── frontend/ # Next.js 16 (App Router) Client App
├── app/ # Public and dashboard client routes
├── components/ # Dynamic interactive React primitives
├── store/ # Zustand state management slices
└── public/ # High-fidelity SVG and static assets
- Ambient Exploration: Smooth feeds with tag/category filters.
- Infinite Content discovery: Staggered lazy-loading posts feed.
- Search Engine: Real-time query searches for tags, posts, and authors.
- Engagement (In Progress): Reactive article claps, bookmarking, and following systems.
- TipTap Rich Text Editor: Seamless typing with a mount-guarded, client-side WYSIWYG editor containing formatting, link inserts, and image embeds.
- Autosave Engine: High-reliability background drafts auto-saving every 30 seconds.
- Dashboard Workspace: Comprehensive article hub showing draft/published lists.
- Secure JWT Session Flow: Double-cookie accessToken + refreshToken cycle.
- Optimized Next.js Builds: Server-side rendered layouts matching fully isolated Client Component code.
- Node.js (v20+ recommended)
- PostgreSQL (v15+ instance)
cd backend
npm install
# Set up environment variables (.env)
npx prisma migrate dev
npm run devcd ../frontend
npm install
# Set up client environmental configuration (.env.local)
npm run devNavigate to http://localhost:3000 to experience Bloginn!