Este projeto é um sistema de gerenciamento de boletos bancários desenvolvido com Ruby on Rails utilizando a API de Testes Sandbox do Kobana.
Uma versão de demonstração deste projeto está hospedada gratuitamente em https://gestao-boletos-kobana.onrender.com/.
Observação: Como a hospedagem é gratuita, a instância pode estar inativa e o primeiro acesso pode demorar um pouco para carregar.
- Visualização de Boletos: Listagem de todos os boletos bancários cadastrados com opções de paginação.
- Criação de Boletos: Interface para criação de novos boletos bancários.
- Edição de Boletos: Opção para editar boletos bancários existentes.
- Cancelamento de Boletos: Funcionalidade para cancelar boletos bancários.
- Pagamento de Boletos: Funcionalidade de marcação de boletos como pagos diretamente pelo sistema.
- Ruby 3.2.0
- Rails 7.1.3
- PostgreSQL
- Nodejs
Para configurar e rodar este projeto localmente, siga os passos abaixo:
- Clone o repositório para sua máquina local:
git clone https://github.com/thomasjteixeira/gestao_boletos_kobana
- Navegue até o diretório do projeto:
cd gestao_boletos_kobana
- Instale as dependências do projeto:
bundle install
yarn install
- Crie e configure o banco de dados:
rails db:create db:migrate
-
Adicione o arquivo o .env na raiz do projeto com base no .sample.env
-
Faça o build do tailwind
rails tailwindcss:build
- Inicie o servidor Rails:
rails server
Acesse http://localhost:3000 em seu navegador para visualizar o projeto.
Este projeto utiliza RSpec para testes. Para executar todos os testes:
bundle exec rspec
- boletosimples: Integração com a API Boleto Simples para gerenciamento de boletos bancários.
- rspec-rails: Framework de testes para Rails.
- stimulus-rails, turbo-rails: Suporte para Hotwire (Stimulus + Turbo) no Ruby on Rails, permitindo uma interação mais dinâmica na aplicação web.
- factory_bot_rails: Facilita a criação de instâncias de objetos para testes.
- cpf_faker, faker: Geração de dados para testes.
- tailwindcss-rails e flowbite: Frameworks CSS para estilização rápida e responsiva.