dzenis-h / Bootcamp-API

A fairly complex RESTful API build with NodeJS/ExpressJS + MongoDB/Mongoose.

Home Page:https://bootcamp-api-docs.web.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub repo size GitHub contributors GitHub stars GitHub forks LinkedIn Follow GitHub Follow

Bootcamp API RESTful API

Overview πŸ‘€

My Awesome App is a web application that allows users to do awesome things. It is a RESTful API built with Node.js, Express, MongoDB, and Mongoose. It has a responsive and user-friendly interface, and it supports authentication and authorization features. You can see a screenshot of the app below:

Screenshot

Tech Stack Used πŸ› οΈ

Tech Docs Description
Node.js Node.js Node.js is a JavaScript runtime environment that executes JavaScript code outside a web browser.
Express.js Express.js Express.js is a web application framework for Node.js that provides a set of features for web and mobile applications.
MongoDB MongoDB MongoDB is a cross-platform document-oriented database program that uses JSON-like documents with optional schemas.
Mongoose Mongoose Mongoose is an object data modeling (ODM) library for MongoDB and Node.js that provides a schema-based solution to model your application data.
JSON Web Token JSON Web Token JSON Web Token (JWT) is an open standard (RFC 7519) that defines a compact and self-contained way of securely transmitting information between parties as a JSON object.
Bcrypt.js Bcrypt.js Bcrypt.js is a JavaScript library for hashing and comparing passwords using the bcrypt algorithm.
JavaScript JavaScript JavaScript is a scripting or programming language that allows you to implement complex features on web pages.
Postman Postman Postman is a collaboration platform for API development that simplifies each step of building an API and streamlines collaboration.
REST API REST API REST API (Representational State Transfer Application Programming Interface) is a set of rules that allow programs to talk to each other. The developer creates the API on the server and allows the client to talk to it.
JSON JSON JSON (JavaScript Object Notation) is a lightweight data-interchange format that is easy for humans and machines to read and write.
Firebase Firebase Firebase is a platform developed by Google for creating mobile and web applications. It provides various services such as authentication, database, storage, hosting, and more.

Setup βš™οΈ

To start using this example:

  1. Clone this repo with git clone
  2. Install all the dependencies with npm install
  3. Create your own credentials (if necessary)
  4. Move into the appropriate folder(s)
  5. Afterward, just run the start the project

Usage πŸ“

This is a RESTful API that follows the CRUD (Create, Read, Update, Delete) operations. It has the following endpoints:

  • GET /api/users - returns all the users in the database
  • GET /api/users/:id - returns a single user by id
  • POST /api/users - creates a new user with the given data
  • PUT /api/users/:id - updates an existing user by id with the given data
  • DELETE /api/users/:id - deletes an existing user by id

The data for each user should have the following format:

{
  "name": "John Doe",
  "email": "johndoe@example.com",
  "password": "123456",
  "role": "admin"
}

You can use Postman to test the API and see the results.

Contributing πŸ™Œ

Contributions are always welcome! If you would like to contribute to this project, please follow these steps:

  1. Fork the repository. 🍴
  2. Create a new branch. 🌡
  3. Make your changes and test them thoroughly. πŸ‘¨β€πŸ’»
  4. Submit a pull request. βœ”

License πŸ“‘

This project is licensed under the MIT License. This means that you can use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software without any restrictions. For more details, please see the LICENSE file.

Deployment πŸš€

This project is deployed on Firebase. You can access it here

Credits πŸ‘¨πŸ»β€πŸ’»

This repo was created by Dzenis H.

Contributions are more than welcome. 🫑

If you like what you see, please consider giving a ⭐️

About

A fairly complex RESTful API build with NodeJS/ExpressJS + MongoDB/Mongoose.

https://bootcamp-api-docs.web.app


Languages

Language:JavaScript 100.0%