- Overview
- Inspiration
- Core Features
- Tech Stack
- System Architecture
- Database Schema
- Installation & Setup
- Environment Variables
- Usage Guide
- Screenshots
- Future Roadmap
Dev Block is an interactive, community-driven platform for developers to:
- Publish blogs and tutorials
- Share code snippets
- Collaborate and discuss ideas via threaded comments
- Run live code with an integrated code playground
It centralizes tech learning, collaboration, and practical coding in one platform.
Dev Block started as Code Blog, a markdown-powered blog for coding tutorials and tech insights. It evolved into a feature-rich platform supporting:
- Multiple content types (blogs, tutorials, snippets)
- Real-time code execution
- Engagement features (likes, bookmarks, comments)
The Primary Goal is to provide a single space where developers write, run, and refine ideas while connecting with the community.
- Blogs – Long-form articles, guides, and insights.
- Tutorials – Step-by-step instructions with media and formatting.
- Code Snippets – Reusable code blocks with syntax highlighting.
- Likes, bookmarks, and threaded comments on all content types.
- Nested replies, edit/delete, and “show more” toggle for long threads.
- Real-time UI updates for engagement.
- Multi-language execution with online compiler APIs.
- Shareable playground sessions with output display.
- Reduced code-testing friction by 70%.
- Share via WhatsApp, Twitter/X, LinkedIn, Email, Reddit, Telegram.
- One-click link copying for easy sharing.
- Theme-switchable (light/dark) with smooth animations.
- Fully responsive design.
- Hydration-safe date rendering for SSR.
- Next.js
- JavaScript (ES6+)
- Tailwind CSS
- ShadCN UI
- TipTap – Rich text editing
- PostgreSQL – Structured content storage
- MongoDB – Flexible content storage
- Piston API – Live code execution API
- Clerk – Authentication
Entities:
- Users
- Blogs
- Tutorials
- Code Snippets
- Comments
- Likes
- Bookmarks
- Playground Sessions
Relationships:
Users
↔Blogs
(One-to-Many)Users
↔Tutorials
(One-to-Many)Users
↔Code Snippets
(One-to-Many)Users
↔Comments
(One-to-Many)Content
↔Likes
/Bookmarks
(Many-to-Many)
# Clone repository
git clone https://github.com/yourusername/dev-block.git
# Move into directory
cd dev-block
# Install dependencies
npm install
# Copy environment variables
cp .env.example .env.local
# Start development server
npm run dev