What's Included
A complete breakdown of every feature shipped with BloggFast.
Last updated:
Core application
- Next.js 16 with App Router and React 19
- React Compiler enabled for automatic performance optimization
- TypeScript throughout the entire codebase
- Homepage with article feed, trending, editor's picks, and featured sections
- Blog listing page with pagination, search, and filtering
- Individual article page with rich Portable Text rendering
- Category, tag, author, and trending listing pages
- Search page with real-time results
- 404 and error pages
- Dark mode support via
next-themes - Fully responsive layout
- RSS feed at
/api/rss - User profile, saved articles, and liked articles pages
Authentication & users
- Neon Auth integration with cookie-based sessions
- Sign in & sign up flows at
/auth/sign-inand/auth/sign-up - Protected routes via Next.js middleware for admin and user-specific pages
- Role-based access: USER, EDITOR, ADMIN
- User onboarding flow with interest selection
- Social OAuth support (Google, GitHub) via Neon Auth
Database & ORM
- Neon serverless Postgres with connection pooling via
@prisma/adapter-neon - Prisma 7 ORM with preview feature:
driverAdapters - Full schema with models: User, Author, Category, Tag, Article, ArticleTag, Comment, SavedArticle, LikedArticle, UserInterest, ArticleView, ArticleGenerationRequest, AuditLog, SiteSettings, AiSettings, Subscriber, SubscriberEvent
- Enum types: UserRole, ArticleStatus, CommentStatus, GenerationStatus, SubscriberSource, SubscriberStatus
- Database seeding with
npm run db:seed - Migration scripts via
npm run db:migrate - Prisma Studio for visual data browsing via
npm run db:studio
Content management
- Sanity Studio embedded at
/studio— no separate server needed - Content types: Post (rich article), Category, Author
- Rich text editor with Portable Text (blockContent schema)
- Image upload, optimization, and alt text
- Dual content strategy: articles can store body in Postgres OR Sanity — the app reads from both
- GROQ queries via
next-sanityclient - Sanity Vision plugin for query exploration
AI writing & image tools
- AI article generator in the admin dashboard (
/admin/generate) - Powered by OpenAI via the Vercel AI SDK (
ai+@ai-sdk/openai) with 6 selectable text models (default: gpt-5-mini) - Structured output using
generateObjectand streaming viastreamTextwith Zod schema validation - Generates: multiple title options, subtitle, excerpt, AI summary, article outline, tags, keywords, SEO title/description, and full markdown body
- AI cover image generation using gpt-image-1 (default) or dall-e-3 in configurable sizes (1536×1024, 1792×1024, 1024×1024)
- Configurable tone: professional, conversational, technical, journalistic, analytical
- Configurable article word count (200 – 5,000 words)
- Source URL inputs to ground generation in real content
- AI generation history page at
/admin/generation-history - Draft saving workflow: save draft → edit → publish
- AI SEO metadata regeneration and title regeneration helpers
- AI settings stored in database (
AiSettingsmodel) — model, image size, system prompt, skills, min word count, default tone
- Resend integration for all transactional email
- Email subscription form with double opt-in confirmation flow
- Welcome email sent on confirmed subscription
- Confirmation email with tokenized link
- Optional Resend Audience sync via
RESEND_AUDIENCE_ID - Resend webhook handling for bounce and complaint events
- Subscriber management in admin dashboard with full event history
- Subscriber statuses: PENDING, ACTIVE, UNSUBSCRIBED, BOUNCED, COMPLAINED, DELETED
SEO
- Auto-generated
sitemap.xmlpulling from Prisma (articles, categories, authors, tags) robots.txtconfigured- Per-page metadata with
generateMetadatafor all dynamic pages - Open Graph image generation via Next.js ImageResponse
- Canonical URLs on article pages
- JSON-LD structured data ready
- Reading time calculated from word count
Admin dashboard
- Dashboard at
/adminwith real-time stats (views, articles, subscribers) - Articles management: list, create, edit, publish, archive
- Category management: list, create, edit, delete
- Author management: list, create, edit
- Tag management
- Subscriber management with event history
- AI article generator with full editing workflow
- AI generation history with status tracking
- Site settings (name, description, social links, trending logic)
- AI settings (model, image model, system prompt, tone, word count)
- Audit log for admin actions
UI & design
- Tailwind CSS v4 with PostCSS
- shadcn/ui component library (built on Radix UI primitives)
- Radix UI components: Avatar, Checkbox, Dialog, Dropdown, Label, Popover, Progress, RadioGroup, ScrollArea, Select, Separator, Slot, Switch, Tabs, Tooltip
- Dark mode toggle via
next-themes - Lucide React icons
- Sonner for toast notifications
- Recharts for analytics dashboards
- react-hook-form + zod for form validation
- react-markdown + remark-gfm for rendering markdown articles
- date-fns for date formatting
- reading-time for estimated reading time calculation