Giter VIP home page Giter VIP logo

blog-next's Introduction

Blog Next

This is a Blogging Website, Created Using NextJS, MongoDB, Next-Auth & Modular CSS.

Live Demo

Running Project

  • Add Environment variables:
MONGODB_URI="<URI for MongoDB Access>"

NEXTAUTH_SECRET="<Randomly Generated SECRETE Key required by Next Auth>"
  • Create a Build
$ npm run build
-- or --
$ yarn build
  • Start Server
$ npm run start
-- or --
$ yarn start

Project Structure

Pages:

  1. Home: Listing of All Blogs
  2. Contact Us: A Contact Us Form
  3. Register: User Registration Form
  4. Login: User Login Form
  5. Dashboard: User Profile
  6. Post/[slug]: Post Details

APIs:

  1. /api/user: GET access to Registered Users Profile Details
  2. /api/contact: POST Contact Form data, which is stored in MongoDB
  3. /api/auth/register: POST Registration API, User Data is stored in MongoDB.
  4. /api/auth/[...nextauth]: Dynamic API Route used by next-auth for Login, SignOut & for maintaining the USer Session

Backend Details:

The backend is using following Technologies;

  1. Node: For API & Accessing Blog MD
  2. Next JS: For SSR & APIs
  3. MongoDB: Storing User & Contact Form Data
  4. BCrypt: For Hashing the password before storing & for securely comparing passwords while login
  5. Next-Auth: For Handling User Auth. I've configured it to use JWT.

The Blog Data is stored as Markdowns & Rendered on Front-End

Frontend Details

The Front-End is using following technologies:

  1. Next JS: For SSR, SSG
  2. React: Used underneath NextJS for creating UI in form of Components
  3. Axios: For Sending Requests using API
  4. Next-Auth: For Accessing Session, verifying Authentication Status.
  5. React-Markdown: For Rendering the Blog Markdowns using Custom Styling
  6. React-Icons: For SVG Icons used on the Site

Site Screenshots

Home

Home

Contact Us

Contact US

Register

Register

SignIn

SignIn

Dashboard

Dashboard

Post Details

Post Details

Notification

Notification

blog-next's People

Contributors

shivangamsoni avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.