CSA Admin

Offers you a wide range of features specifically developed for the needs of Community Supported Agriculture.
https://github.com/csa-admin-org/csa-admin

Category: Consumption
Sub Category: Agriculture and Nutrition

Keywords

acp csa managment rails ruby solawi

Keywords from Contributors

optimize archiving transforms measur generic observation compose conversion projection animals

Last synced: about 8 hours ago
JSON representation

Repository metadata

Web application to manage CSA (Community Supported Agriculture), ACP (Agriculture Contractuelle de Proximité) or Solawi (Solidarische Landwirtschaft) organizations.

README.md

CSA/ACP/Solawi Admin

Tests Security

CSA/ACP/Solawi Admin is a web application to manage Community Supported Agriculture organizations:

  • CSA (Community Supported Agriculture)
  • ACP (Agriculture Contractuelle de Proximité)
  • Solawi (Solidarische Landwirtschaft)

Learn more on csa-admin.org.

Features

  • Member management (status, contact information, etc.)
  • Membership management (basket size type, depot location, quantity, deliveries, etc.)
  • Basket complements (delivery frequency, quantity, etc.)
  • Online grocery store for additional product orders
  • Advanced delivery cycle management (every two weeks, winter/summer, etc.)
  • Basket content management (harvest-based quantity calculations, price monitoring, etc.)
  • Bidding rounds for solidarity-based basket pricing (member pledges with min/max bounds)
  • Automatic invoicing:
    • memberships
    • membership shares / annual fees
    • invoice dispatch with reference numbers (QR-Code, SEPA)
    • automatic payment statement import from bank account (EBICS)
    • overdue notices
  • Activity participation management with member registration forms
  • Advanced email and built-in newsletters system
  • Multi-language support (en, fr, de, it, nl)

Need a demo or a specific feature? Contact me.

Organizations

This application is currently used by more than 30 organizations in Switzerland, Germany, and the Netherlands, and manages more than 140,000 basket deliveries per year.

Technical overview

  • Built with Ruby on Rails
  • Multi-tenant architecture:
    • tenant resolved from request subdomain
    • one isolated SQLite database per tenant
  • Asynchronous jobs handled by SolidQueue/ActiveJob (SQLite-backed)
  • Transactional emails and newsletters sent via Postmark

Getting started

  1. Clone the repository

  2. Copy config/tenant.yml.example to config/tenant.yml and update your admin/member hostnames

  3. Install dependencies, prepare and seed databases:

    bin/setup

  4. Set up local subdomains (recommended: puma-dev) to access:

  5. Sign in to the admin with your email (for example admin@my-domain.test)

Development

Useful commands:

  • Run all tests: bin/rails test:all
  • Check linting: bin/rails lint:check
  • Auto-fix linting issues: bin/rails lint:autocorrect

Contributing

Contributions are welcome.

Before starting substantial work (new feature, larger refactor), please contact me first so we can align on scope and implementation.

For smaller fixes and improvements, feel free to open a pull request.

Support

For demos, support, or custom feature requests, contact me.

License

CSA/ACP/Solawi Admin is released under the O’Saasy License.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 2 days ago

Total Commits: 4,195
Total Committers: 7
Avg Commits per committer: 599.286
Development Distribution Score (DDS): 0.007

Commits in past year: 953
Committers in past year: 1
Avg Commits per committer in past year: 953.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Thibaud Guillaume-Gentil t****d@t****g 4166
dependabot[bot] 4****] 10
Moritz Orbach s****i@a****t 8
videolmo 8****o 4
Manuel Rast m****t@i****h 4
Fred Radeff f****f@a****h 2
Olivier Amblet o****t@p****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 24 days ago

Total issues: 74
Total pull requests: 54
Average time to close issues: 3 months
Average time to close pull requests: 5 days
Total issue authors: 8
Total pull request authors: 6
Average comments per issue: 1.47
Average comments per pull request: 0.5
Merged pull request: 30
Bot issues: 0
Bot pull requests: 32

Past year issues: 11
Past year pull requests: 2
Past year average time to close issues: about 2 months
Past year average time to close pull requests: 25 days
Past year issue authors: 3
Past year pull request authors: 1
Past year average comments per issue: 1.09
Past year average comments per pull request: 0.0
Past year merged pull request: 2
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/csa-admin-org/csa-admin

Top Issue Authors

  • thibaudgg (62)
  • NealDill (3)
  • secretariatldc (3)
  • PatriciaCocagne (2)
  • leokraemer (1)
  • oliamb (1)
  • Alex77825 (1)
  • WildeRauke (1)

Top Pull Request Authors

  • dependabot[bot] (32)
  • thibaudgg (13)
  • videolmo (4)
  • zpartakov (2)
  • mrast (2)
  • oliamb (1)

Top Issue Labels

  • Cocagne (7)
  • TaPatate! (3)
  • Lumière des Champs (3)
  • P2R (2)
  • Touvière (2)
  • Rage de Vert (1)
  • Potagers de Gaia (1)
  • AlpGrava (1)
  • Fairdura (1)
  • Grundnahrig (1)
  • Les Paniers de la Mule (1)
  • CulturesLocales (1)

Top Pull Request Labels

  • dependencies (6)
  • ruby (6)

Dependencies

.github/workflows/tests.yml actions
  • actions/checkout v3 composite
  • ruby/setup-ruby v1 composite
  • zcong1993/setup-timezone master composite
  • postgres 14.2 docker
Gemfile rubygems
  • bullet >= 0 development
  • byebug >= 0 development
  • capybara >= 0 development
  • capybara-email >= 0 development
  • dotenv-rails >= 0 development
  • factory_bot_rails >= 0 development
  • faker >= 0 development
  • launchy >= 0 development
  • letter_opener >= 0 development
  • listen >= 0 development
  • pdf-inspector >= 0 development
  • rspec-rails >= 0 development
  • super_diff >= 0 development
  • web-console >= 0 development
  • activeadmin >= 0
  • aws-sdk-s3 >= 0
  • barnes >= 0
  • bcrypt >= 0
  • bootsnap >= 0
  • camt_parser >= 0
  • cancancan >= 0
  • cld >= 0
  • countries >= 0
  • date_validator >= 0
  • epics >= 0
  • faraday >= 0
  • faraday-cookie_jar >= 0
  • gibbon >= 0
  • i18n >= 0
  • i18n-backend-side_by_side >= 0
  • icalendar >= 0
  • image_processing >= 0
  • importmap-rails >= 0
  • inline_svg >= 0
  • invisible_captcha >= 0
  • kramdown >= 0
  • liquid >= 0
  • lograge >= 0
  • matrix >= 0
  • mini_magick >= 0
  • nokogiri >= 0
  • pg >= 0
  • phony_rails >= 0
  • postmark-rails >= 0
  • prawn >= 0
  • prawn-table >= 0
  • premailer-rails >= 0
  • public_suffix >= 0
  • puma >= 0
  • rack-cors >= 0
  • rack-status >= 0
  • rails ~> 7.0.3
  • rails-i18n >= 0
  • redis >= 0
  • rexml >= 0
  • rqrcode >= 0
  • rubyXL >= 0
  • sentry-rails >= 0
  • sentry-ruby >= 0
  • sentry-sidekiq >= 0
  • sidekiq >= 0
  • sidekiq-scheduler >= 0
  • simple_form >= 0
  • slim >= 0
  • sprockets-rails >= 0
  • stimulus-rails >= 0
  • tailwindcss-rails >= 0
  • tod >= 0
  • turbo-rails >= 0
  • turbolinks >= 0
Gemfile.lock rubygems
  • 187 dependencies
.github/workflows/lint.yml actions
  • actions/checkout v5 composite
  • actions/setup-node v6 composite
  • awalsh128/cache-apt-pkgs-action v1 composite
  • ruby/setup-ruby v1 composite
  • speedshop/ids_must_be_indexed v1.2.1 composite
.github/workflows/security.yml actions
  • actions/checkout v5 composite
  • github/codeql-action/upload-sarif v4 composite
  • ruby/setup-ruby v1 composite
Dockerfile docker
  • base latest build
  • docker.io/library/ruby $RUBY_VERSION-slim build
package-lock.json npm
  • @herb-tools/config 0.8.4 development
  • @herb-tools/core 0.8.4 development
  • @herb-tools/formatter 0.8.4 development
  • @herb-tools/highlighter 0.8.4 development
  • @herb-tools/linter 0.8.4 development
  • @herb-tools/node-wasm 0.8.4 development
  • @herb-tools/printer 0.8.4 development
  • @herb-tools/rewriter 0.8.4 development
  • @herb-tools/tailwind-class-sorter 0.8.4 development
  • @isaacs/balanced-match 4.0.1 development
  • @isaacs/brace-expansion 5.0.0 development
  • callsites 3.1.0 development
  • clear-module 4.1.2 development
  • escalade 3.2.0 development
  • function-bind 1.1.2 development
  • glob 13.0.0 development
  • hasown 2.0.2 development
  • is-core-module 2.16.1 development
  • jiti 2.6.1 development
  • lru-cache 11.2.4 development
  • minimatch 10.1.1 development
  • minipass 7.1.2 development
  • nanoid 3.3.11 development
  • parent-module 2.0.0 development
  • path-parse 1.0.7 development
  • path-scurry 2.0.1 development
  • picocolors 1.1.1 development
  • pify 2.3.0 development
  • postcss 8.5.6 development
  • postcss-import 16.1.1 development
  • postcss-value-parser 4.2.0 development
  • prettier 3.7.4 development
  • prettier-plugin-tailwindcss 0.6.14 development
  • read-cache 1.0.0 development
  • resolve 1.22.11 development
  • resolve-from 5.0.0 development
  • source-map-js 1.2.1 development
  • supports-preserve-symlinks-flag 1.0.0 development
  • tailwindcss 4.1.18 development
  • yaml 2.8.2 development
package.json npm
  • @herb-tools/formatter ^0.8.2 development
  • @herb-tools/linter ^0.8.2 development
  • prettier ^3.6.2 development
  • prettier-plugin-tailwindcss ^0.6.14 development

Score: 6.236369590203704