SmartScribbles
Community blogging platform built end to end with React, Node.js and PostgreSQL.
- Role
- Solo full-stack developer

15
API endpoints
12
pages
20
components
29
test assertions
The Challenge
Writers choose between hosted platforms that own their audience and heavy self-hosted engines. SmartScribbles is the middle ground: a modern community blog with its own identity.
The Outcome
A complete, responsive blogging platform on the latest Node.js, guarded by a repeatable smoke test.
What I Built
I built it end to end: Express and PostgreSQL on the server, React and Tailwind on the client.
Data model & API
PostgreSQL with cascade deletes, hash-indexed uniqueness and literal-safe search.
Authentication
bcrypt passwords, signed JWT cookie sessions, whitelisted update fields and clear 409 errors.
Design system
Tailwind, shadcn/ui and Radix, with skeletons, toasts and empty states throughout.
Writing experience
One form for create and edit: drag-and-drop cover, category chips and live reading time.
Tested end to end
A 29-assertion smoke test against a throwaway database covers every core flow.
Tech Stack
- React
- JavaScript
- Node.js
- Express
- PostgreSQL
- JWT
- bcrypt
- Multer
- Tailwind CSS
- shadcn/ui
- Radix UI
Screenshots

Landing page 
Community feed with search, categories and reading time 
Post page with owner edit and delete actions 
Editor with cover preview, category chips and live word count 
New post with drag-and-drop cover upload 
Profile page 
Login 
Sign up 
About page