Skip to content

MichaelCClary/CapstoneOne

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


The Vault

The Vault

This is a simple website to search for new games and keep track of your games in your collection. I hope you enjoy playing around with it as much as I did making it. Please let me know if there are any improvements/bugs for me to make. I plan to keep working on this to make it better and better.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Roadmap
  4. Contact
  5. Acknowledgements

About The Project

I was inspired to make this project by own personal need for a way to organize my board games and to find new ones that are good. We all have bought a game that we played once/never because it was too complicated, not fun or just not the right number of players.

This is my first capstone project with Springboard. I built the backend with python using Flask and psql/SQLAlchemy for a database/ORM. I used Jinja, Vanilla Javascript, JQuery, and Bulma for front end.

Every search hits the api to get games and homepage is a basic search of most popular games. When you click on more information or add a game to your collection, then it is added to the database.

The search function was tricky because the api wouldn't let you search for say a name and a category at the same time. It is a browse the category and search by name. The categories/mechanics/players are in a select drop down menu for easy finding.

I used Javascript to let you add/remove games from your collection without reloading page and to handle hiding search boxes you weren't currently using.

Bulma was used to help layout the page and give me building blocks/style elements.

Special thank you to Board Game Atlas for their API which has thousands of games to comb through.

User Flow

  1. User will go to home page
  2. User can login/signup and be redirected back to homepage.
  3. User can then search/browse for new games to add to their collection from taskbar
  4. Any time user wants more information on a game, they just click more info button.
  5. User can check their collection/profile at any time by clicking on their name from task bar
  6. User can edit their information from their profile

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • Install python at python.org
  • Install PSQL and setup database - my name is boardgames_db so change BOARDGAME_URL in .env if you want a different name

Installation

  1. Clone the repo

    git clone https://github.com/MichaelCClary/CapstoneOne.git
  2. Install requirments

    pip install -r requirements.txt
  3. Get a free API key at https://www.boardgameatlas.com/api/docs

  4. Enter your API in .env

    client_id = 'Enter API KEY'
  5. Enter your SECRET_KEY in .env

    SECRET_KEY = 'SECRET KEY HERE'
  6. Set enviroment variables

    SOURCE .env
  7. Run from terminal

    Flask Run

Roadmap

Current - high priority features

  • Tags as links to that mechanic
  • Improve search function
  • Add favicon/vault icon
  • A way to organize/reorder your collection

Some more distance features

  • More than one list in collection
  • Friends/friends list
  • Browse other users
  • Rate games
  • Recommend games
  • A petting zoo
  • A batcave

Contact

Michael Clary - - [email protected]

Project Link: https://github.com/MichaelCClary/CapstoneOne

Acknowledgements

About

Board game collection

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published