https://github.com/realaravinth/wagon
membership-management platform
https://github.com/realaravinth/wagon
mailing-list membership-management
Last synced: 10 days ago
JSON representation
membership-management platform
- Host: GitHub
- URL: https://github.com/realaravinth/wagon
- Owner: realaravinth
- License: agpl-3.0
- Created: 2020-10-30T16:02:26.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2020-11-11T15:18:06.000Z (over 4 years ago)
- Last Synced: 2025-04-13T16:16:02.191Z (10 days ago)
- Topics: mailing-list, membership-management
- Language: Rust
- Homepage:
- Size: 244 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
![]()
# Wagon
[](http://www.gnu.org/licenses/agpl-3.0)
[](https://travis-ci.com/realaravinth/wagon)
[](https://codecov.io/gh/realaravinth/wagon)### STATUS: Active development (fancy word for unusable)
**Wagon** is a membership management platform. Users can
advertise their groups for people to join them.### Motivation
Currently, we are focussing on building a platform to collect members'
emails but we plan on expanding to provide a [free
software](https://www.gnu.org/philosophy/free-sw.html) alternative to
platforms like [eventbrite](https://www.eventbrite.com/).### How to build:
- Install Cargo using [rustup](https://rustup.rs/) with:
```
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```- Clone the repository with:
```
$ git clone https://github.com/realaravinth/wagon
```- Build with Cargo:
```
$ cd wagon && cargo build
```### Usage:
#### Configuration:
Wagon is highly configurable.
Configuration is applied/merged in the following order:1. `config/default.toml`
2. `config/$WAGON_MODE.toml`
3. environment variables.##### Environment variables:
| Name | Value |
| ---------------------------- | ----------------------------------------------------------- |
| `WAGON_MODE` | Run mode for choosing configuration(development/production) |
| `WAGON_SMTP_KEY` | API key |
| `WAGON_POSTGRES_PASSWORD` | Postgres password |
| `WAGON_POSTGRES_NAME` | Postgres database name |
| `WAGON_POSTGRES_PORT` | Postgres port |
| `WAGON_POSTGRES_HOSTNAME` | Postgres hostmane |
| `WAGON_POSTGRES_USERNAME` | Postgres username |
| `WAGON_POSTGRES_POOL` | Postgres database connection pool size |
| `WAGON_PORT` (or) `PORT`\*\* | The port on which you want wagon to listen to |
| `WAGON_IP` | The IP address on which you want wagon to listen to |\*we rely [SMTP2Go's](https://www.smtp2go.com/) HTTP API to send emails.
This will change when the author comes into some money and sets up their
own email server.\*\*Heroku uses `$PORT`, we got you covered :)
### Credits:
Logo made by Smashicons from
www.flaticon.com. Do check them out!