Iniciador de mesa Rails
Padrão inicial do Rails que você pode usar para construir e prototipar rapidamente. Vá da ideia à implementação em horas. Clique aqui para ver o aplicativo de demonstração. Confira a página de configuração da demonstração para alternar as configurações do aplicativo.
Metas
Este starter é voltado para desenvolvedores Rails familiarizados com o framework, visando facilitar o desenvolvimento contínuo com os seguintes princípios:
- Sem DSL: evite complexidade desnecessária de linguagem específica de domínio (DSL).
- Simplicidade em vez de eficiência: Priorize a simplicidade na implementação em vez da otimização excessiva.
- Evite funcionalidades complexas de front-end: mantenha a funcionalidade de front-end simples e gerenciável.
Visão geral
DER Autenticação e autorização do usuário
- Autenticação via Devise
- Integração OmniAuth para estender a autenticação usando provedores terceirizados
- Autorização através do Pundit
Trabalhador e agendador em segundo plano
- Utiliza sidekiq e sidekiq-scheduler
Gerenciamento de funções
- Funções padrão disponíveis em todos os espaços
- Criação de função personalizada por espaço
- Suporta permissões detalhadas por função
Suporte a vários namespaces de usuário
- Utiliza o modelo
Space
para representar namespaces de usuários (por exemplo, equipes, organizações). - Um exemplo de caso de uso para ativar o modo multiespaço é um aplicativo saas
- Um exemplo de caso de uso para desativar o modo multiespaço é uma ferramenta organizacional interna
Layouts de UI pré-construídos
- Elementos de UI e layouts de alta qualidade do Tabler
Focado no desenvolvimento
- Anotar - Anote classes Rails com informações de esquema e rotas
- Brakeman - Um scanner de vulnerabilidade de segurança de análise estática
- Byebug - depurador simples
- Dotenv - Carregar variáveis de ambiente de
.env
Configurar
Para configurar o projeto, certifique-se de ter o PostgreSQL e o Redis instalados localmente. Use os seguintes comandos para instalá-los:
brew install postgresql@12 redis
Clonar o repositório
git clone https://github.com/tarunvelli/rails-tabler-starter.git
Instale as dependências necessárias usando asdf ou configure as dependências .tool-versions
em outro método preferido:
Configure e execute o servidor de desenvolvimento:
Para conceder privilégios administrativos a um usuário e acessar recursos administrativos, execute o seguinte no console Rails:
bundle exec rails c
> User.first.update(admin: true)
Configurações do aplicativo
Alterne as configurações do aplicativo em /setup/edit
AppSettings.interface_layout
- Layout do aplicativo
- valores ["VERTICAL", "VERTICAL-TRANSPARENTE", "HORIZONTAL", "SOBREPOSIÇÃO", "CONDENSADO"]
AppSettings.interface_mode
- Modo claro/escuro do aplicativo
- "SYSTEM" escolhe o modo nas preferências do sistema
- Valores ["LIGHT", "DARK", "SYSTEM"]
AppSettings.interface_theme
- Tema de cores do aplicativo
- Valores ["DEFAULT", "COOL"]
AppSettings.login_layout
um dos
- Layout das telas de login
- Valores ["DEFAULT", "ILLUSTRATION", "COVER"]
AppSettings.multi_tenant_mode
- Quando verdadeiro permite que os usuários se inscrevam e criem espaços
- Quando falso permite que apenas o administrador convide usuários e crie espaços
- Valores [verdadeiro, falso]
AppSettings.show_landing_page
- Quando o verdadeiro caminho raiz renderiza a página de destino
- Quando o caminho raiz falso redireciona para a página de login
- Valores [verdadeiro, falso]
Implantação
Escolha sua plataforma de implantação preferida:
- Implante no Fly.io
- Implantar no Heroku
Contribuição
Contribuições para melhorar este starter são altamente encorajadas e bem-vindas! Sinta-se à vontade para enviar solicitações pull e melhorar o projeto de forma colaborativa.