umkc-cs-451-2020-spring / dwebble

Group 12's project for CS451r
0 stars 0 forks source link

** about

*** problem

the UMKC CSEE department needs help automating the scheduling of professors and courses that
need teaching for a given semester given the constraints of professorial staff, conflicts
between sequencing and order that classes should be taught, and other minutia involved with
class scheduling.

the full project prompt can be found [[file:docs/alternative_capstone_project_prompt.docx][here]].

*** documentation

you can find documents related to the project, such as our charter or sprint effort estimates,
under [[file:docs/][docs/]].

** TODO project summary

*** =dwebble=

[[https://assets.pokemon.com/assets/cms2/img/pokedex/detail/557.png]]

=dwebble= is a Rust based application that uses the [[https://rocket.rs/][Rocket]] web framework. It is still under heavy
development and is liable to massive changes!

** project setup *** install rust

preferably, using [[https://rustup.rs/][rustup]]. if you are running an unix like environment, the following cli command
will get you started:
#+BEGIN_SRC sh
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
#+END_SRC

for 64bit windows, download the installer [[https://win.rustup.rs/x86_64][here]].

install docker Follow the [[https://docs.docker.com/install/][directions on Docker's website]] to get Docker on your system. install PostgreSQL While our database environment and development is isolated to a docker image, you will probably need to [[https://www.postgresql.org/download/][install PostgreSQL on your system]] to develop anything on the application.

While the link above is directly to PostgreSQL's download page, for those on an unix like
environment, you can probably *more easily obtain* PostgreSQL via your system's package manager,
e.g. Ubuntu's =apt= or macOS' =homebrew=.

*** running the project

after installing rust and the other dependencies, open a terminal and enter the root of the
project. Run the following to spin up the docker container:

#+BEGIN_SRC sh
  docker-compose up
#+END_SRC

Then, in another shell, run the following to launch the application itself:

#+BEGIN_SRC sh
cd dwebble/
cargo run --release
#+END_SRC

=dwebble= will be running and waiting for you at [[http://localhost:8000/]].

** TODO contributing TBD