@@ 1,7 1,9 @@
# Ravenserver Documentation
[ravenserver](https://git.sr.ht/~nicohman/ravenserver) is a NodeJS-based online repository/package manager for raven themes. You can write your own client or bot easily using the API if you want.The main instance runs on [my website](https://demenses.net), and raven comes configured with that by default, but you can swap to your own easily.
[ravenserver](https://git.sr.ht/~nicohman/ravenserver-rs) is a rocket-based
online repository/package manager for raven themes written in rust. You can
write your own client or bot easily using the API if you want. The main instance runs on [my website](https://demenses.net), and raven comes configured with that by default, but you can swap to your own easily.
### REST API
@@ 49,35 51,12 @@
To set up your own instance, it's pretty easy. First, grab the code:
*git clone https://git.sr.ht/~nicohman/ravenserver*
*git clone https://git.sr.ht/~nicohman/ravenserver-rs*
Create a file named `config.json` in the directory you cloned, containing these fields:
You need to set the environment variable RAVENSERVER_SECRET to whatever your
secret should be for password encryption. Then, run
*cargo run --release*
// This is the email address that emails should be sent from
// This is the host that ravenserver wll use to send the emails
// This is the password to the email account
// This controls whether or not to display a link to the downloads page. You should probably leave this off.
// The page to redirect users to on clicking the download page link
// The secret to sign JWT tokens with
Then, you'll need to set up a MongoDB database on the server. It should be named themes, and ravenserver will handle the rest of the setup. Now, you're pretty much ready to go. Just start it up!
I personally recommend using [pm2](https://github.com/Unitech/pm2) to manage it.
*pm2 start app.js*
and it should be good to go. You may need to make a few tweaks in Rocket.toml
for things like ssl cert paths but otherwise you should be fine.