https://github.com/johrpan/wolfgang
A server for hosting metadata on classical music.
https://github.com/johrpan/wolfgang
Last synced: 2 months ago
JSON representation
A server for hosting metadata on classical music.
- Host: GitHub
- URL: https://github.com/johrpan/wolfgang
- Owner: johrpan
- Created: 2021-01-30T13:06:44.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-02-07T09:02:14.000Z (over 4 years ago)
- Last Synced: 2025-02-16T10:14:36.393Z (4 months ago)
- Language: Rust
- Size: 28.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Wolfgang
This is a server for hosting metadata on classical music.
## Running
Wolfgang should reside behind a reverse proxy (e.g. Nginx) that is set up to
only use TLS encrypted connections. You will need a running
[PostgreSQL](https://www.postgresql.org/) service. To set up the database (and
migrate to future versions) use the Diesel command line utility from within
the source code repository. This utility and Wolfgang itself use the
environment variable `WOLFGANG_DATABASE_URL` to find the database. A nice way
to set it up is to use a file called `.env` within the toplevel directory of
the repository.```bash
# Install the Diesel command line utility:
cargo install diesel_cli --no-default-features --features postgres# Configure the database URL (replace username and table):
echo "WOLFGANG_DATABASE_URL=\"postgres://username@localhost/table\"" >> .env# Run migrations:
~/.cargo/bin/diesel migration run# Set a secret that will be used to sign access tokens:
echo "WOLFGANG_SECRET=\"$(openssl rand -base64 64)\"" >> .env
```## Hacking
Wolfgang is written in [Rust](https://www.rust-lang.org) using the
[Actix Web](https://actix.rs/) framework for serving requests and
[Diesel](https://diesel.rs/) for database access. The linked websites should
provide you with the necessary information to get started.## License
Wolfgang is free and open source 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.Wolfgang 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/.