A very random collection of services, packed into a RESTful Rust api.
https://fej.roosens.me
Jef Roosens 4032800d64 | ||
---|---|---|
src | ||
.dockerignore | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.md |
README.md
rust-api
An API written in Rust, which I used to learn the language.
Project Structure
The folder structure follows the structure of the URLs, e.g. the route for
/hello/world
is found in the module src/hello
.
Each module contains the following base files:
mod.rs
: defines the modules' content, and contains the route definitions. The route functions themselves only contain the functionality needed to represent the data, not acquire it.controller.rs
: this file contains the actual logic of each route. If the logic becomes too complicated to be contained inside a single file,controller.rs
becomes its own module folder namedcontroller
.tests.rs
: this contains tests for the specific module. This can also be a module directory if need be.
Every module has a routes
function that returns its route macros.