https://github.com/shejanmahamud/express-ts-starter
A powerful and easy-to-use CLI tool to kickstart your Express.js + TypeScript + Mongoose(Default) projects in seconds. Save time and focus on building amazing features without worrying about the boilerplate!
https://github.com/shejanmahamud/express-ts-starter
express-js mongodb mongoose nodejs starter-kit starter-template typescript
Last synced: about 1 month ago
JSON representation
A powerful and easy-to-use CLI tool to kickstart your Express.js + TypeScript + Mongoose(Default) projects in seconds. Save time and focus on building amazing features without worrying about the boilerplate!
- Host: GitHub
- URL: https://github.com/shejanmahamud/express-ts-starter
- Owner: ShejanMahamud
- Created: 2024-11-20T09:16:48.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-11-23T08:46:03.000Z (6 months ago)
- Last Synced: 2025-04-15T05:04:58.077Z (about 1 month ago)
- Topics: express-js, mongodb, mongoose, nodejs, starter-kit, starter-template, typescript
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/express-ts-starter-cli
- Size: 83 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Express TypeScript Starter CLI π
[](https://www.npmjs.com/package/express-ts-starter-cli)
[](https://github.com/shejanmahamud/express-ts-starter-cli/blob/main/LICENSE)
[](https://www.npmjs.com/package/express-ts-starter-cli)
A powerful and easy-to-use CLI tool to kickstart your **Express.js + TypeScript + Mongoose(Default)** projects in seconds. Save time and focus on building amazing features without worrying about the boilerplate!
---
## β¨ Features
- **TypeScript Support**: Get started with a fully typed Express.js project.
- **Mongoose Integration**: Built-in support for MongoDB with Mongoose models.
- **Customizable Templates**: Generate projects tailored to your needs.
- **Zero Hassle**: Pre-configured with best practices like `eslint` and `prettier`.
- **Scalable Structure**: Designed for small to large projects.
- **Interactive CLI**: Guides you through the setup with a beautiful and intuitive interface.
---
## π Installation
Install the CLI globally via npm:
```bash
npm install -g express-ts-starter-cli
```
or
```bash
npx express-ts-starter-cli```
---
## π οΈ Usage
Run the following command to create a new project:
```bash
express-ts-starter
```
The CLI will guide you through the setup with options like:
- Choosing a project name
- Setting up environment variables
---
## ποΈ Project Structure
The generated project will have the following structure:
```
my-express-project/
βββ src/
β βββ app/
β βββ app.ts
β βββ server.ts
β βββ middlewares/
| βββ controllers/
β βββ routes/
β βββ models/
β βββ helpers/
β βββ types/
β βββ utils/
βββ .prettierrc
βββ .eslint.config.mjs
βββ .env
βββ package.json
βββ tsconfig.json```
### Key Features
- **Controllers**: Keep your logic modular and organized.
- **Models**: Keep your mongoose models here.
- **Helpers**: Keep your helpers function here.
- **Routes**: Define application endpoints cleanly.
- **Middleware**: Add custom Express middlewares effortlessly.
- **Types**: Keep your typescript types here.
- **Utils**: Keep your utility functions here.
---
## π¦ Whatβs Included?
When you use the CLI, you'll get:
- **TypeScript Config**: Pre-configured `tsconfig.json` for seamless development.
- **Express Setup**: Pre-configured `expressjs` .
- **Environment Management**: `.env` file support for configuration.
- **Mongoose Models**: Boilerplate for defining schemas and connecting to MongoDB.
---
## π Why Choose This Starter?
- **Time-Saving**: Set up your project in seconds.
- **Best Practices**: Industry-standard configurations for scalability and maintainability.
- **Community-Driven**: Actively maintained and improved.
- **MongoDB Ready**: Jumpstart your database integration with Mongoose.
---
## π§ͺ Example
To test if everything is working, run the development server:
```bash
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) in your browser. Youβll see a welcoming API response!
---
## π€ Contributing
Contributions are welcome! Feel free to:
- Open issues for feature requests or bugs.
- Submit pull requests to improve the CLI.
---
## π License
This project is licensed under the [MIT License](./LICENSE).
---
## π Support
If you encounter any issues or have questions, feel free to open an issue on [GitHub](https://github.com/ShejanMahamud/express-ts-starter-cli/issues).
---
> Made with β€οΈ by [Shejan Mahamud](https://github.com/ShejanMahamud).