{"id":18996220,"url":"https://github.com/arpitgo4/express-mongodb-scaffold","last_synced_at":"2026-04-10T14:36:46.520Z","repository":{"id":91906060,"uuid":"173261204","full_name":"arpitgo4/Express-MongoDB-Scaffold","owner":"arpitgo4","description":"Express MongoDB scaffold for api server microservice","archived":false,"fork":false,"pushed_at":"2019-03-07T18:28:24.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-01T16:27:12.859Z","etag":null,"topics":["api-service","chai","docker","expressjs","microservice","mocha","mongodb","mongoose","nodejs","nodemon","npm","redis","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arpitgo4.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":"2019-03-01T08:07:56.000Z","updated_at":"2019-03-07T18:28:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7088d00-d9a1-41eb-a45e-f7d3effa48dd","html_url":"https://github.com/arpitgo4/Express-MongoDB-Scaffold","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arpitgo4%2FExpress-MongoDB-Scaffold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arpitgo4%2FExpress-MongoDB-Scaffold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arpitgo4%2FExpress-MongoDB-Scaffold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arpitgo4%2FExpress-MongoDB-Scaffold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arpitgo4","download_url":"https://codeload.github.com/arpitgo4/Express-MongoDB-Scaffold/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240010698,"owners_count":19733555,"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":["api-service","chai","docker","expressjs","microservice","mocha","mongodb","mongoose","nodejs","nodemon","npm","redis","typescript"],"created_at":"2024-11-08T17:34:22.308Z","updated_at":"2025-12-30T19:12:31.803Z","avatar_url":"https://github.com/arpitgo4.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Express-MongoDB-Scaffold [![Build Status](https://travis-ci.org/arpitgo4/React-Redux-Scaffold.svg?branch=master)](https://travis-ci.org/arpitgo4/React-Redux-Scaffold)\nServer side scaffold with Express-MongoDB. Scaffold supports production and development modes, with **Best Developer Experience** ( DX ) by Hot-Reloading for the server side changes. Docker, Typescript and production best practices are all baked in.\n\n## Scaffold Structure \n\n```\n\t.\n\t├── bin                     \t#  server config directory\n\t├── config\t\t        #  server dependencies config\n        ├── controllers          \t#  api controllers\n\t├── dist                      \t#  Compiled files\n\t├── middlewares              \t#  express middlewares\n\t├── models             \t\t#  mongoose models\n\t├── routes \t\t\t#  api routes    \n\t├── tests            \t\t#  unit tests\n\t├── types          \t\t#  typescript custom types\n\t├── utils            \t\t#  utility methods\n\t├── .dockerignore           \t#  docker ignore files\n\t├── .env                \t#  environment variables (only for demo, don't commit in production)\n\t├── .gitignore               \t#  git commit ignore files\n\t├── app.ts \t\t\t#  express app\n\t├── Dockerfile\t\t\t#  docker build script\n\t├── nodemon.json            \t#  nodemon config for development mode\n\t├── package.json              \t#  backend dependencies\n\t├── README.md                 \t#  This file\n\t├── tsconfig.json               #  typescript compiler config\n\t└── tslint.json\t                #  typescript linter config\n```\n\n## Environment Variables\n```\n\n## All environment variables are needed for successfull startup of the server\n\nSERVER_PORT=8080                        # Port number for server to listen\nMONGO_HOST=mongo_cluster_ip:27017       # MongoDB connection url\nMONGO_DB_NAME=express-mongodb           # MongoDB database name\nREDIS_HOST=redis_cluster_ip:6379        # Redis connection url\nJWT_SECRET=\u003cbase64 encoded string\u003e      # Secret for signing JWT tokens\nJWT_HEADER=x-token                      # Request header for JWT tokens\nJWT_TOKEN_TTL=20m                       # JWT token time to live\n```\n\n\n## Development\n```\t\n# Start client in development mode with hot code loading,\ndocker run --rm -it -p 8080:8080 -v $(pwd):/usr/src/app arpitgo4/alpine-node\n\n# Inside docker container,\ncd /usr/src/app \nnpm run start:development\n\n# Open web browser at http://localhost:8080/api/v1/health\n# Hit api server to get api response in the postman, enjoy developing :)\n```\n\n## Production\n```\n# Docker image build\ndocker build -t express-mongodb-scaffold .\n\n# Start the project\ndocker run --rm --name express-mongodb-scaffold -d -p 8080:8080 express-mongodb-scaffold\n\n# Open web browser at http://localhost:8080/api/v1/health\n# You will see a health response from server\n```\n\n## Feedback\nIn case of any query or feedback, please feel free to connect via\n* arpit.go4@gmail.com (Arpit Goyal)\n\nOr, open an issue at github.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farpitgo4%2Fexpress-mongodb-scaffold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farpitgo4%2Fexpress-mongodb-scaffold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farpitgo4%2Fexpress-mongodb-scaffold/lists"}