SnapBlog is a Web-based blogging platform where users can create, publish, and manage their blog posts. The platform allows users to register, log in, create blog posts, view and edit their posts, and display the published posts to the public.
-
User Registration and Authentication
- Users can register with the platform using their email and password.
- Secure authentication mechanism for registered users.
-
Create and Manage Blog Posts
- Users can create new blog posts with a title, content (max 300 words), and optional tags.
- View and edit their own posts.
- Feature to delete posts.
-
Public Blog Display
- Visitors can view all published blog posts on the platform.
- Search functionality based on tags or keywords.
-
User Interface and Design
- User-friendly and responsive interface.
- Visually appealing design adhering to the requirements.
-
Security
- Implementation of necessary security measures to protect user data.
- Frontend: React.js with Material-UI and Bootstrap
- Backend: Node.js with Express
- Database: MySQL
- Styling: Material-UI and Bootstrap
- Hosting:
- Frontend - 000WebHost
- Backend - Render
- Database - Godaddy
- Clone the repository:
- Make sure to have installed node and npm
git clone https://github.com/AK08/Snap-Blog cd blogs
- Install Dependencies
#Instal Client cd client npm install #Install Server cd ../server npm install
- Add in .env for client
VITE_SERVER=http://localhost:3000
- Add in .env for server
DATABASE_HOST=[Your Host] DATABASE_USER=[Your MySQL Username] DATABASE_PASS=[Your MYSQL Pass] DATABASE_NAME=blogs #databasename - Create a database
CREATE Database blogs
- Run client and server
- client
cd client npm run dev - server
cd ../server npm run dev
- Copy & paste the below url
http://localhost:5173/