Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/hknsh/project-knedita

An open source social media
https://github.com/hknsh/project-knedita

docker fastify nestjs postgresql prisma social-media swagger typescript

Last synced: 20 days ago
JSON representation

An open source social media

Awesome Lists containing this project

README

        





Project Knedita

A simple RESTful API made with **NestJS** and **Fastify**.

### 🚀 Preparing the environment

Make sure that you have Bun, Docker and Docker Compose installed on your computer.

This project also works with Node and Npm.

First, install the necessary packages with the following commands:

```bash
bun i
```

After that, you can update the `.env` and the `docker.env` files. The `.env` file is for development environment and the `docker.env` is for production.

You can find the templates for those files on `.env.example` and `docker.env.example`.

To run the necessary services you can execute the following command:

```bash
bun docker:db
```

This will start the following services:

- **PostgreSQL**
- **Redis**
- **MinIO**

Apply the migrations to the database with the following command:

```bash
bun migrate:dev
```

And now, you can start the server with the command:

```bash
bun dev:start
```

You can check the documentation accessing the endpoint `/` in your browser

To run in production you can use the following command:

```bash
bun docker
```

This will start all the previous services and the back-end image.

## 🗄️ Stack

This back-end uses the following stack:

- **NestJS**
- **Fastify**
- **Prisma**
- **MinIO**
- **PostgreSQL**
- **Redis**
- **Swagger**
- **Typescript**

## License

[MIT](https://choosealicense.com/licenses/mit/)