This is a web application for MineSweeper. It has single player & multiplayer mode.
The purpose of this project is to get experience in web application architecture and process (UI/UX design, database, server, client, sockets), as well as experiment on Angular 2 as UI framework.
Gameplay feature 3 difficulties. When user finishes playing the game, he/she can submit their highscore if database and server is setup. Global and Room chat is also only available if server is setup.
In multiplayer, you have to create a room, and wait for another user to join the room in order to start the game. The first player to finish the game wins.
Highscore chart only works if server and database is setup.
- open client/MineSweepers folder via terminal
- npm install --save
- npm start
- open server folder via terminal
- npm install --save
- npm start
- Set up MySql (Recommended to use MySQLWorkbench)
- Change settings on server/db/db.js, specifically the line: mysql://root:asdf123@localhost/sys to match your own configuration.
- Navigate to server/db
- run node init_db.js
Angular 2: Front-end UI Framework (used Angular cli to create seed project)
Font-Awesome: CSS library
BootStrap 4: CSS library
nodeJS: Server
Express: framework of nodeJS to handle API routes
MySQL: Database
Sequelize: MySQL ORM
Socket.io: Web Socket
Last Updated: 12/12/2017 Alex Wong