Démarreur de table Rails
Modèle de démarrage Rails que vous pouvez utiliser pour construire et prototyper rapidement. Passez de l’idée à la mise en œuvre en quelques heures. Cliquez ici pour voir l'application de démonstration. Consultez la page de configuration de la démo pour basculer les paramètres de l'application.
Objectifs
Ce starter s'adresse aux développeurs Rails familiers avec le framework, visant à faciliter un développement transparent avec les principes suivants :
- Pas de DSL : évitez la complexité inutile du langage spécifique au domaine (DSL).
- Simplicité plutôt que efficacité : donnez la priorité à la simplicité de mise en œuvre plutôt qu'à une optimisation excessive.
- Évitez les fonctionnalités frontales complexes : gardez les fonctionnalités frontales simples et gérables.
Aperçu
DER Authentification et autorisation des utilisateurs
- Authentification via Devise
- Intégration OmniAuth pour étendre l'authentification à l'aide de fournisseurs tiers
- Autorisation via Pundit
Travailleur en arrière-plan et planificateur
- Utilise sidekiq et sidekiq-scheduler
Gestion des rôles
- Rôles standards disponibles dans tous les espaces
- Création de rôles personnalisés par espace
- Prend en charge les autorisations précises par rôle
Prise en charge de plusieurs espaces de noms d'utilisateurs
- Utilise le modèle
Space
pour représenter les espaces de noms des utilisateurs (par exemple, les équipes, les organisations). - Un exemple de cas d'utilisation pour activer le mode multi-espace est une application Saas
- Un exemple de cas d'utilisation pour désactiver le mode multi-espace est un outil d'organisation interne
Dispositions d'interface utilisateur prédéfinies
- Éléments d'interface utilisateur et mises en page de haute qualité de Tabler
Axé sur le développement
- Annoter - Annoter les classes Rails avec des informations sur le schéma et les itinéraires
- Brakeman - Un scanner de vulnérabilités de sécurité par analyse statique
- Byebug - Débogueur simple
- Dotenv - Charger les variables d'environnement à partir de
.env
Installation
Pour configurer le projet, assurez-vous que PostgreSQL et Redis sont installés localement. Utilisez les commandes suivantes pour les installer :
brew install postgresql@12 redis
Cloner le dépôt
git clone https://github.com/tarunvelli/rails-tabler-starter.git
Installez les dépendances requises à l'aide d'asdf ou configurez les dépendances .tool-versions
dans une autre méthode préférée :
Configurez et exécutez le serveur de développement :
Pour accorder des privilèges administratifs à un utilisateur et accéder aux fonctionnalités d'administration, exécutez la commande suivante dans la console Rails :
bundle exec rails c
> User.first.update(admin: true)
Paramètres de l'application
Basculez les paramètres de l'application dans /setup/edit
AppSettings.interface_layout
- Disposition de l'application
- valeurs ["VERTICAL", "VERTICAL-TRANSPARENT", "HORIZONTAL", "OVERLAP", "CONDENSED"]
AppSettings.interface_mode
- Mode clair/sombre de l'application
- "SYSTEM" sélectionne le mode dans les préférences système
- Valeurs ["LIGHT", "DARK", "SYSTEM"]
AppSettings.interface_theme
- Thème de couleur de l'application
- Valeurs ["DEFAULT", "COOL"]
AppSettings.login_layout
l'un des
- Disposition des écrans de connexion
- Valeurs ["DEFAULT", "ILLUSTRATION", "COVER"]
AppSettings.multi_tenant_mode
- Lorsque cela est vrai, les utilisateurs peuvent s'inscrire et créer des espaces
- Lorsque false autorise uniquement l'administrateur à inviter des utilisateurs et à créer des espaces
- Valeurs [vrai, faux]
AppSettings.show_landing_page
- Lorsque le véritable chemin racine affiche la page de destination
- Lorsque le faux chemin racine redirige vers la page de connexion
- Valeurs [vrai, faux]
Déploiement
Choisissez votre plateforme de déploiement préférée :
- Déployer sur Fly.io
- Déployer sur Heroku
Contribution
Les contributions pour améliorer ce démarreur sont fortement encouragées et bienvenues ! N'hésitez pas à soumettre des pull request et à améliorer le projet en collaboration.