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:
Tech | Docs | Description |
---|---|---|
Node.js | Node.js is a JavaScript runtime environment that executes JavaScript code outside a web browser. | |
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 is a cross-platform document-oriented database program that uses JSON-like documents with optional schemas. | |
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 (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 is a JavaScript library for hashing and comparing passwords using the bcrypt algorithm. | |
JavaScript | JavaScript is a scripting or programming language that allows you to implement complex features on web pages. | |
Postman | Postman is a collaboration platform for API development that simplifies each step of building an API and streamlines collaboration. | |
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 (JavaScript Object Notation) is a lightweight data-interchange format that is easy for humans and machines to read and write. | |
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. |
To start using this example:
- Clone this repo with git clone
- Install all the dependencies with npm install
- Create your own credentials (if necessary)
- Move into the appropriate folder(s)
- Afterward, just run the start the project
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.
Contributions are always welcome! If you would like to contribute to this project, please follow these steps:
- Fork the repository. 🍴
- Create a new branch. 🌵
- Make your changes and test them thoroughly. 👨💻
- Submit a pull request. ✔
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.
This project is deployed on Firebase. You can access it here
This repo was created by Dzenis H.
Contributions are more than welcome. 🫡
If you like what you see, please consider giving a ⭐️