Giter VIP home page Giter VIP logo

boardgamenightplanner's Introduction

Board Game Night Planner

Web application that helps planning for board game nights. Allows event owners to manage their game collection, create events, and record scores. Users can sign up for game events, and see their past scores.

Tech Stack

  • TypeScript
  • React
  • Bulma
  • Formik
  • Google Firebase

Building and Running

To debug locally, you must be authenticated to the project via the Firebase CLI. npm run build to build. npm run deploy to deploy.

boardgamenightplanner's People

Contributors

jeffsideddie avatar kiley0 avatar jeff-polakiewicz-imaginex avatar jeffpolakiewicz avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar  avatar

boardgamenightplanner's Issues

Results Tracking

Add the ability to track results of each event. I think a results object field on an event with keys of user ids (similar to attendees) and values of scores.

Not sure how performant this would be for querying.

Hide old events in table

Events that have passed should be hidden in the events table after 7 days have passed. I'm thinking 7 days so you can review the results of a passed event until the next one is over.

Add Admin page to manage games library

An admin page is needed to add/edit game information. A new collection in firestore needs to be added. Only admins should be allowed to administer game info.

Games should have the following fields:
Name
BGG Link
Max Players
Rules PDF Link
Rules Video Link

Disallow ability to attend expired event

Attend button should be hidden when event time has already passed. Update Firestore rules to prevent this scenario as well.

Maybe events should "close" the night before?

Ability to subscribe to event notifications

As a user, I would like to be notified via email that an event- or channel-specific action has occurred, so that I can take action on that event.

Possible actions could include:

  • A new event (game night) has been added
  • An event has been cancelled
  • A seat has opened for an event I am on the wait list for

Food Planning/Donation

Not sure if anyone would be interested in this, but we could add a way to contibute money to a food pool to order pizza or Jimmy John's ahead of time. A user would get a prompt when they attend.

Create wait list for full events

As a user, I would like to be able to join a wait list for an event if all available seats are taken, so that the system can add me to that event automatically, or notify me that a seat is available.

Make attendee list hidden by default

As a user, when I first navigate to the list of events, the system should show me the taken and available seat counts, but hide the names until I click on the taken seat count.

Make this and expanding section or modal or tooltip-style section.

Event reminders/notifications

Is the calendar event enough? Perhaps we should add the ability to send out reminder notifications ahead of time, like an SMS the day before or morning of. This would require asking for phone numbers through google auth though.

We could also send notifications when other people join events you are attending. Can we make this an opt in feature?

Add admin page to manage events

An admin page is needed to add/edit event information. Only admins should be allowed to administer event info.

Events should have the following fields:
Timestamp
Game
Attendees

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.