Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/alexgalhardo/notes-api-clean-architecture.alexgalhardo.com

A REST Notes API using Clean Architecture with Typescript, Express, Mongodb and Unit & Integration tests.
https://github.com/alexgalhardo/notes-api-clean-architecture.alexgalhardo.com

api-rest clean-architecture docker express integration-testing mongodb tests typescript unit-testing

Last synced: 5 days ago
JSON representation

A REST Notes API using Clean Architecture with Typescript, Express, Mongodb and Unit & Integration tests.

Awesome Lists containing this project

README

        


notes-api-clean-architecture.alexgalhardo.com


## Introduction

- A REST Notes API using Clean Architecture with Typescript, Express, Mongodb and Unit & Integration tests.
- This is a updated version of the original:
- Source code reference:
- From the book/course:
- This code is a great reference to learn tests and clean architecture principles

## Development Setup Local

1. Clone repository
```bash
git clone https://github.com/AlexGalhardo/notes-api-clean-architecture.alexgalhardo.com
```

2. Enter repository
```bash
cd notes-api-clean-architecture.alexgalhardo.com/
```

3. Run setup.sh
```bash
chmod +x setup.sh && ./setup.sh
```

## Build for deploy
a. Create build
```bash
bun run build
```

b. To test build production locally run:

```bash
bun run start
```

## Tests
Unit Tests:
```bash
bun run test:unit
```

Integration Tests:
```bash
bun run test:integration
```

Coverage Tests:
```bash
bun run test:ci
```

![notes-api-clean-architecture](https://github.com/AlexGalhardo/notes-api-clean-architecture.alexgalhardo.com/assets/19540357/b6b743bc-0d92-4137-895b-b32836c79730)

## API
- You can use the HTTP Requests references inside folder [./rest-client/](./rest-client/)