
Project Details
News & Media
The Daily Column
newspaper.mhadnan.com
The Daily Column is a production-ready full-stack digital newspaper: a Next.js public site (reader experience, auth, bilingual UI) wired end-to-end to a NestJS REST API with PostgreSQL + Prisma. Readers get breaking tickers, category hubs, long-form articles, video modules, trending rankings, bookmarks, comments and reactions — with dark/light themes and Bangla ↔ English language switching. Editors and super-admins run a full dashboard for articles, categories, authors, media, comments, users, advertisements, analytics and settings, with real JWT authorization on every mutating endpoint.
Product screens
Four different product surfaces — homepage, article, video news and category — across dark/light themes and Bangla/English, plus admin and auth screens from production.








Key Features
Next.js frontend + NestJS backend monorepo architecture (frontend/ + backend/)
Dark mode and light mode across public site and admin dashboard
Multi-language support: Bangla and English UI/content switching
UI built with Tailwind CSS and shadcn/ui component system
PostgreSQL database with Prisma ORM and seeded demo data
JWT authentication — SUPER_ADMIN, EDITOR and reader roles
Reader auth flows: login, register, bookmarks, comments and reactions
Full admin dashboard: articles, categories, authors, media, comments
Admin management for users, advertisements, analytics and settings
Dashboard analytics — totals, weekly views chart, articles-by-category
Breaking news ticker, featured hero, category sections and trending lists
Article detail pages with related stories, share/save and engagement
Newsletter capture and advertisement placements on the public site
Production deployment notes for Postgres DATABASE_URL, JWT_SECRET and CORS
Problems & Solutions
Real production challenges faced while building this project — and how they were solved.
Problem
A newspaper product needs public reading UX and a real newsroom admin — not just static pages.
Solution
Split the system into a Next.js app (public + dashboard) and NestJS API, then wired every admin CRUD surface to authenticated REST endpoints backed by PostgreSQL/Prisma.
Problem
Bangla and English layouts, plus dark/light themes, must stay readable for long headlines and dense meta.
Solution
Built theme + locale switching into the shell (header and dashboard) with Tailwind/shadcn tokens so typography, nav and cards remain consistent in BN/EN and both color modes.
Problem
Editorial workflows require role-based access — readers, editors and super-admins cannot share the same permissions.
Solution
Implemented JWT auth with role claims (SUPER_ADMIN / EDITOR / reader) and guarded NestJS routes so dashboard mutations and content publishing stay authorized.
Problem
Content ops spans many entities (articles, categories, authors, media, comments, ads, users) that must stay in sync with the live site.
Solution
Modeled relational data in Prisma/PostgreSQL and exposed full CRUD + analytics APIs so admin changes appear on the production reader experience immediately.
Outcomes
- ▸Shipped a live newspaper at newspaper.mhadnan.com with bilingual + dual-theme UX
- ▸Delivered a complete admin dashboard controlling content, users, ads and analytics
- ▸Connected Next.js frontend to NestJS + PostgreSQL/Prisma with JWT-secured APIs
- ▸Established a production-ready full-stack architecture ready for ongoing editorial work
Want something similar?
I can help you design and ship scalable web or mobile products end-to-end — including news, media and content platforms.