Visitar URL original
GitHub - x612skm/Dekha-Hobe: Made wiith ❤️ for college! Fully Functional Real-Time Blogging app having User authentication and CRUD for post allowing only user to edit via CRUD to only their post, Dashboard containg posts written accessible to all only logged in users are allowed to publish their post in their account · GitHub
Skip to content

About

Made wiith ❤️ for college! Fully Functional Real-Time Blogging app having User authentication and CRUD for post allowing only user to edit via CRUD to only their post, Dashboard containg posts written accessible to all only logged in users are allowed to publish their post in their account

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Dekha-Hobe (দেখা হবে) 📝

Stack React Node.js Database License

Dekha-Hobe (Bengali for "Until We Meet Again") is a feature-rich, full-stack MERN (MongoDB, Express.js, React, Node.js) blogging platform. It allows users to register, log in, create, publish, update, and manage blog posts with custom thumbnail/header images.

The application enforces strict author-level permissions, ensuring that users can only edit or delete their own posts while maintaining a public feed accessible to all visitors.


✨ Features

  • 🔐 User Authentication & Security: Register and login functionality with encrypted passwords via bcrypt.
  • ✍️ Post Publishing & Editor: Write blog posts with custom titles, content, categories, and cover image uploads.
  • 🛡️ Role & Ownership Protection: Strict authorization ensures only post authors can update or delete their posts.
  • 🏷️ Categorization & Search: Tag articles with categories and filter blog posts by specific author or category.
  • 🖼️ Image Storage: File upload processing powered by Multer for custom image headers and avatars.
  • 👤 User Dashboard & Profile: Dedicated user profile settings for updating credentials, bio, and account details.
  • 🌐 Responsive UI: Intuitive, user-friendly frontend interface built using React 18 and React Router v6.

🛠️ Tech Stack

Frontend (/Client)

  • Library: React 18
  • Routing: React Router DOM v6
  • HTTP Client: Axios
  • Styling: Modern CSS3 / Flexbox / Grid

Backend (/api)

  • Runtime: Node.js & Express.js
  • Database: MongoDB with Mongoose ORM
  • Authentication: Custom Authentication with bcrypt password hashing
  • File Uploads: Multer middleware

📁 Project Architecture

Dekha-Hobe/
├── api/                   # Express backend server
│   ├── images/            # Uploaded post header images
│   ├── models/            # Mongoose schemas (User, Post, Category)
│   ├── routes/            # REST API endpoints (auth, users, posts, categories)
│   ├── index.js           # Express app entry point
│   ├── package.json       # Backend dependencies
│   └── .env               # Environment configuration
│
└── Client/                # React frontend application
    ├── public/            # Static HTML assets
    ├── src/               # React components, pages & context
    ├── package.json       # Frontend dependencies & proxy setup
    └── README.md

🔌 API Endpoints Reference

Method Endpoint Description Access
POST /api/auth/register Register a new user Public
POST /api/auth/login Log in user Public
GET /api/users/:id Get user details Public
PUT /api/users/:id Update user details & password Owner
DELETE /api/users/:id Delete user account & associated posts Owner
GET /api/posts Get all posts (filterable by ?user= or ?cat=) Public
GET /api/posts/:id Get a specific blog post Public
POST /api/posts Create a new blog post Logged In
PUT /api/posts/:id Update an existing post Author Only
DELETE /api/posts/:id Delete a post Author Only
GET /api/categories Get list of post categories Public
POST /api/categories Add a new category Logged In
POST /api/upload Upload cover image file Logged In

🚀 Quick Start & Installation

Prerequisites

  • Node.js (v14 or higher)
  • MongoDB (Local installation or MongoDB Atlas URI)

1. Clone the Repository

git clone https://github.com/your-username/Dekha-Hobe.git
cd Dekha-Hobe

2. Setup & Run Backend API

# Navigate to API directory
cd api

# Install dependencies
npm install

# Create/configure .env file
# Add MONGO_URL=your_mongodb_connection_string

# Start development server (runs on http://localhost:5000)
npm start

3. Setup & Run Frontend Client

# Open a new terminal window & navigate to Client directory
cd Client

# Install dependencies
npm install

# Start React app (runs on http://localhost:3000)
npm start

🖼️ Application Screenshots

Feed / Home Single Post View
Blog App Home Single Post
Create Post / Editor Dashboard & Profile
Create Post User Profile
📸 Click to expand full screenshot gallery

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4


📜 License

This project is licensed under the ISC License.

About

Made wiith ❤️ for college! Fully Functional Real-Time Blogging app having User authentication and CRUD for post allowing only user to edit via CRUD to only their post, Dashboard containg posts written accessible to all only logged in users are allowed to publish their post in their account

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages