{"id":26351709,"url":"https://github.com/ornella-gigante/datanest_mongodb_nodejs","last_synced_at":"2025-10-14T23:55:28.584Z","repository":{"id":273736788,"uuid":"920715878","full_name":"Ornella-Gigante/DataNest_MongoDB_NodeJS","owner":"Ornella-Gigante","description":"This is my first project using NodeJS and MongoBD as persistence. This will be a simple API-REST app in which I will create a MongoDB database, create a server with NodeJS, use a RESTful client and use a MVC model.","archived":false,"fork":false,"pushed_at":"2025-02-28T13:13:24.000Z","size":27333,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-08T12:47:57.487Z","etag":null,"topics":["django","django-rest-framework","json","mongodb","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ornella-Gigante.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-22T16:45:17.000Z","updated_at":"2025-03-03T22:55:12.000Z","dependencies_parsed_at":"2025-02-08T10:20:41.240Z","dependency_job_id":"00881a04-8106-4064-bca2-6dbab9478f79","html_url":"https://github.com/Ornella-Gigante/DataNest_MongoDB_NodeJS","commit_stats":null,"previous_names":["ornella-gigante/datanest_mongodb_nodejs"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ornella-Gigante%2FDataNest_MongoDB_NodeJS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ornella-Gigante%2FDataNest_MongoDB_NodeJS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ornella-Gigante%2FDataNest_MongoDB_NodeJS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ornella-Gigante%2FDataNest_MongoDB_NodeJS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ornella-Gigante","download_url":"https://codeload.github.com/Ornella-Gigante/DataNest_MongoDB_NodeJS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243858876,"owners_count":20359258,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","django-rest-framework","json","mongodb","nodejs"],"created_at":"2025-03-16T10:34:00.467Z","updated_at":"2025-10-14T23:55:28.507Z","avatar_url":"https://github.com/Ornella-Gigante.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌐 DataNest: MongoDB \u0026 Node.js Project\n---\n\nWelcome to DataNest, my first go-to project using the integration of **MongoDB** and **Node.js** using **Postman**! This will be a simple API-REST app in which I will create a MongoDB database, create a server with NodeJS, use a RESTful client and use a MVC model🚀 This repository demonstrates how to build a robust backend application using modern JavaScript technologies. Whether you're a beginner like me or an experienced developer, this project is designed to help you understand the fundamentals and advanced concepts of working with databases and backend development.\n\n---\n\n## 📋 Table of Contents\n- [✨ Features](#-features)\n- [🔍 Requirement](#-features)\n- [📦 Technologies Used](#-technologies-used)\n- [⚙️ Installation](#️-installation)\n- [🚀 Usage](#-usage)\n- [📂 Project Structure](#-project-structure)\n- [🎥 Demo](#-demo)\n- [🏁 How to Start the App](#-how-to-start-the-app)\n- [🤝 Contributing](#-contributing)\n- [📄 License](#-license)\n\n---\n\n## ✨ Features\n\n✔️ RESTful API built with **Express.js**  \n✔️ CRUD operations (Create, Read, Update, Delete) for managing data  \n✔️ MongoDB database integration with **Mongoose**  \n✔️ Clean and modular code structure for scalability 🛠️  \n✔️ Error handling and middleware implementation  \n✔️ Easy-to-follow setup for quick deployment  \n\n---\n\n## Prerequisites\n\n- Node.js \u003e=18.12\n\n---\n\n## 📦 Technologies Used\n\n| Technology      | Description                          |\n|------------------|--------------------------------------|\n| **Node.js**     | JavaScript runtime for server-side   |\n| **Express.js**  | Web framework for building APIs      |\n| **MongoDB**     | NoSQL database for data storage      |\n| **Mongoose**    | ODM library for MongoDB integration  |\n\n---\n\n## ⚙️ Installation\n\nFollow these steps to get started with DataNest on your local machine:\n\n1. **Clone the repository**:\n   ```bash\n   git clone https://github.com/Ornella-Gigante/DataNest_MongoDB_NodeJS.git\n   cd DataNest_MongoDB_NodeJS\n   ```\n\n2. **Install dependencies**:\n   ```bash\n   npm install\n   ```\n\n3. **Set up environment variables**:  \n   Create a `.env` file in the root directory and add your MongoDB connection string:\n   ```env\n   MONGO_URI=your_mongodb_connection_string\n   PORT=3000\n   ```\n\n4. **Run the application**:\n   ```bash\n   cd DataNest_MongoDB_NodeJS\n   npm start\n   ```\n\n5. Open your browser or API client (like Postman) and navigate to:\n   ```\n   http://localhost:3000\n   ```\n\n---\n\n## 🚀 Usage\n\nThis project provides a RESTful API that allows you to perform CRUD operations on your data. Below are some example endpoints:\n\n### 📌 Endpoints:\n\n#### 1️⃣ **Get all items**\n```http\nGET /api/items\n```\n\n#### 2️⃣ **Get a single item by ID**\n```http\nGET /api/items/:id\n```\n\n#### 3️⃣ **Create a new item**\n```http\nPOST /api/items\n```\nBody (JSON):\n```json\n{\n  \"name\": \"Sample Item\",\n  \"description\": \"A brief description of the item\"\n}\n```\n\n#### 4️⃣ **Update an item**\n```http\nPUT /api/items/:id\n```\nBody (JSON):\n```json\n{\n  \"name\": \"Updated Item Name\"\n}\n```\n\n#### 5️⃣ **Delete an item**\n```http\nDELETE /api/items/:id\n```\n\n---\n\n## 📂 Project Structure\n\n```plaintext\nDataNest_MongoDB_NodeJS/\n├── models/          # Database schemas (Mongoose models)\n├── routes/          # API route handlers\n├── controllers/     # Business logic for routes\n├── middleware/      # Middleware functions (e.g., error handling)\n├── config/          # Configuration files (e.g., database connection)\n├── .env.example     # Example environment variables file\n├── server.js        # Entry point of the application\n└── README.md        # Project documentation (this file!)\n```\n\n---\n\n## 🎥 Demo\n\n🎉 Check out the live demo of this project! You can interact with the API endpoints directly using tools like Postman or curl.\n\n🚀 Demo URL: [https://vimeo.com/1051126415](https://vimeo.com/1051126415) \n\n---\n\n## 🏁 How to Start the App\n\nFollow these steps to set up and run the application:\n\n### 1️⃣ Start MongoDB  \nOpen a terminal and run the following command to start the MongoDB server:\n```bash\nmongod\n```\nMake sure MongoDB is installed and running on its default port (27017).\n\n### 2️⃣ Install Dependencies  \nNavigate to the project folder in your terminal and install all required dependencies:\n```bash\nnpm install\n```\n\n### 3️⃣ Start the Application  \nOnce the dependencies are installed, start the server using:\n```bash\nnpm start\n```\nThis will run the app using `nodemon`, which automatically restarts the server when changes are detected.\n\n### 4️⃣ Access the API  \nThe server will be running on:\n```\nhttp://localhost:3700\n```\nYou can now test the API endpoints using tools like Postman or curl.\n\n---\n\n## 🤝 Contributing\n\nWe ❤️ contributions! If you'd like to contribute to this project, follow these steps:\n\n1. Fork the repository.\n2. Create a new branch (`git checkout -b feature-name`).\n3. Commit your changes (`git commit -m 'Add some feature'`).\n4. Push to the branch (`git push origin feature-name`).\n5. Open a pull request.\n\nFeel free to report issues or suggest features by opening an issue in this repository.\n\n---\n\n## 📄 License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\n---\n\n### 🌟 Show Your Support!\n\nIf you found this project helpful, please give it a ⭐ on GitHub! It helps others discover it too.\n\nHappy coding! 💻✨\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fornella-gigante%2Fdatanest_mongodb_nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fornella-gigante%2Fdatanest_mongodb_nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fornella-gigante%2Fdatanest_mongodb_nodejs/lists"}