Skip to content

A comprehensive Blogging Application based on MERN Stack, which is integrated with OTPLess Authentication System. The objective of the application is to allow users to sign in to the blog application without using passwords, just with a single sign in approval link.

Notifications You must be signed in to change notification settings

namanx19/Typosphere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Typosphere - (with OTPLess Auth)

Overview

This project is a Vite+React application developed as a personal project, which is now integrated with OTPLess Authentication System. The objective of the application is to allow users to sign in to the blog application without using passwords, just with a single sign in approval link.

Key Features

  1. Created a React app using Vite.
  2. Utilized Tailwind CSS for styling.
  3. Integrated OTP-less authentication for seamless user login and registration. Checks if the user exists in the database; if not, it registers and logs in the user automatically.
  4. Users can log in to add new blog posts, read articles, and comment on posts.
  5. Comments are based on approval and controlled by the admin.
  6. Comprehensive admin panel with full access to manage users, posts, and comments.
  7. Admin can approve, edit, delete, or modify blog posts and comments.
  8. Admin has the authority to approve comments before they appear on posts.
  9. Users can create, edit, and format blog posts using the rich text editor powered by Tiptap Editor.
  10. Categories can be assigned to blog posts for easy categorization and browsing.
  11. Implemented Redux for efficient global state management across the application.
  12. Designed the front-end using Tailwind CSS and Daisy UI for a modern, mobile-first, and responsive interface.
  13. Built a dedicated backend server using Node.js and Express with RESTful routes for handling posts, comments, categories, and user management.
  14. Database management handled using MongoDB, ensuring scalability and flexibility for managing data.
  15. Code available on GitHub.
  16. Website deployed on Vercel. Link.
  17. Backend deployed on Digital Ocean.

Setup Instructions

To set up the project locally, follow these steps:

  1. Clone the repository: https://github.com/namanx19/Typosphere

  2. Navigate to the project directory: cd <PATH_OF_DIRECTORY>

  3. Navigate to the client directory to run the frontend cd client/

  4. Install dependencies: npm install

  5. Add a .env file inside /client with the following details:

VITE_BASE_URL = <SERVER_URL> Default Local Host Server URL is http://localhost:5000

  1. Start the frontend client: npm run dev

  2. On your browser, go to http://localhost:5173 (if your port is 5173)

  3. Navigate to the server directory to run the backend cd server/

  4. Install dependencies: npm install

  5. Add a .env file inside /server with the following details:

Key Value
PORT <PORT_NUMBER>
DB_URI <MONGO_DB_URI>
JWT_SECRET <SECRET>
NODE_ENV development
CLIENT_SECRET <OTPLESS_CLIENT_SECRET>
CLIENT_ID <OTPLESS_CLIENT_ID>
  1. Admin Panel is only accessible when you mark the user admin = true in mongo db.

Screenshots

1 homepage 2 otplesssignin
4 articledetail 5 allblogs
6 profilepage 7 crop picture
8 create post 8 profile3
10 admin comments 11 admin category
13 admin users

Questions or Issues?

Feel free to reach out to naman.mw4@gmail.com if you have any questions or encounter any issues while setting up or using Typosphere. Happy coding!

About

A comprehensive Blogging Application based on MERN Stack, which is integrated with OTPLess Authentication System. The objective of the application is to allow users to sign in to the blog application without using passwords, just with a single sign in approval link.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages