A very random collection of services, packed into a RESTful Rust api.
https://fej.roosens.me
Jef Roosens e4b8be3ba3 | ||
---|---|---|
.hooks | ||
benches | ||
src | ||
tests | ||
.dockerignore | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.md | ||
build |
README.md
Fej
Fej is an API written in Rust. I started this project to learn the language, and really just have some fun.
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.