{"id":20995116,"url":"https://github.com/blackboxvision/typescript-hapi-starter","last_synced_at":"2025-07-19T08:08:44.136Z","repository":{"id":22315325,"uuid":"95841959","full_name":"BlackBoxVision/typescript-hapi-starter","owner":"BlackBoxVision","description":"🚀 Starter for building APIs with Hapi + Typescript! ","archived":false,"fork":false,"pushed_at":"2024-09-06T09:05:37.000Z","size":1002,"stargazers_count":128,"open_issues_count":51,"forks_count":28,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-03-30T15:46:55.872Z","etag":null,"topics":["api","hapi-typescript","hapijs","library","swagger-ui","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/BlackBoxVision.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":"2017-06-30T02:57:41.000Z","updated_at":"2024-09-05T01:44:28.000Z","dependencies_parsed_at":"2024-05-29T07:31:57.191Z","dependency_job_id":"0019379c-e4dc-4a81-b389-e03dd950380f","html_url":"https://github.com/BlackBoxVision/typescript-hapi-starter","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlackBoxVision%2Ftypescript-hapi-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlackBoxVision%2Ftypescript-hapi-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlackBoxVision%2Ftypescript-hapi-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlackBoxVision%2Ftypescript-hapi-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BlackBoxVision","download_url":"https://codeload.github.com/BlackBoxVision/typescript-hapi-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251689011,"owners_count":21627817,"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","hapi-typescript","hapijs","library","swagger-ui","typescript"],"created_at":"2024-11-19T07:21:47.033Z","updated_at":"2025-04-30T11:22:41.847Z","avatar_url":"https://github.com/BlackBoxVision.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TypeScript + Hapi = \u003c3\n\nThis is a super simple starter kit to develop APIs with HapiJS + TypeScript\n\n## What currently supports?\n\nThis starter kit comes with the following features:\n\n- **Swagger-UI**\n- **Status Monitor**\n- **.env files support**\n- **nodemon for hot-reload**\n- **Pretty Console Logger with Winston**\n- **Work with Yarn or NPM 6 as dependency resolvers**\n- **Code formatting with Prettier as hook for Pre-commit**\n- **Dockerfile + docker-compose for development**\n- **Basic Test Suite with Tape**\n- **Coverage Report**\n- **Supports Heroku Deployment**\n- **Supports Prettier for code formating**\n- **Supports commitlint via husky to have standarized commit messages**\n\n## Requirements\n\n- NodeJS \u003e 12.x\n- NPM \u003e 6.x\n\n## How to use it?\n\n1. Download this project as a zip.\n2. Run `npm install`\n3. Run `npm run nodemon:start`\n4. Visit [http://localhost:8080/documentation](http://localhost:8080/documentation) to view swagger docs.\n5. Visit [http://localhost:8080/api/users](http://localhost:8080/api/users) to test the REST API.\n6. Visit [http://localhost:8080/status](http://localhost:8080/status) to view the status monitor.\n\nUPDATED: Now there's a CLI that currently support creating a new project from this repo: [create-typescript-api](https://github.com/BlackBoxVision/create-typescript-api)\n\n## TODO\n\nThis is not finished, there's still a lot of things to improve. Here you got some:\n\n- [x] Simple test suite - added by the help of [@jcloutz](https://github.com/jcloutz)\n- [x] Add support for test coverage - added by the help of [@jcloutz](https://github.com/jcloutz)\n- [ ] Add GraphQL support\n- [ ] Add support for Auth with JWT or Sessions\n- [ ] Add support for TypeORM/Mongoose\n- [ ] Add support for Jenkins pipeline\n\n## Documentation\n\n### What are the package.json scripts for?\n\n- `build-ts`: Compiles typescript based on config set in tsconfig.json.\n- `start`: Starts node with the compiled typescript. Used by eg. Heroku.\n- `docker:logs`: View Docker logs\n- `docker:ps`: List Docker containers\n- `docker:start`: Start Docker container based on docker-compose.yml file.\n- `docker:stop`: Stop Docker container\n- `nodemon:build`: Starts the Nodemon using ts-node. No need to compile beforehand.\n- `nodemon:start`: Same as nodemon:build\n- `format:lint`: Runs tslint on the typescipt files, based on tslint.js settings.\n- `format:prettier`: Runs prettier on all ts-files.\n- `postinstall`: Runs build-ts script. This is used by eg. Heroku automatically.\n- `test`: Runs tests using nyc, and creates coverage report.\n\n## Issues\n\nIf you found a bug, or you have an answer, or whatever. Please, raise an [issue](https://github.com/BlackBoxVision/typescript-hapi-starter/issues/new).\n\n## Contributing\n\nOf course, if you see something that you want to upgrade from this library, or a bug that needs to be solved, PRs are welcome!\n\n## License\n\nDistributed under the **MIT license**. See [LICENSE](https://github.com/BlackBoxVision/typescript-hapi-starter/blob/master/LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackboxvision%2Ftypescript-hapi-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblackboxvision%2Ftypescript-hapi-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackboxvision%2Ftypescript-hapi-starter/lists"}