Git Product home page Git Product logo

poker-stats's Introduction

Project for tracking poker stats from tournaments.

This is a work in progress.

Features:

  1. User management
    1. Registration
    2. Login
    3. Password reset
    4. Email/account verification
    5. Google account signup
  2. Track game statistics
  3. Personalized game statistics
  4. TODO... more stuff

TODO

This is a notes section for me personally.

  1. Split winners
    • Need to think about this.
  2. Tournament "MVP"? How would this be calculated
  3. Completing a tournament takes a long time. Figure out why.
  4. Rendering tournament view takes a long time. Figure out why.
  5. Add footer
  6. Create invite system for TournamentGroups. Just like with Tournaments.
  7. Setup bugsnag
  8. Setup Jira for further feature work
  9. Prevent analytics from considering tournaments you did not join
    • everything in tournament_analytics.html
  10. Send an email when invited to tournament
  11. Add timestamp input for backfilling tournaments (this can override the started_at and completed_at dates?)
  12. Add a notes field to the tournament.
    • That way I can write a note saying: "data is slightly wrong becuase a split elimination occurred between x players or whatver"
  13. Google signin issue? Not working for people to sign up with google account (See screenshot saved)
    • Seems to be from opening pokerstats.lol from within another app. Can I fix this easily?

TODO (after app is fully functional)

  1. Optimize everything for mobile. (I think this is already done, but confirm)
    • 99% of the time this is going to be used from a phone.
  2. Remove CDNs
    1. Chart.js: tournament_totals.html
    2. base.html
  3. Add recaptcha to registration/login https://pypi.org/project/django-recaptcha/
    • Or maybe just delete accounts after X days if they have not be verified?
  4. Screenshot tests?
  5. Figure out how to make the website timezone aware
    • Probably just need to save the timezone of the user in their profile data and then do a conversion in every view that uses a date.
  6. Make admin not automatically join a tournament when they create it.
  7. Add splitting feature
  8. Shareable invite link to a tournament? If user has no registered then they are prompted to before joining.
  9. Create Jira project with an email from whatever domain I end up using.
  10. "Guest" feature. Dunno if I really want this it would be very complicated. PRobably something to think about after launch.
    • If someone wanted to track their analytics and the people they were playing with do not use the site.
    • Also for backfilling, not everyone may have registered or something
    • Also need some kind of mechanism for going back into a completed Tournament and assigning a user to a guest. Like if you finished a tournament with a guest you could go back and assign a real user to it
    • Ability to give the Guest a temporary name. Just a string.
  11. Backfill a tournament where the eliminations were not tracked and bounties are not enabled.
    • A nice feature would be the ability to backfill a tournament when the eliminations aren't known. Then just backfilled based on how many players rebought?
    • The data wouldn't be great but at least you'd see placement data.
    • I have a spike branch thats incomplete https://github.com/pokerstats/Poker-Stats/tree/backfill-no-bounties-rebuys-enabled
      • Would just need to create a new function instead of using complete_tournament_for_backfill. That does not take in elim_dict and instead accepts the dict of rebuys.

Running tests

python3 manage.py test tournament/
python3 manage.py test tournament_analytics/tests
python3 manage.py test tournament_group/tests

Resources

  1. django-allauth
    1. doc: https://django-allauth.readthedocs.io/en/latest/index.html
    2. https://github.com/ksarthak4ever/Django-Video_Subscription_App
    3. https://www.codesnail.com/django-allauth-email-authentication-tutorial
    4. https://medium.com/@ksarthak4ever/django-custom-user-model-allauth-for-oauth-20c84888c318
  2. django-bootstrap-v5
    1. doc: https://django-bootstrap-v5.readthedocs.io/en/latest/index.html
  3. Chart.js
    1. https://www.chartjs.org/docs

poker-stats's People

Contributors

mitchtabian avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.