Skip to content

usborn116/tally

Repository files navigation

README

This app lets you keep score of all your board games (or any games), and look back at any session of a game to see who won that time!

For the backend:

  • I use Ruby on Rails as the server, with a PostgreSQL database in production.
  • I use the jsbundling-rails gem to bundle JS files (as my frontend is React-based).
  • I use Devise to handle authentication/sessions.
  • I use the sassc-rails gem to pre-process my stylesheets.
  • I use bullet and letter_opener in development for optimizing and testing the mailer, respectively.
  • All backend routes are namespaced under 'api' to avoid conflicts with frontend routes
  • I use rspec for testing.

For the frontend:

  • I use React for my frontend, calling my /api routes to get JSON data from my backend.
  • For testing, I use Jest as well as the React testing library.
  • I use react-router to handle all the public-facing routes.

This app is deployed at https://tabletoptally.fly.dev/.

On the home page, you can see all games that any user has added to the database, along with details: CleanShot 2023-11-06 at 16 27 11@2x

To view the games you've added, go to the My Games page. There, you can also search for a specific game: CleanShot 2023-11-06 at 16 27 31

You can also create a new game here. For the Image URL, I'd suggest copying the direct image URL (it should end in an image file extension, like .jpg) from a place like Boardgamegeek.com: CleanShot 2023-11-06 at 16 29 23@2x

You can see your user information in the Profile page: CleanShot 2023-11-06 at 16 27 42@2x

When you click on a game, you can see the game details, the leaderboard for that game, and all previous sessions for that game (sorted by most recent): CleanShot 2023-11-06 at 16 29 11@2x

Clicking "New Session" will create a session for you. You can click into that session to edit the date, view details, and add players to that session: CleanShot 2023-11-06 at 16 28 14

Once you're done with a game, add the scores! CleanShot 2023-11-06 at 16 28 41

If the game has categories that aren't score-based but just win-based, you can check boxes for those categories too: CleanShot 2023-11-06 at 16 29 48

tally

Docs that were helpful in the making of this project:

Jest Testing Help:

Styling:

Git: