A simple application presenting truths and allowing people to guess on their authors for an upcoming campaign of Fabula Ultima
Find a file
trotFunky 322d37ce48 templates: Remove the extra / in the anchor link
Anchor links do not need an additional / to work : the # can be added directly
at the end of the previous URL.
Remove it from the existing anchor tags in the truths.
2024-08-01 22:43:25 +01:00
db tag: Introduce tag system 2024-08-01 21:55:47 +01:00
src tag: Introduce tag system 2024-08-01 21:55:47 +01:00
static_files vote_chart: Remove hash part of the URL 2024-08-01 22:42:07 +01:00
templates templates: Remove the extra / in the anchor link 2024-08-01 22:43:25 +01:00
.gitignore v1.0: First production version 2024-07-23 21:51:42 +01:00
Cargo.lock tag: Introduce tag system 2024-08-01 21:55:47 +01:00
Cargo.toml tag: Introduce tag system 2024-08-01 21:55:47 +01:00
LICENSE.md v1.0: First production version 2024-07-23 21:51:42 +01:00
README.md README: Add forgotten frontend dependency 2024-07-30 23:34:17 +01:00
Rocket.toml v1.0: First production version 2024-07-23 21:51:42 +01:00

Fabula Votes

This web application is intended as a simple way to share Truths for an upcoming campaign of Fabula Ultima, vote and who we think wrote them and see some stats !

TODO

A list of things that could be implemented/added to the application, some of them are needed for "feature completeness" !

  • Being able to change from one week to the next
    • Create new weeks for the admin
    • Proper week redirection
      • Correctly handle non-existing week number
  • Add introduction to the weekly truths
  • Bundle static assets in the binary
  • Move the database queries to their own functions
    • Cache those results
  • Centralize Markdown parsing ?
  • Use fairings for the different elements
  • Use guards for User calls ?
  • Use SQLite Row ID for User IDs rather than regular IDs, for randomness ?
  • Split user from vote data

Dependencies

This project currently uses, for the backend :

  • Rocket, for the web application backend
  • SQLX, for database access (this is only expeceted to be used with SQLite)
  • Tera, for templating
  • Argon2, for password hashing
  • Pull_down CMark, for markdown rendering

For the frontend :

  • Chart.js, for rendering the vote graph.

License

The code present in this repository is licensed under the Mozilla Public License 2.0.