A very random collection of services, packed into a RESTful Rust api. https://fej.roosens.me
 
 
 
 
 
 
Go to file
Jef Roosens c6518a33b1
Merge branch 'develop'
2021-04-12 15:53:07 +02:00
.hooks Error handler now returns a string instead (closes #10) 2021-04-04 15:13:36 +02:00
benches [#13] Further overhaul of the project structure for better testing 2021-04-08 22:39:04 +02:00
src [#16] tried changing dockerfile to buildkit (WIP) 2021-04-08 23:56:08 +02:00
tests [#13] added some more unit tests, hated life for a bit 2021-04-08 22:53:29 +02:00
.dockerignore Added Docker build files 2021-03-05 20:40:49 +01:00
.gitignore Added cargo init 2021-03-05 18:39:49 +01:00
Cargo.lock Bumped version to 0.1.0 2021-04-12 15:46:03 +02:00
Cargo.toml Bumped version to 0.1.0 2021-04-12 15:46:03 +02:00
Dockerfile [closes #16] fixed Dockerfile 2021-04-12 15:43:23 +02:00
LICENSE Removed some old code; added properly formatted LICENSE 2021-03-13 10:04:49 +01:00
Makefile [#13] Further overhaul of the project structure for better testing 2021-04-08 22:39:04 +02:00
README.md Merge branch 'develop' 2021-04-12 15:53:07 +02:00
build [#16] tried changing dockerfile to buildkit (WIP) 2021-04-08 23:56:08 +02:00
roadmap.md Started roadmap.md 2021-03-23 13:47:57 +01:00

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 named controller.
  • 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.

Roadmap

See roadmap.md.