Files here are part of the "Collect" project.
"Collect" is the collection part of the grander "Dewey" project.
The Dewey Project is a grand effort to improve how documents and media are organized across systems which targets comprehension heavy professionals such as doctors, lawyers, and accountants.
The objective is to enable these professionals the opportunity to quickly index and organize their sources in several places potentially across multiple devices without redacting information.
Referencing Actix_web Autoreload docs, install both systemfd and cargo-watch with cargo install systemfd cargo-watch.
Then, you will be able to run bash ./dev-watch.sh to enable autoreloading actix-web server.
- Install Rust (Stable)
curl https://sh.rustup.rs -sSf | shMake sure you can runrustup default stableandcargo --version - Install docker Docker CE
Make sure you have
docker-composein your path. - Install Rust PostgreSQL CLI tool "diesel"
cargo install diesel_cli --no-default-features --features postgresMake sure you can rundiesel --version - Install development tools
cargo install systemfd&cargo install cargo-watchYou should be able to runbash ./dev-watch.shand it should crash since the database likely isn't configured yet.
- Copy
.env.exampleto.envfor diesel to know where the DATABASE_URL is (diesel getting started guide). - Start the Posgres, Redis, and Minio services we need
docker-compose up - Setup the database
diesel setup(This uses the./migrations/SQL files)
This application requires that you are using a google apps account to create an app and credentials.
- Create a Google Apps project
- Update the other
.envfile variables for your Google App keys - Add credentials for OAuth 2 web client (This step requires having endpoints created for your web service, you might use something like Authorised redirect URIs:
http://localhost:8088/login/google/callback) - If you used
http://localhost:8088in the app, you need to update theROOT_HOSTin the.envfile to match.
Starting the server should be as straight forward as running bash ./dev-watch.sh, which provides recompilation on watch, and restarting on successful recompilation.
If at any point you scratched your head reading this guide, please open an issue, or tap us on the shoulder and we can freshen up the guide here to help others in the future.

