Bag of Holding is a web app that lets all the players in a tabletop RPG session track their inventory in one central location. Inventory sheets are created without requiring any account creation or authentication and update in real time, allowing for easy and convenient collaboration between players, as well as offering advanced filters and searching that makes it suitable for tracking both the group inventory and the inventory of individual players.
Stack: Bag of Holding is built primarily using the following technologies:
- Typescript
- React, bootstrapped with Next.js via
create-next-app
and Chakra UI for styling - PostgreSQL Database hosted on Supabase
- Hosted on Vercel
- tRPC backend
NOTE: You need docker installed
How to install and locally host your own installation of Bag of Holding:
- Fork + Clone this repository
- Run the
yarn
command (yarn must be installed) and wait for installation of packages to finish - Run
yarn dev
to run the application
We will gladly accept any help you want to offer us. If you want to contribute to Bag of Holding, please read this section and follow any instructions.
It is recommended that you install the following extensions before starting work on Bag of Holding:
- Prettier (esbenp.prettier-vscode): An extension for formatting your code.
- ESLint (dbaeumer.vscode-eslint): An extension for linting your code.
When making commits to this repository run yarn commit
in your terminal and follow the prompts to generate a high quality message that will be accepted.
I copy/pasted the code from some libraries into this project to reduce external dependencies. All credit goes to the original authors. I only use libraries that are MIT licensed.
MIT