Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ever-co/ever-api-starter-kit

Ever® API Starter Kit™ - NestJs based Starter Kit / Boilerplate for Multi-Tenant / SaaS APIs
https://github.com/ever-co/ever-api-starter-kit

backend-api boilerplate cqrs graphql nestjs starter starter-kit starter-template

Last synced: about 20 hours ago
JSON representation

Ever® API Starter Kit™ - NestJs based Starter Kit / Boilerplate for Multi-Tenant / SaaS APIs

Awesome Lists containing this project

README

        

# Ever API Starter Kit / Boilerplate

## 🌟 What is it

[Ever® API Starter Kit™](https://ever.dev) - Open-Source Starter Kit / Boilerplate for Multi-Tenant / SaaS APIs

## 🧱 Technology Stack

- [NestJs](https://nestjs.com) / [CQRS](https://docs.nestjs.com/recipes/cqrs).
- GraphQL & REST APIs.
- [TypeORM](https://typeorm.io).
- [PostgreSQL](https://www.postgresql.org) / [SQLite](https://www.sqlite.org) / [SQL.js](https://github.com/sql-js/sql.js).
- Docker / Kubernetes.
- [Supertokens Auth](https://github.com/supertokens/supertokens-core).

## 🚀 Quick Start

### Start locally

0. Clone repo

1. Install packages

```
$ yarn install
```

2. Create local PostgreSQL DB called `ever_api_starter_kit`

3. Run following command:

```
$ yarn start
```

Then browse http://localhost:3005

Note: GraphQL Playground available at

#### Use serverless-offline

Note: at this moment may not work, WIP.

```bash
$ yarn build
$ yarn sls:start
```

Then browse http://localhost:3005/local

Note: GraphQL Playground available at http://localhost:3005/local/graphql

## How to Deploy

NOTE: WIP, not working well yet with serverless!

```bash
$ yarn prestart:prod && sls deploy
```

## Development

### Use Swagger for development

```
$ yarn ts-node src/swagger.ts
```

Then browse http://localhost:3006/api

### Client GraphQL SDK Generation

To generate GraphQL Client SDK (using [graphql-code-generator](https://github.com/dotansimha/graphql-code-generator)), please run following command:

```
$ yarn generate
```

Generated SDK available at `./generated/sdk` folder and generated Schemas available at `./generated/schemas` folder.

### 🔗 Credits

- See [CREDITS.md](CREDITS.md) file for lists of libraries and software used and/or included in the Starter Kit, information about licenses, and other relevant details.

## 💌 Contact Us

- [Ever.co Website Contact Us page](https://ever.co/contacts)
- For business inquiries:
- Please report security vulnerabilities to

## 🔐 Security

Ever® API Starter Kit™ follows good security practices, but 100% security cannot be guaranteed in any software!
Ever® API Starter Kit™ is provided AS IS without any warranty. Use at your own risk!
See more details in the [LICENSE](LICENSE).

In a production setup, all client-side to server-side (backend, APIs) communications should be encrypted using HTTPS/WSS/SSL (REST APIs, GraphQL endpoint, Socket.io WebSockets, etc.).

If you discover any issue regarding security, please disclose the information responsibly by sending an email to and not by creating a GitHub issue.

## 🛡️ License

[MIT](LICENSE)

## ™️ Trademarks

**Ever**® is a registered trademark of [Ever Co. LTD](https://ever.co).
**Ever® API Starter Kit™**, **Ever® Web App Starter Kit™**, **Ever® Demand™**, **Ever® Teams™**, **Ever® Gauzy™**, **Ever® Gauzy AI™**, **Ever® OpenSaaS™** are all trademarks of [Ever Co. LTD](https://ever.co).

The trademarks may only be used with the written permission of Ever Co. LTD. and may not be used to promote or otherwise market competitive products or services.

All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.

## ©️ Copyright

#### Copyright © 2020-present, Ever Co. LTD. All rights reserved