https://github.com/ahmedeweeskorany/ponder_peak_api
🔧 A robust and scalable Blog App Backend developed with Node.js and Express, using MongoDB for data storage. This API-powered backend handles user authentication, CRUD operations, and efficient data management to support a dynamic blogging platform. 💡 Check out the code to see how RESTful services and database integration come together to create
https://github.com/ahmedeweeskorany/ponder_peak_api
api blog express middlewares mongodb mongoose multer-storage mvc mvc-architecture nodejs restful-api
Last synced: 6 months ago
JSON representation
🔧 A robust and scalable Blog App Backend developed with Node.js and Express, using MongoDB for data storage. This API-powered backend handles user authentication, CRUD operations, and efficient data management to support a dynamic blogging platform. 💡 Check out the code to see how RESTful services and database integration come together to create
- Host: GitHub
- URL: https://github.com/ahmedeweeskorany/ponder_peak_api
- Owner: AhmedEweesKorany
- Created: 2024-07-22T22:22:17.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-29T06:27:28.000Z (about 1 year ago)
- Last Synced: 2025-02-09T20:36:44.128Z (8 months ago)
- Topics: api, blog, express, middlewares, mongodb, mongoose, multer-storage, mvc, mvc-architecture, nodejs, restful-api
- Language: JavaScript
- Homepage: https://blogappbackend-api.up.railway.app/
- Size: 2.27 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Backend Project with Express and MongoDB
## Description
This project is a backend application built with Node.js, Express, and MongoDB. It serves as a RESTful API for managing a collection of items, including basic CRUD (Create, Read, Update, Delete) operations. The application is designed to be a template for building scalable and maintainable backend services.
## Features
- RESTful API for CRUD operations
- Express framework for handling HTTP requests
- MongoDB for data storage
- Mongoose for object data modeling (ODM)
- Error handling middleware
- Environment configuration using dotenv## Technologies Used
- [Node.js](https://nodejs.org/) - JavaScript runtime
- [Express](https://expressjs.com/) - Web framework for Node.js
- [MongoDB](https://www.mongodb.com/) - NoSQL database
- [Mongoose](https://mongoosejs.com/) - ODM for MongoDB and Node.js
- [dotenv](https://github.com/motdotla/dotenv) - Environment variable management## Prerequisites
- Node.js installed on your local machine
- MongoDB instance running (locally or remotely)
- npm (Node Package Manager) installed## Installation
1. Clone the repository:
```bash
git clone https://github.com/AhmedEweesKorany/blog_app_backend.git
```2. Navigate to the project directory:
```bash
cd blog_app_backend
```3. Install the dependencies:
```bash
npm install
```4. Create a `.env` file in the root directory and add your MongoDB connection string and other environment variables:
```env
PORT=3000
MONGODB_URI=mongodb://localhost:27017/your-database-name
```5. Start the server:
```bash
npm start
```## API Endpoints
-in progress
## Project Structure
```
├── config
│ └── db.js # Database connection configuration
├── controllers
│ └── itemController.js # Controller for item operations
├── models
│ └── item.js # Mongoose schema and model for items
├── routes
│ └── itemRoutes.js # Express routes for item operations
├── middlewares
│ └── errorHandler.js # Custom error handling middleware
├── .env # Environment variables
├── .gitignore # Git ignore file
├── app.js # Main application file
├── package.json # NPM package configuration
└── README.md # Project documentation
```## Contributing
1. Fork the repository
2. Create a new branch (`git checkout -b feature-branch`)
3. Make your changes
4. Commit your changes (`git commit -am 'Add new feature'`)
5. Push to the branch (`git push origin feature-branch`)
6. Create a new Pull Request## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Contact
For any questions or feedback, please contact me at [ahmedewaisvi34@gmail.com](mailto:ahmedewaisvi34@gmail.com).