Databases no longer exist & the spotify keys invalid. For showing purposes only, will not run locally.
A music queueing system for the offices of BJSS
For more information, view our wiki
For software documentation, view our software manual
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Head to https://nodejs.org/en/ to download the latest stable version of Node.js (this will install NPM too)
- Click and install the downloaded package
- To test if the installation is successful enter
node -v
&npm -v
in the terminal/commandline
NOTE: eduroam blocks the connection to mLab; the service we use for the live MongoDB database
How to get the development environment running:
- Clone from the GitHub repository
$ git clone https://github.com/perjermer/BJSSOfficeJukebox.git
- Move into the newly cloned folder
$ cd BJSSOfficeJukebox
- Install all the dependency modules
$ npm install
- Run the project locally (with a live database connection)
$ npm run dev
- Head over to your favored web browser and go to the following url
http://localhost:3000
To run the tests:
- Change the environment to testing; for OSX
$ export NODE_ENV=test
, for windows$ set NODE_ENV=test
- Run the test command
npm test
- Results of the tests will follow in the command line
PASS test/unit/services/priority.test.js
Priority tests
Increase user prirority
√ should return the same user priority if it is the max priority (4ms)
√ should return the max user priority if last time added is longer than time constant
√ should return the new user priority which is greater than before (1ms)
...
Test Suites: 2 failed, 2 passed, 4 total
Tests: 10 passed, 10 total
Snapshots: 0 total
Time: 3.486s
Ran all test suites.
- Node & npm - Backend framework and dependency management
- React.js & Next.js - Frontend library and server-side rendering framework
- Express.js - Minimalist web framework with Node
- Bootstrap - CSS framework
Please read CONTRIBUTING.md for details on our code of conduct, and the process of submitting pull requests.