self-directed project · community platform · MERN
DialogueDock
A production-style multi-role community platform where people sign in, publish, and moderate content behind secure, server-enforced APIs.
live site: dialoguedock.vercel.app
Context
/contextDialogueDock is a self-directed project, built independently — not a client engagement. It exists to build and run a production-style system end to end: product architecture, MongoDB schema, REST API, frontend, authentication and role enforcement, and deployment.
The problem
/problemA community platform is only as good as the boundaries around it. Anyone can render a feed; the difficulty is that three different kinds of user — member, admin, super admin — need to see and do different things, and that separation has to hold on the server, not in the interface.
So the build had to answer concrete questions: how identity is established, how authorisation is checked on every request, how content and moderation actions are modelled in the database, and how the same product stays usable on a phone as on a desktop.
Architecture & decisions
/architectureThe decisions below are the substance of the project — the parts that only hold up if they were actually built.
Dual-layer authentication
Firebase Auth handles identity and session establishment on the client. The backend issues and verifies its own JWT for authorization, so the API never trusts a client-side claim about who the caller is or what they may do.
Role-based access control
Three roles — user, admin, super admin — enforced by custom Express middleware on the server. Role checks sit in front of the routes that mutate or moderate content, so an interface that hides an action is a convenience, not the control.
Protected route architecture
On the frontend, a PrivateRoute wrapper plus role-based authorization gates the admin and super-admin areas, keeping navigation coherent with what the API will actually permit.
Mobile-first responsive UI
React with Tailwind CSS and DaisyUI, built mobile-first, so the member feed and the admin tables both work at phone, tablet, and desktop widths rather than degrading into a scaled-down desktop layout.
Evidence
/evidence



Outcome
/outcome- A complete full-stack MERN application, deployed frontend and backend.
- Authentication running as two layers: Firebase Auth for identity, backend JWT for authorization.
- Role enforcement implemented server-side across user, admin, and super-admin roles.
- Responsive UI verified across mobile, tablet, and desktop widths.
Role & scope
/roleSole full-stack engineer — product architecture, MongoDB schema design, REST API, frontend UI, authentication and RBAC, and deployment.
live site: dialoguedock.vercel.app
Start a project
Built end to end by the person who writes the code. Tell me what the system has to do and I'll tell you how I'd build it.
start a projectnext project: Platinum Residence Properties
