Skip to content

Blogify is a full-stack blogging platform built with Next.js that allows users to create, read, update, and delete blogs. It features secure authentication, dynamic content rendering, and a responsive UI for an optimal user experience.

Notifications You must be signed in to change notification settings

kamrulhasanPro/Blogify

Repository files navigation

Blogify

A modern blogging platform built with Next.js (frontend) and Express + MongoDB (backend).
Users can register, login, create blogs, view featured blogs, and perform CRUD operations. The backend is deployed on Vercel.


Features

  • User authentication (register/login) with hashed passwords.
  • Create, read, update, and delete blogs.
  • Fetch featured blogs sorted by rating.
  • Search blogs by title.
  • Responsive frontend with optimized images.
  • Google OAuth integration and Credential Authentication.

Live Links


Public Routes

Route File/Folder Path Description
/ app/page.js Home page showing featured blogs and latest posts
/login app/login/page.js User login page
/register app/register/page.js User registration page
/blogs app/blogs/page.js All blogs listing page
/blog/[id] app/blog/[id]/page.js Blog details page by ID
/about app/about/page.js About page
/terms-and-condition app/terms-and-condition/page.js Terms & Condition page

Protected Routes (require authentication)

Route File/Folder Path Description
/add-blog app/add-blog/page.js Post Own Blog
/manage-blog app/manage-blog/page.js Manage all own blog (view, delete)

Tech Stack

  • Frontend: Next.js, Axios, TailwindCSS
  • Authentication: NextAuth.js
  • Backend: Express.js, MongoDB, bcrypt, cors
  • Deployment: Vercel (backend & frontend)
  • Environment Variables: .env file

Setup & Installation

1. Clone the repository Frontend

git clone https://github.com/kamrulhasanPro/Blogify.git

Then

cd blogify
npm install
npm run dev

Create a .env file in the frontend folder and include:

NEXT_PUBLIC_API_BASE_URL=http://localhost:2000
NEXTAUTH_SECRET=your_nextauth_secret
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

2. Clone the repository Backend

git clone https://github.com/kamrulhasanPro/Blogify-Backend.git
cd blogify-backend

Then

cd blogify-backend
npm install
npm run dev

Create a .env file in the backend folder and include:

MONGODB_URI=your_mongodb_connection_string

About

Blogify is a full-stack blogging platform built with Next.js that allows users to create, read, update, and delete blogs. It features secure authentication, dynamic content rendering, and a responsive UI for an optimal user experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published