| .devcontainer | ||
| .forgejo/workflows | ||
| .vscode | ||
| app | ||
| bin | ||
| config | ||
| coverage | ||
| db | ||
| lib | ||
| log | ||
| openapi | ||
| pictures | ||
| public | ||
| spec | ||
| storage | ||
| tmp | ||
| vendor | ||
| .dockerignore | ||
| .domains | ||
| .gitattributes | ||
| .gitignore | ||
| .rspec | ||
| .rubocop.yml | ||
| .ruby-version | ||
| .standard.yml | ||
| app.json | ||
| CODE_OF_CONDUCT.md | ||
| config.ru | ||
| Containerfile | ||
| docker-compose.dev.yml | ||
| docker-compose.yml | ||
| dump.rdb | ||
| example.env | ||
| fly.toml | ||
| Gemfile | ||
| Gemfile.lock | ||
| index.html | ||
| LICENSE.md | ||
| package-lock.json | ||
| Procfile | ||
| Procfile.dev | ||
| pull_request_template.yml | ||
| railway.json | ||
| Rakefile | ||
| README.md | ||
| render.sh | ||
| render.yaml | ||
United!
United is free and open SODAP-compliant membership software for collective organizations, allowing robust tracking of membership, expirations, email broadcast tools, providing single-sign-on for your members, and more.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.






Demo
A fully functional demo is available at demo.united.obl.ong!
Warning
All data resets every 30 minutes on the hour and at the 30-minute mark.
Installation
Note
United requires an external email (SMTP) server to send login codes & information to members. We recommend using Postmark or another transactional email service for this.
For instructions on how to get the SMTP token for a Postmark server, click here. Be sure to use a "Broadcast" message stream for compliance.
Warning
Do not use Gmail or similar personal mail services for United.
Cloud (IaaS)
Railway
I recommend that people use Railway to deploy United, as it has a free tier and an extremely easy setup process.
Here's a video of me spinning up a United instance in less than 10 minutes on Railway:
Others
If you don't want to use Railway, here are some other options for cloud deployments:
Computer
Automated
Caution
The automated install script expects a dedicated computer or virtual machine with ports 80 and 443 available.
You can use our simple automated script to install United onto any ol' computer or server running Linux with Docker. I highly recommend this option as it allows for minimizing recurring costs and full control.
Just paste the following in the terminal and answer a few short questions!
bash <(curl -s https://codeberg.org/reesericci/united/raw/branch/main/bin/install)
To install Linux on a computer, please visit the Fedora Server install guide.
Details
- SQLite Database by default (No external DB required)
- Optional PostgreSQL support available by setting the
DATABASE_URLenvironment variable
- Optional PostgreSQL support available by setting the
- Ruby 3.3.2
- Rails edge (main branch)
- Site configuration handled through initial wizard
- We relentlessly aim for:
- Simple deployment
- Low-maintainance stability
Versioning
We use Brett Uglow's SemVer for end-user software applications, to version this application:
Given the importance of the installation-requirements of an application to installer-users, I propose that semver be used to version end-user applications using the installation-requirements as the public API with installer-users as the consumers of this API.
In practice, increment the:
MAJOR version when you make incompatible API changes (e.g. installer-users have to modify their infrastructure (phone/tablet/PC/web-server/firewall config/etc) in some way),
MINOR version when you add functionality in a backwards-compatible manner (e.g. passing additional data to an already-provisioned API or adding any end-user functionality that does not affect the installation-requirements), and
PATCH version when you make backwards-compatible bug fixes (e.g. fixing any end-user bug that does not affect the installation requirements).
Copyright
Copyright (C) 2024 Software Freedom Conservancy and United contributors
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.
This site is a member of the Hard Fork webring
.png)
.png)
.png)