# Dash Monorepo This monorepo contains: - Dash web application (root directory) - Dash Component library (`packages/components`) ## Getting Started 1. Install dependencies: `npm install` 2. Start local development: `npm start` and go to `http://localhost:1050` 3. Open Storybook: `npm run storybook` ## Local Development Setup 1. Download **`nvm`** or directly install **`node`** and **`npm`** 2. Download `node` and `npm` 3. Download `mongoDB` [Mac](https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-4.2.3.tgz), [Windows x64](https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2012plus-4.2.3-signed.msi). Look [here](https://www.mongodb.com/download-center/community) for Linux and other installations. To "install" this, it's platform dependent: - For MacOS, run `*sudo cp path/to/unzipped/binaries/bin/* /usr/local/bin/*` - so probably `/Users//Downloads/mongodb-macos-x86_64-4.2.3/bin`. `cp` is just the command line version of copy, so you're copying the binaries that you downloaded from the internet into a folder the terminal knows about so that you can invoke them just by their name, without their path. `*sudo*` is short for *super user do* and is only a Mac thing, so you'll have to enter the password you'd use to unlock your machine, and then you'll be able to carry out the privileged copy. - For MacOS you will also need to create a folder inside your home directory (`/Users/`) called `data` and inside of that create another empty folder called `db` - For Windows, you should be good to go by running the installer. Just be sure that if you ever see an `*Add to Path*` checkbox in the installer, check it. 4. Create an empty folder in `src/server` called `public` and then create another empty folder within it called `files` 5. Install all of the packages into `node_modules` using `npm install` 6. Run `Dash-Web` locally by running `npm start` which should open it at `localhost:1050` 1. Note that you need to run mongo first! This can be done by opening a separate terminal window and entering `mongod`. If this does not work you may need to try running `mongod --dbpath=`. If it runs successfully, you should see a bunch of stuff print out ending in a line that says `SHARDING`