A crowdsourced website to find the best thing!
Find a file
2025-05-13 10:02:47 -04:00
dev Good enough for first prod 2025-04-26 18:40:54 -04:00
static Added my referal link, and changed hackclub text 2025-05-01 12:27:34 -04:00
templates Added anonymous Thing submission 2025-05-13 10:02:47 -04:00
.gitignore Initial commit 2025-04-24 16:26:02 -04:00
LICENSE Initial commit 2025-04-24 16:26:02 -04:00
main.py Added anonymous Thing submission 2025-05-13 10:02:47 -04:00
README.md Update README.md 2025-05-02 08:39:35 -04:00
requirements.txt update todo, and added jwt voting checksum 2025-04-30 11:54:55 -04:00
TODO update todo, and added jwt voting checksum 2025-04-30 11:54:55 -04:00

Benchmark

A crowdsourced website to find the best thing!

I want to use this project to learn some new technologies, those being

  • Oauth - for signing in Don't think this will work, due to using python not js or dart
  • Pocketbase - for a backend, and for administration, - will have to do some oddities with this, but should work fine
  • Beer.css/Material design - For the UI

If these go well, I might use them more, depends on how well this project goes

Install instructions

First thing you need is a pocketbase instance, which should have the following tables:

  • users_real
    • This contains all the users data, due to using pocketbase the wrong way.
    • It needs:
      • id -> as id type
      • email -> as email type
      • username -> as string type
      • pwd -> as string type
      • voted_count -> as int type
    • Email should have a unique constraint
  • thing
    • This contains all of the Things, and all of their data.
    • It needs:
      • id -> as id type
      • name -> as string type
      • matchups_won -> as int type, no decimals
      • matchups_in -> as int type, no decimals
      • approved -> as bool type
      • denied -> as bool type
      • creator -> a relationship to a users_real object, singular
    • Name should have unique constraint & be non empty Then you need to clone the repo
git clone https://git.minejerik.dev/minejerik/bestthing

Then update all of the ip addresses in the code, to the one for your pocketbase instance. After that install of the requirements.

pip install -r requirements.txt

Then you should just be able to run main.py

Credits