Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/matttheust/fsw-barber

Projeto concluído durante a Full Stack Week para adquirir mais conehcimentos em Next JS e trabalhar com várias etapas de um projeto, desde o desenvolvimento até implantação em produção. Projeto base para melhorias futuras.
https://github.com/matttheust/fsw-barber

deployment docker husky mobile nextjs prisma-orm react vercel

Last synced: 11 days ago
JSON representation

Projeto concluído durante a Full Stack Week para adquirir mais conehcimentos em Next JS e trabalhar com várias etapas de um projeto, desde o desenvolvimento até implantação em produção. Projeto base para melhorias futuras.

Awesome Lists containing this project

README

        

# Projeto FSW Barber

Um sistema de gerenciamento de barbearias com funcionalidades para listar, criar e gerenciar barbearias e seus serviços. Este projeto utiliza o Prisma ORM para interação com o banco de dados PostgreSQL e fornece uma API para integração com o frontend.

## Índice
- [Sobre](#sobre)
- [Funcionalidades](#funcionalidades)
- [Tecnologias Utilizadas](#tecnologias-utilizadas)
- [Configuração do Ambiente](#configuração-do-ambiente)
- [Execução do Projeto](#execução-do-projeto)
- [Estrutura do Projeto](#estrutura-do-projeto)
- [Design](#design)

## Sobre

O FSW Barber é um sistema para gerenciar barbearias, permitindo que os usuários visualizem informações sobre diferentes locais, suas ofertas de serviços e muito mais. O sistema é baseado em Node.js e Prisma, com uma base de dados PostgreSQL.

## Funcionalidades

- **Gerenciamento de Barbearias**: Adicionar, listar e visualizar detalhes das barbearias.
- **Serviços de Barbearia**: Listar e visualizar serviços oferecidos por cada barbearia.
- **Banco de Dados**: Utiliza PostgreSQL como banco de dados principal.
- **Seeding**: Script para popular o banco de dados com dados fictícios.

## Tecnologias Utilizadas

- **Node.js**: Ambiente de execução JavaScript no servidor.
- **Prisma**: ORM para Node.js que facilita a interação com o banco de dados.
- **PostgreSQL**: Sistema de gerenciamento de banco de dados relacional.
- **TypeScript**: Superset de JavaScript que adiciona tipagem estática.

## Configuração do Ambiente

Para rodar o projeto localmente, siga estes passos:

1. **Clone o Repositório**
git clone https://github.com/seu-usuario/fsw-barber.git
cd fsw-barber

2. **Instale as Dependências**
npm install

3. **Configure o Banco de Dados**

Crie um arquivo `.env` na raiz do projeto com o seguinte conteúdo, substituindo a URL pelo endereço do seu banco de dados PostgreSQL:
DATABASE_URL="postgresql://usuario:senha@localhost:5432/nome_do_banco"

4. **Execute as Migrations**

Crie as tabelas no banco de dados com o Prisma:
npx prisma migrate dev --name init

5. **Seed o Banco de Dados**

Popule o banco de dados com dados fictícios:
npx ts-node prisma/seed.ts

6. **Inicie o Servidor**
npm start

## Estrutura do Projeto

- `prisma/`: Contém o esquema Prisma e o script de seed.
- `src/`: Código-fonte do projeto.
- `models/`: Modelos de dados.
- `services/`: Lógica de serviços.
- `routes/`: Definições das rotas da API.
- `utils/`: Funções utilitárias.
- `prisma/schema.prisma`: Define o esquema do banco de dados.
- `prisma/seed.ts`: Script para popular o banco de dados com dados fictícios.
- `package.json`: Gerenciamento de dependências e scripts do projeto.
- `.env`: Configurações do ambiente.

## Design

O design do projeto pode ser visualizado no Figma através do seguinte link:
[FSW Barber Design no Figma](https://www.figma.com/design/ByDjVh7THsTnsSVRKNN8yy/FSW-5.0-%5BLive%5D?node-id=1-5&t=bz1BlGDITe4Nuqp3-0)