Skip to content

LeCircographe-asso/core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,828 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Le Circographe

Application Rails 8 de gestion associative pour Le Circographe (adhésions, cotisations, paiements, présences, événements).

Version Rails Ruby License


Vocabulaire métier

Le projet utilise un vocabulaire DDD-light strict. Avant toute contribution, lire :

Résumé express : Person (CRM) ⟶ User (compte web, toujours rattaché à une Person) ⟶ Membership (adhésion annuelle) ⟶ Contribution (cotisation cirque) selon une ContributionFormula. Les paiements (Payment) regroupent une ou plusieurs PaymentLine (adhésion, cotisation, don).


Démarrage

# Pré-requis : Ruby 4.0.1 (RVM/asdf) + SQLite + Foreman
bundle install
bin/rails db:prepare
bin/dev

Application disponible sur http://localhost:3000. Letter Opener Web (emails de dev) sur http://localhost:3000/letter_opener.


Tests (RSpec only)

Le projet utilise RSpec uniquement. Le legacy Minitest (test/) a ete retire. La stack d'authentification reste native Rails 8 (pas Devise).

bin/rspec spec/services     # RSpec sérialisé pour SQLite
bin/test                # suite complète + couverture
bin/test_fast           # models + services (rapide)
bin/test --no-coverage  # sans SimpleCov
bin/test_watch          # watch mode via Guard
bundle exec rubocop --force-exclusion

Avec SQLite, n'exécutez pas plusieurs processus RSpec en parallèle sur la même base tmp/test.sqlite3. Utilisez bin/rspec, bin/test, bin/test_fast et bin/test_watch : ils sérialisent l'accès via un lockfile.


Déploiement

Environnement URL Branche
Development http://localhost:3000 locale
Staging https://staging.lecircographe.fr staging
Production https://lecircographe.fr main

Déploiement Kamal automatisé via GitHub Actions :

  • Push sur staging → déploiement staging.
  • Push sur main → déploiement production.
  • Workflow « 04 - Promote to Main » : staging → main.

Scripts utilitaires :

./scripts/maintenance.sh [enable|disable|status] [staging|production]
./scripts/server-pull.sh [staging|production] [SERVER_IP]

Pré-requis runtime

  • Ruby 4.0.1
  • Rails 8.1.3
  • SQLite (multi-base : main / cache / queue / cable)
  • Importmap + Propshaft (pas de Node.js)
  • SolidQueue / SolidCache / SolidCable
  • Docker + Kamal (déploiement)

Documentation

L'index complet de la documentation se trouve dans docs/README.md. Points d'entrée recommandés :


Liens externes


Application développée pour Le Circographe.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors