A Laví API é o backend responsável por gerenciar os workflows e as regras de negócio do aplicativo "Laví". Construída com foco em performance e escalabilidade, utilizando um stack moderno com Elysia, Bun e TypeScript.
Antes de começar, você vai precisar ter as seguintes ferramentas instaladas:
- Bun (v1.2 ou superior)
- Docker e Docker Compose
-
Clone o repositório:
git clone https://github.com/laundry-lavi/lavi-api.git cd lavi-api
-
Inicie o banco de dados com Docker: Este comando irá iniciar um container com o PostgreSQL em background.
docker-compose up database -d
-
Execute as migrações do banco de dados
bunx drizzle-kit migrate
-
Inicie a API usando docker:
docker-compose up api -d
A API estará disponível em http://localhost:{PORT}, onde {PORT} é a porta que você definiu no seu arquivo .env.
Estas são as variáveis necessárias para o funcionamento da aplicação. Elas devem ser definidas em um arquivo .env na raiz do projeto.
# Configurações da Aplicação
PORT=3333
# Banco de Dados (API e Docker)
DATABASE_URL="postgresql://user:password@localhost:5432/dbname?schema=public"
POSTGRES_USER=user
POSTGRES_PASSWORD=password
POSTGRES_DB=dbname
# Chaves de Segurança
ENCRYPT_CORE_KEY=sua-chave-secreta-para-criptografia
BLIND_KEY=sua-chave-secreta-para-hmac
JWT_KEY=sua-chave-secreta-para-jwt
# Configurações da AWS S3
BUCKET_NAME=nome-do-seu-bucket
AWS_ACCESS_KEY_ID=seu-access-key-id
AWS_SECRET_ACCESS_KEY=seu-secret-access-key
AWS_REGION=us-east-1Contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Qualquer contribuição que você fizer será muito apreciada.
- Faça um Fork do projeto.
- Crie uma nova Branch (
git checkout -b feature/sua-feature). - Faça o Commit das suas alterações (
git commit -m '...'). - Faça o Push da Branch (
git push origin feature/sua-feature). - Abra um Pull Request.
EQUIPE: André de Oliveira, Arthur Rolemberg, Beatriz Bezerra, Eduardo Rossi e Gabriel Durbano.
DESENVOLVEDORES:
- André Dias @https-dre
- Arthur Rolemberg @Massivo5040
ORIENTADORA: Nathane De Castro.
André Dias - diaso.andre@outlook.com