Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/smithg09/nodejs-typescript-graphql-starter

Nodejs-Typescript / Express / GraphQL / MongoDB API Boilerplate.
https://github.com/smithg09/nodejs-typescript-graphql-starter

api expressjs graphql jest mongodb mongoose nodejs rest typescript

Last synced: 25 days ago
JSON representation

Nodejs-Typescript / Express / GraphQL / MongoDB API Boilerplate.

Awesome Lists containing this project

README

        





Logo

Nodejs-Typescript/GraphQL/Express/MongoDB Boilerplate


A 👨🏻‍💻 Node-Typescript/Express/MongoDB Boilerplate with User Authentication and Authorization with JWT support.This is an updated version of Sam Quinn's bulletproof-nodejs implementation Link to Repo


This project is hosted on heroku at typescript-graphql-apiv1.herokuapp.com 🌐 Try it out




📝 API Documentation


🐞 Bug Report   
📢 Feature Request






LICENSE


contributions welcome


Open Source

## Tech Stack

* [Node.js](https://nodejs.org/en/), [TypeScript](https://www.typescriptlang.org/) , [JWT](https://jwt.io/), [Prettier](https://prettier.io/)— core platforms.
* [GraphQL](https://graphql.org/), [express-graphql](https://github.com/graphql/express-graphql)- schema and Graphql API endpoint.
* [MongoDB](https://www.mongodb.com/) — data access and db automation.
* [Jest](https://jestjs.io/) - unit and snapshot testing.

## Development

We use `node` version `10.15.0`

```
nvm install 10.15.0
```

```
nvm use 10.15.0
```

The first time, you will need to run

```
npm install
```

Then just start the server with

```
npm run start
```
It uses nodemon for livereloading ✌️

# Roadmap
- [x] Typescript class based implementation.
- [x] Add GraphQL Support.
- [ ] CRUD Operations.
- [ ] Unit tests.

## Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.

1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## License

Distributed under the MIT License. See `LICENSE` for more information.