{"id":21037621,"url":"https://github.com/mapledevjs/nodejs-expressjs-ts-starter-kit","last_synced_at":"2026-02-15T21:03:08.374Z","repository":{"id":246130455,"uuid":"819495793","full_name":"mapleDevJS/nodejs-expressjs-ts-starter-kit","owner":"mapleDevJS","description":"A starter kit for building REST APIs using Node.js, Express.js, and TypeScript. This template provides a robust foundation with modern development tools and practices, including TypeScript, ESLint, Prettier, and more.","archived":false,"fork":false,"pushed_at":"2025-03-13T15:14:04.000Z","size":774,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-28T16:06:20.813Z","etag":null,"topics":[],"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/mapleDevJS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-06-24T16:06:47.000Z","updated_at":"2025-03-13T15:14:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"92a2b11b-f817-4bdc-8b2c-2d908f7d42d7","html_url":"https://github.com/mapleDevJS/nodejs-expressjs-ts-starter-kit","commit_stats":null,"previous_names":["mapledevjs/nodejs-expressjs-ts-starter-kit"],"tags_count":3,"template":true,"template_full_name":null,"purl":"pkg:github/mapleDevJS/nodejs-expressjs-ts-starter-kit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fnodejs-expressjs-ts-starter-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fnodejs-expressjs-ts-starter-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fnodejs-expressjs-ts-starter-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fnodejs-expressjs-ts-starter-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mapleDevJS","download_url":"https://codeload.github.com/mapleDevJS/nodejs-expressjs-ts-starter-kit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fnodejs-expressjs-ts-starter-kit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29489343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T19:29:10.908Z","status":"ssl_error","status_checked_at":"2026-02-15T19:29:10.419Z","response_time":118,"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":[],"created_at":"2024-11-19T13:27:13.261Z","updated_at":"2026-02-15T21:03:08.342Z","avatar_url":"https://github.com/mapleDevJS.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Node.js Express TypeScript Starter Kit\n\nA starter kit for building REST APIs using Node.js, Express.js, and TypeScript.\n\n## Table of Contents\n\n-   [Introduction](#introduction)\n-   [Prerequisites](#prerequisites)\n-   [Installation](#installation)\n-   [Usage](#usage)\n-   [Scripts](#scripts)\n-   [Project Structure](#project-structure)\n-   [Configuration](#configuration)\n-   [Environment Variables](#environment-variables)\n-   [Contributing](#contributing)\n-   [License](#license)\n\n## Introduction\n\nThis is a starter kit for building REST APIs using Node.js, Express.js, and TypeScript. It includes several essential tools and libraries to help you quickly set up and develop your API.\n\n## Prerequisites\n\n-   Node.js ^18.18.1\n-   npm ^9.8.1\n\n## Installation\n\n1. Clone the repository:\n\n    ```bash\n    git clone https://github.com/mapleDevJS/nodejs-expressjs-ts-starter-kit.git\n    ```\n\n2. Navigate to the project directory:\n\n    ```bash\n    cd nodejs-expressjs-ts-starter-kit\n    ```\n\n3. Install dependencies:\n\n    ```bash\n    npm install\n    ```\n\n## Usage\n\n### Starting the Development Server\n\nTo start the development server with hot-reloading:\n\n```bash\nnpm run start:dev\n```\n\n### Building the Project\n\nTo build the project:\n\n```bash\nnpm run build\n```\n\n### Cleaning the Build Directory\n\nTo clean the `dist` directory:\n\n```bash\nnpm run clean\n```\n\n### Running the Production Server\n\nAfter building the project, you can start the production server:\n\n```bash\nnpm run start\n```\n\n### Running the Mock Server\n\nTo start the mock server using `json-server`:\n\n```bash\nnpm run mock:server\n```\n\n## Scripts\n\n-   `start`: Builds the project and starts the production server.\n-   `start:dev`: Starts the development server with hot-reloading.\n-   `build`: Cleans the `dist` directory and compiles TypeScript to JavaScript.\n-   `clean`: Removes the `dist` directory.\n-   `compile`: Compiles TypeScript files using `tsc`.\n-   `lint`: Lints the `src` directory using ESLint.\n-   `lint:fix`: Automatically fixes linting issues in the `src` directory.\n-   `format`: Checks code formatting using Prettier.\n-   `format:fix`: Fixes code formatting issues using Prettier.\n-   `ts`: Runs `ts-node`.\n-   `cli`: Runs the CLI application.\n-   `mock:server`: Starts a mock server using `json-server`.\n\n## Project Structure\n\n```plaintext\nnodejs-expressjs-ts-starter-kit/\n├── dist/                     # Compiled JavaScript files\n├── src/                      # TypeScript source files\n│   ├── controllers/          # Controllers\n│   ├── models/               # Models\n│   ├── routes/               # Express routes\n│   ├── services/             # Services\n│   ├── utils/                # Utility functions\n│   └── main.ts               # Entry point of the application\n├── mocks/                    # Mock data for JSON server\n│   └── mock-server-data.json # Mock server data\n├── .eslintrc.js              # ESLint configuration\n├── .prettierrc               # Prettier configuration\n├── tsconfig.json             # TypeScript configuration\n├── package.json              # NPM configuration and scripts\n└── README.md                 # Project documentation\n```\n\n## Configuration\n\n-   **ESLint**: `.eslintrc.js`\n-   **Prettier**: `.prettierrc`\n-   **TypeScript**: `tsconfig.json`\n-   **NPM**: `package.json`\n\n## Environment Variables\n\nTo set up environment variables, create a `.env` file in the root of your project and add the required variables. For example:\n\n```plaintext\nDB_CONNECTION_STRING=your_database_connection_string\n```\n\n## Contributing\n\nContributions are welcome! Please open an issue or submit a pull request for any bugs, enhancements, or features.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapledevjs%2Fnodejs-expressjs-ts-starter-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmapledevjs%2Fnodejs-expressjs-ts-starter-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapledevjs%2Fnodejs-expressjs-ts-starter-kit/lists"}