{"id":18651155,"url":"https://github.com/hrkings/express-typescript-full-template","last_synced_at":"2026-04-14T05:31:19.981Z","repository":{"id":111717329,"uuid":"423021192","full_name":"HRKings/express-typescript-full-template","owner":"HRKings","description":"A full feature Express API template, including database, Babel toolchain and full testing support","archived":false,"fork":false,"pushed_at":"2022-01-15T06:42:35.000Z","size":143,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-05T21:01:04.067Z","etag":null,"topics":["api","babel","database","dx","express","express-js","hot-reload","integration-testing","javascript","mocha","postgres","rest-api","typescript","unit-testing"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/HRKings.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-10-31T00:42:59.000Z","updated_at":"2023-01-05T16:48:59.000Z","dependencies_parsed_at":"2023-07-08T01:45:41.521Z","dependency_job_id":null,"html_url":"https://github.com/HRKings/express-typescript-full-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/HRKings/express-typescript-full-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HRKings%2Fexpress-typescript-full-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HRKings%2Fexpress-typescript-full-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HRKings%2Fexpress-typescript-full-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HRKings%2Fexpress-typescript-full-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HRKings","download_url":"https://codeload.github.com/HRKings/express-typescript-full-template/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HRKings%2Fexpress-typescript-full-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31784251,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: 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","babel","database","dx","express","express-js","hot-reload","integration-testing","javascript","mocha","postgres","rest-api","typescript","unit-testing"],"created_at":"2024-11-07T06:48:37.256Z","updated_at":"2026-04-14T05:31:19.965Z","avatar_url":"https://github.com/HRKings.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Express Typescript Full Template\n\nThis repository contains a truly feature packed Express server template, including a basic architecture, tools for database access and developer tools to make the DX very friendly.\n\nIf you are looking for a more simple template, you can take a look on the other [express-typescript-template](https://github.com/HRKings/express-typescript-template)\n\n# What's used\n\n* **NodeJS** [version 16.13+]\n* **TypeScript** [version 4.4.4+]\n* **pnpm** (a very fast and disk efficient package manager) [version 6.18.0+]\n* **Babel** (an alternative JS toolchain with support for TS) [version 7.16]\n\n# What's included\n\nAPI Server utilities:\n\n* [morgan](https://www.npmjs.com/package/morgan)\n  * HTTP request logger middleware\n* [helmet](https://www.npmjs.com/package/helmet)\n  * Helps you secure your Express apps by setting various HTTP headers\n* [dotenv](https://www.npmjs.com/package/dotenv)\n  * Loads environment variables from a `.env` file into `process.env`\n* [knex](https://www.npmjs.com/package/knex)\n  * A powerful SQL query builder\n  * The default included driver is for [PostgresSQL](https://www.npmjs.com/package/pg)\n\nDevelopment utilities:\n\n* [ts-node-dev](https://www.npmjs.com/package/ts-node-dev)\n  * TypeScript Hot Reloading support during the development\n* [ts-node](https://www.npmjs.com/package/ts-node)\n  * Run TypeScript files directly\n* [eslint](https://www.npmjs.com/package/eslint)\n  * A powerful linting tool\n* [mocha](https://www.npmjs.com/package/mocha)\n  * ☕️ Simple and flexible testing framework\n* [chai](https://www.npmjs.com/package/chai)\n  * More assertions for Mocha\n  * [chai-things](https://www.npmjs.com/package/chai-things) is also included, for easy testing of array elements\n* [supertest](https://www.npmjs.com/package/supertest)\n  * HTTP assertions for API testing\n\n## Setup\n\nTo install all the dependencies, just run:\n\n```bash\npnpm i\n```\n\n## Development\n\nTo start the server in development mode (with auto reloading when changes are detected), use the following command:\n\n```\npnpm run dev\n```\n\n## Lint\n\nTo auto fix all linting problems using ESLint, run:\n\n```\npnpm run lint\n```\n\n## Test\n\nThe template already includes tests for the provided endpoints and middleware, to run the tests you can run:\n\n```\npnpm test\n```\n\n## Compile and run\n\nIf you just want to compile your code and run (in a production environment for example), just use:\n\n```\npnpm run build\npnpm start\n```\n\n## Migrations and Seeds\n\nA Knex alias point to the knexfile on the `database` folder is provided via `pnpm run knex`. How to use:\n\n```bash\n# You can run any Knex command with this alias, just pass a command after the 'knex'\npnpm run knex migrate:latest\npnpm run knex migrate:rollback\n\n# Adds a new migration to the database/migrations folder\npnpm run knex:migration:add 'ExampleMigration'\n\n# Adds a new seed to the database/seeds folder\npnpm run knex:seed:add 'ExampleSeed'\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrkings%2Fexpress-typescript-full-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhrkings%2Fexpress-typescript-full-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhrkings%2Fexpress-typescript-full-template/lists"}