desenvolvendo-me / devify

0 stars 0 forks source link

Projeto Devify

Ruby Rails

Objetivo

Criar uma arquitetura de referência para facilitar a criação de microSaaS junto com os alunos, proporcionando uma experiência tão fácil quanto Bubble.io, mas mais próxima dos projetos JumpstartRails, AvoHQ e ShipFast. O foco é facilitar a vida do programador na criação de novas ideias, já que nossos alunos querem ser programadores e não empresários.

API

Para documentar as APIs, usamos o Swagger. Confira este vídeo para aprender a usar o Swagger.

Qualidade

Análise

Teste e Cobertura

bundle exec rspec

Lint

bundle exec rubocop

Score

bundle exec rubycritic

Configuração

Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, um gerenciador de versões como o ASDF e além disto é bom ter um editor para trabalhar com o código como VSCode

Gere o Banco de Dados Local e também rode as migracões da aplicação
$ rails db:create
Este comando irá criar o banco de dados local conforme configurado no arquivo config/database.yml do seu projeto. Certifique-se de que suas configurações no arquivo [database.yml]() estejam corretas para o ambiente de desenvolvimento.
Gere as migracões da aplicação
$ rails db:migrate

Tailwind

 npm install esbuild
➡️ Iniciando a Aplicação com o framework Tailwind
$ foreman start -f Procfile.dev

ou

$ bin/dev
Caso o comando acima, não funcione, seguir o procedimento abaixo:
# --- execuções do arquivo Dockerfile ---

 rm -rf node_modules && npm install
 npm install esbuild
 bundle exec rake assets:precompile
 bundle exec rake assets:clean
 bundle exec rails tailwindcss:build 
⚠️ Persistindo algum erro, seguir os procedimentos abaixo:
🔹 Execute este comando para atualizar o Bundler
$  gem install bundler:2.4.20
🔹 Execute este comando:
$  bundle exec rails tailwindcss:build
➡️ Execute o comando para subir o servidor da aplicação:
$  bundle exec rails s    

RailsUI

Gemfile

bundle install

Node.js

npm install

Instalar RailsUI

rails railsui:install

Migrar Banco de Dados

rails db:drop && rails db:create && rails db:migrate && rails db:seed RAILS_ENV=development

Redis

redis-server

Executando o Servidor

bin/dev

Docker

Criando

docker-compose up --build

Executando

docker compose up
docker-compose run web rails db:create
docker-compose run web rails db:migrate
docker-compose run web rspec

Stripe

Para usar o Stripe, veja a documentação oficial.

Cenários

  1. Conta Personalizada

    • Siga os passos em stripe.com para criar uma conta personalizada.
    • Altere a secret_key para a sua chave personalizada:
      stripe:
      public_key: your_public_key
      secret_key: your_secret_key
  2. Conta de Demonstração

    • Solicite a secret_key para usar a conta de demonstração. Entre em contato com os usuários do Discord:
      • Edson Shideki Kokado (edsonshidekikokado)
      • Pablo Maciel (pjmaciel)

Instalando

Adicione a gem do Stripe ao seu Gemfile:

gem 'stripe'

Em seguida, execute o bundle:

bundle install

Configurando

  1. Configure suas chaves de API do Stripe no arquivo credentials.yml.enc. Você pode fazer isso com o editor de credenciais do Rails:

    EDITOR="nano" bin/rails credentials:edit

    Adicione as suas chaves do Stripe:

    stripe:
    public_key: your_public_key
    secret_key: your_secret_key
  2. Inicialize o Stripe no seu aplicativo. Crie um inicializador config/initializers/stripe.rb:

    Stripe.api_key = Rails.application.credentials.dig(:stripe, :secret_key)
  3. Veja o repositorio do stripe para ruby https://github.com/stripe/stripe-ruby para usar as informações de configuraçoes atualizadas.