{"id":25996703,"url":"https://github.com/almoggutin/node-express-rest-api-mongo-js-example","last_synced_at":"2026-04-07T18:31:48.052Z","repository":{"id":167630727,"uuid":"437640682","full_name":"almoggutin/node-express-rest-api-mongo-js-example","owner":"almoggutin","description":"Basic API example that is built with Node.js and Express in javascript. Database connection with Mongoose (ODM) and supports authentication and authorization with JWT.","archived":false,"fork":false,"pushed_at":"2022-04-21T05:48:46.000Z","size":104,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-05T16:45:27.460Z","etag":null,"topics":["api","authentication","authorization","crud","express","javascript","jwt","mongodb","mongoose","nodejs","odm","postman","rest-api"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/almoggutin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2021-12-12T19:45:51.000Z","updated_at":"2023-05-20T16:17:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"dae92861-91ea-4840-95c2-f1834a04af51","html_url":"https://github.com/almoggutin/node-express-rest-api-mongo-js-example","commit_stats":null,"previous_names":["almog-gutin/node-express-rest-api-mongo-js-example","almoggutin/node-express-rest-api-mongo-js-example"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/almoggutin/node-express-rest-api-mongo-js-example","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/almoggutin%2Fnode-express-rest-api-mongo-js-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/almoggutin%2Fnode-express-rest-api-mongo-js-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/almoggutin%2Fnode-express-rest-api-mongo-js-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/almoggutin%2Fnode-express-rest-api-mongo-js-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/almoggutin","download_url":"https://codeload.github.com/almoggutin/node-express-rest-api-mongo-js-example/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/almoggutin%2Fnode-express-rest-api-mongo-js-example/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31524524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["api","authentication","authorization","crud","express","javascript","jwt","mongodb","mongoose","nodejs","odm","postman","rest-api"],"created_at":"2025-03-05T16:39:55.166Z","updated_at":"2026-04-07T18:31:48.041Z","avatar_url":"https://github.com/almoggutin.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv id=\"top\"\u003e\u003c/div\u003e\n\n\u003ch1 align=\"center\"\u003eNode Express REST API MongoDB JS Example\u003c/h1\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp align=\"center\"\u003e\n    This API example is a basic backend application to test basic API functions.\n  \u003c/p\u003e\n    \u003ca href=\"https://www.postman.com/workspace/5cc68958-1913-447f-af30-01417baa062a/overview\"\u003eView Postman Files\u003c/a\u003e\n\u003c/div\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-application\"\u003eAbout The Application\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#how-to-install\"\u003eHow To Install\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#available-scripts\"\u003eAvailable Scripts\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#postman\"\u003ePostman\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003c!-- ABOUT THE APPLICATION --\u003e\n\n## About The Application\n\nThis API is a basic example of a REST API backend application.\n\nIt is build with Node.js and Express Framework with Javascript. In addition the application's database is MongoDB with the use of an ODM like Mongoose. Additionally the application has basic authentication and authorization functionality with the use of JWT.\n\nIn the applicaiton we can add books to the database and users can signip, login, edit, and delete their data. In addition, each user has their own cart where they can store books they want to buy, and checkout if they wish too.\n\nThe point of this backend application is to test basic api functions.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### Built With\n\n-   [Node.js](https://nodejs.org/en/)\n-   [Express](https://expressjs.com/)\n-   [MongoDB](https://www.mongodb.com/)\n-   [Mongoose (ODM)](https://mongoosejs.com/)\n-   [JWT](https://www.npmjs.com/package/jsonwebtoken)\n-   [Validator.js](https://www.npmjs.com/package/validator)\n-   [Cors](https://www.npmjs.com/package/cors)\n-   [Days.js](https://day.js.org/)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- INSTALLATION INSTRUCTIONS --\u003e\n\n## How To Install\n\n**Git clone**\n\n```\ngit clone https://github.com/almoggutin/Node-Express-REST-API-Mongo-JS-Example.git\n```\n\n**Instructions**\n\n-   After cloning the the repository run `npm i` in order to install all the dependencies.\n-   Fill in all the values of the env variables in `config/dev.env` file so that the application will run properly during development mode.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!--  AVAILABLE SCRIPTS --\u003e\n\n## Available Scripts\n\nIn the project directory, you can run:\n\n### `npm start`\n\nRuns the app in the production mode.\\\nHowever this script is only ment to be run when deploying the application. The application is built, where you need to setup the env variables on the machine that your will be hosting it on or in a webhosting service, unlike in development mode.\n\n### `npm run dev`\n\nRuns the app in the development mode.\\\nOpen localhost on the port you decided on in the env variables to view it in the browser.\n\nThe page will reload if you make edits with nodemon.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- POSTMAN --\u003e\n\n## Postman\n\nAbove, there is a link that will take you to the postman files in my postman profile where you can test the api functionality in the browser.\n\nHowever if you would like to run the files locally on your machine in the postman desktop application, included in the repository, in the `postman` directory all the files so you can import them. In addition you will have to configure env variables in postman so that you will be able to test properly everything.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./assets/postman-env-variables.png\" /\u003e\n\u003c/div\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falmoggutin%2Fnode-express-rest-api-mongo-js-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falmoggutin%2Fnode-express-rest-api-mongo-js-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falmoggutin%2Fnode-express-rest-api-mongo-js-example/lists"}