/Social-Game-Library

A social-media web application that allows a user to make an account and log in, create, edit, and delete owned games entries following a template that saves to the user, add or remove friends, and share entries with added friends.

Primary LanguageJavaScript

Game Tracker

License: MIT

Description

A social-media web application that allows a user to make an account and log in, create, edit, and delete owned games entries following a template that saves to the user, add or remove friends, and share entries with added friends. This application is hosted by Heroku. This is intended for users who want to share what games they own with their in-site friends.

The application is hosted on a server and uses many node modules to make the development easier, including: Express, Express-Session, Express-Handlebars, MySQL2, Sequelize, Connect-Session-Sequelize, Bcrypt, Bootstrap-icons, Validator and Dotenv. It is a fully functional web page that uses:

  • Node.js and Express.js to create RESTful APIs
  • Handlebars.js as the template engine
  • MySQL and the Sequelize ORM for the database
  • GET, POST, PUT, and DELETE routes to deal with data
  • new Validator package & open-source code: Tiny Star Rating System In Vanilla JavaScript by nuflix
  • folder structure that meets MVC paradigm
  • authentication (express-session and cookies)
  • .env & .gitignore which protects personal information
  • Bootstrap to ensure a clean and responsive UI

Table of Contents

Installation

To install Node.js, follow the documentation Node.js

To install MySQL, follow the documentation MySQL

To install necessary dependencies, run the following command:

npm i

Usage

Access the webpage by going to the deployed site: Social-Game-Library.

Use the test account: Email: test@email.com password: !t3stmyPw0rd

If you want to run this on a local server, set the path to the Social-Game-Library folder in the terminal and log in to MySQL and source the schema.sql by running source db/schema.sql. Run npm seed to source the seeds folder, if you want preset data. Then run the server.js file by typing npm start. Go to http://localhost:3001 to acesss the site.

GameTrackerLibrary GameTrackerAddGame GameTrackerFeed GameTrackerFriendsList

License

This project is licensed under the terms of the MIT License.

Contributing

Authors include: David Gaither, Elbin Cenisev, & Nick Leon. If you would like to contribute alongside us, find our contact information below and reach out.

Questions

If you have any questions about the repo, you can either open an issue here on Github or contact any of us directly: David Gaither - Email: Gaitherdb@gmail.com - Github: Gaitherdb Elbin Cenisev - Email: elbincenisev@outlook.com - Github: Elbindb Nicolas Leon - Email: nicolas7@vt.edu - Github: NickLeon92