- Instale dependências:
bundle install
yarn install- Crie o banco e rode migrate
bin/rails db:create db:migrate- Rode as fixture para ter dois usuarios (opcional)
bundle exec rails db:fixtures:load| Senha | |
|---|---|
| um@example.com | password |
| dois@example.com | password |
- Inicie o Projeto
bin/dev- Backend: Ruby on Rails 8.0
- Frontend: Tailwind CSS, StimulusJS
- Banco de Dados: PostgreSQL
- Background Jobs: Sidekiq
- Testes: Capybara, RSpec
- Containerização: Docker
- Deploy / Gerenciamento de servidores: Kamal
- Acesso ao painel protegido por e-mail e senha.
- Upload de arquivo
clientes.csvcom campos:Nome, Endereço, Cidade, Estado, CEP, Telefone, CPF. - Normalização de dados:
- Padronização de nomes.
- Separação correta do endereço.
- Formatação de telefones:
(XX) XXXX-XXXXou(XX) XXXXX-XXXX. - Formatação de CPF:
XXX.XXX.XXX-XX. - Evita duplicidade de CPF na base.
- Exemplo de registro normalizado:
| Nome | Endereço | Cidade | Estado | CEP | Telefone | CPF |
|---|---|---|---|---|---|---|
| Fulano de Tal | Rua das Coves 35 | São Paulo | SP | 36026-500 | (11) 3216-2035 | 071.020.298-24 |
- Formulário com campos obrigatórios: Nome, Endereço, Cidade, Estado, CEP, Telefone e CPF.
- Evita duplicidade de CPF.
- Listagem de clientes com:
- Busca por CPF, Nome ou Telefone.
- Paginação.
- Ordenação por Nome, Estado ou Data de Cadastro.
- Cadastro de compromissos com:
- Nome do compromisso.
- Data de início e fim.
- Regras:
- Não permite conflitos de horário.
- Mensagens claras em caso de erro.
- Listagem de compromissos em tabela.
- Acessível na raiz do domínio, sem autenticação.
- Exibe em tempo real:
- Quantidade total de clientes.
- Quantidade de clientes com telefone duplicados.
- Quantidade de clientes por estado.
- Atualização dinâmica via WebSocket ou AJAX.