A simple application presenting truths and allowing people to guess on their authors for an upcoming campaign of Fabula Ultima
Find a file
trotFunky 207ce6c1d2 templates: Check vote against truth id, not number
I made a choice to only log confirmed votes : there is no blank vote in the database.
This means that when fetching a user's vote, if they have not voted for everyone
there will be votes missing.
As this is sent to the templating engine via a Vector, the ordering of the votes
will be incorrect : all existing votes will follow each other, and there will be
missing votes at the end.

Update the select logic in the truth template to account for that by checking
the truth_id directly, rather than via the index of the array. (O(N²)...)
Remove 'has_vote' as this is not useful anymore.
2024-07-25 23:30:02 +01:00
db v1.1: Add weekly introductions 2024-07-23 21:51:51 +01:00
src truths: Change truth creation URL 2024-07-25 16:54:19 +01:00
static_files style: Fix edit box clipping the graph 2024-07-25 18:39:07 +01:00
templates templates: Check vote against truth id, not number 2024-07-25 23:30:02 +01:00
.gitignore v1.0: First production version 2024-07-23 21:51:42 +01:00
Cargo.lock auth: Fix auth token getting leaked to console 2024-07-23 21:51:56 +01:00
Cargo.toml auth: Fix auth token getting leaked to console 2024-07-23 21:51:56 +01:00
LICENSE.md v1.0: First production version 2024-07-23 21:51:42 +01:00
README.md README: Update todo, fix typo 2024-07-23 22:14:18 +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
  • 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 ?

Dependencies

This project currently uses :

  • 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

License

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