Keyboard Warrior is a game where players type words to launch attacks and spells across multiple levels before facing the final boss to win the game.
Built as the Final Project for the Lighthouse Labs Web Development Bootcamp
Play the game here: https://keyboard-warrior.netlify.app/
Contributors: Sherwin Kwan, Jillian Martin, Helen Ouyang
- Front-end: React (created with create-react-app) with Sass for styling
- Back-end: Node.js + Express (boilerplate code is taken from express-generator)
- Database: PostgreSQL connected with Sequelize
- Testing: Cypress for end-to-end testing
- Additional Packages:
- axios
- react-skillbars
- react-step-progress-bar
- interweave
- normalize.css for base styling
Notes:
- These commands are intended to be run in a Bash shell.
- Make sure you have ports 3000 and 3001 available. 3000 is used for the React client and 3001 for the Express API server. If you wish to use different ports, see here for instructions on how to change the React port. The Express port may be changed by editing the constant
PORT
inserver/app.js
- You will need access to a Postgres database to run this app locally.
- Clone repo to your machine
- You should now see two directories called 'client' and 'server'. 'client' is the React app, 'server' is the Node server, and together they make up Keyboard Warrior!
cd client
and runnpm install
to install client-side dependenciescd ../server
and runnpm install
to install server-side dependencies- Create a file called .env.development (following the example in .env.example) within the server directory. Add your database credentials (DATABASE_URL, DB_HOST, DB_NAME, DB_PASS, and DB_USER here). To test that you have done this correctly, with the terminal still open in the /server directory, run
npm start
. You should see a message saying that you successfully connected to the database. - With the terminal still in the /server directory, run
npm run db:migrate
and thennpm run db:seed
. This will seed the database with seven different levels plus a boss level. - With 2 terminals open, one in the /server and one in the /client directory, run
npm start
in both of them. - Your browser should automatically open a page to localhost:3000 for you to view the app
- Music may fail to play properly in some browsers.
Version | Date | Notes |
---|---|---|
0.1.0 | 2020-11-29 | Original deploy |
0.1.1 | 2020-12-01 | Styling changes, more detailed leaderboards and result pages |