Bloggify is a full-stack blogging application that allows users to create, manage, and share blog posts. Built with a focus on simplicity and usability, Bloggify employs a modern tech stack to provide a seamless experience for both developers and users.
- User Authentication: Secure login and registration using JSON Web Tokens (JWT).
- CRUD Operations: Create, Read, Update, and Delete blog posts with ease.
- Slug-based URLs: Access blog posts via user-friendly slugs.
- User Management: Each user can manage their own blog posts.
- Frontend: HTML, CSS, Bootstrap, JavaScript
- Backend: Node.js with Express.js
- Database: MongoDB, accessed through Mongoose
- Authentication: JSON Web Tokens (JWT)
To get started with Bloggify, follow these steps:
-
Clone the repository:
git clone https://github.com/Patoski-patoski/bloggify.git cd bloggify
-
Install dependencies:
npm install
-
Set up your environment:
- Create a
.env
file in the root directory and add your MongoDB connection string and JWT secret:
MONGODB_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret REFRESH_JWT_SECRET=your_jwt_refresh_secret
- Create a
-
Run the application:
npm start
The application should now be running on
http://localhost:3000
.
- POST /register: Register a new user
- POST /login: Login an existing user
- GET /api/posts: Retrieve all blog posts
- GET /api/posts/:slug: Retrieve a single blog post by slug
- POST /api/posts: Create a new blog post
- PUT /api/posts/:slug: Update an existing blog post
- DELETE /api/posts/:slug: Delete a blog post
This project does not specify a license, so the default copyright applies. Feel free to contribute and modify as needed.
Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes.
For any inquiries, please reach out to [email protected].