Installation - HelpRefugees/project-flamingo GitHub Wiki
Using this project requires the following:
- Node (10.12 at the time of writing, see
.nvmrc
for any updates) - Yarn (1.10.1 at the time of writing, see the
"engines"
section ofpackage.json
for any updates) - MongoDB
If you want to run the Docker E2E tests, you'll also need Docker.
Once you have the required dependencies you can run yarn install:all
in the
root project directory to install the required packages for both client and
server, then yarn ship
to execute all of the test suites and ensure everything
is working correctly.
To simplify the development workflow, we also suggest the following:
- Node Version Manager
direnv
- Visual Studio Code (the project comes with
recommended extensions and some workspace settings overrides in the
.vscode
directory) git-duet
if pairing
OS X
If you're using OS X you can use
pivotal/workstation-setup to set
up your machine; follow the installation instructions and run ./setup.sh node
to get started. Once the process has finished, run the following to install NVM,
Yarn and Mongo:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
nvm install 10.12
brew install yarn --without-node
brew install mongodb
brew services start mongodb
You can install
Docker for Mac if you want to
run the yarn e2e:docker
command.
Windows
If you are using Windows you should install MongoDB following these instructions.
Install yarn 1.10
npm install -g [email protected]
Running the project will be working only in dev mode using
yarn dev
make sure that MongoDB service is runnning
E2E
We had trouble running the Cypress tests from Yarn using Windows. Unfortunately,
this means that the ship
script doesn't work, so you will have to manually run
the tests then use --no-verify
to push your commits. To run the E2E tests
locally, we recommend either:
- Use the Docker containerised version
yarn e2e:docker
, which requires the installation of Docker for Windows and using the "Switch to Linux containers" option; or - Installing Cypress directly from the instructions on their website and manually importing the root project directory.