An open source web application for building, managing, and playtesting Magic the Gathering cubes.
If you are interested in contributing towards Cube Cobra, please read the Contribution guidelines for this project.
You will need to install NodeJS, MongoDB, and an IDE of your preference (I recommend Atom). You can find the necessary resources here:
You will need start a MongoDB background process, and create a database titled
nodecube. Refer to the official documentation for directions on how to set this up for your OS. Running
use nodecube in the mongo CLI is sufficient.
Atom (optional): https://atom.io/
Clone the project into a folder of your choice. Create a symbolic link from
cd CubeCobra/.. ln -s CubeCobra/cubecobrasecrets.example cubecobrasecrets
The resulting directory structure should look like this:
. ├── CubeCobra # Cloned repository └── cubecobrasecrets # link to `CubeCobra/cubecobrasecrets.example` └── email.js # Email secrets file └── etc...
Then, run the following commands in the root of the cloned repository:
npm install npm install nodemon -g node force_update.js # Download Scryfall assets. node seed.js # Seed the mongo database. # Linux/OSX users npm start # Start nodemon for backend server and webpack for frontend assets. # Windows users will need to use 2 terminal instances. npm nodemon npm run-script webpack-dev-server
Alternatively, if you are on Windows, you can use bash to mimic the Linux/OSX steps:
You will need to make sure you have
bash installed somewhere and run the following command [with your
bash path in place of the path below].
npm config set script-shell "C:\\Program Files\\git\\bin\\bash.exe"
Then you can start the program like so:
You can now open up a browser and connect to the app through: http://localhost:8080. Despite the fact that node says it is running on port 5000, you should use port 8080 to connect.
Nodemon will restart the application anytime there is a change to a source file.
To run the test suite, run
npm run test