The new (and improved) RCOS website
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Steven vanZyl 4f657f3630
Merge pull request #102 from rcos/event-attendees
3 days ago
.github Switch to GitHub Actions (#99) 1 week ago
migrations Proposal URL variable added 3 weeks ago
scripts A few fixes 5 months ago
src Rename meetings handler and fix a bug 4 days ago
static Calendar View updated with List view 2 weeks ago
templates Delete attendances when removed from group 4 days ago
.dockerignore Fix CircleCI again 4 months ago
.gitignore updated gitignore 1 month ago Update some docs 6 months ago
Cargo.toml merging fixes 2 weeks ago Update the README 5 months ago
Dockerfile Update the Dockerfile 3 weeks ago
LICENSE Users lists 7 months ago Switch to GitHub Actions (#99) 1 week ago
Rocket.toml Fix some bugs 2 months ago
diesel.toml Diesel setup and basic schemas 8 months ago
logo.svg optimized logo svg 3 months ago


RCOS Observatory logo

Rewrite of the RCOS observatory in a way that hopefully makes a bit more sense. Since we have kinda lost track of what number we’re on at this point I am codenaming this version Observatory-New (I think it’s the 5th version though).

This implementation is intended to be simpler than previous incarnations in order to be easier to maintain in the long run.

It renders pages as plain HTML with minimal JavaScript and uses SQLite as the database backend.

If you would like to help out please read

Major Dependencies


Before anything else make sure that you have the development tools for your system. On Ubuntu/Debian you can install these with:

$ sudo apt install build-essential pkg-config

Then you need to install the openssl development headers. How to do this varies by system but on Ubuntu the package is libssl-dev and should be similar on other distros.

Next install Rust with Rustup. Instructions are on the website linked and is fairly straightforward.

Rocket requires Rust Nightly (for now). This can be set for the Observatory-new repository folder specifically by running

rustup override set nightly

in cloned folder. As of Rustup 1.20.0 this will automatically install the additional tools and can be updated with rustup update.

After that it’s as simple as

$ cargo build

And to run do

$ cargo run


This is for deploying to a server, not a developer machine

Please read the Deploying instructions for information on how to setup and deploy observatory-new.


The code is primarily documented using in-code doc comments. This can be viewed either by browsing the source or in a web browser with.

$ cargo doc --no-deps --document-private-items --all-features --open