# Dev Setup

> NOTE: When using Gitpod/Codespaces, use at least 16GB RAM

Local dev with docker-compose

- Create `link-stack/.env` from Bitwarden `.env for root of link-stack`
- Run local dev with docker-compose:
  ```
  git clone ...
  cd link-stack
  make start-dev
  ```

Or for local dev of a single app

- Create `link-stack/apps/link/.env.local` from Bitwarden `.env.local for link-stack/apps/link`
- Create `link-stack/apps/bridge-frontend/.bridge.local.json` from Bitwarden `.bridge.local.json for link-stack/apps/bridge/frontend`
- Build locally for development:
  ```
  npm install
  make dev-bridge # this starts the containers
  npm run migrate   # this migrates the db
  npm run dev:bridge  # this runs bridge frontend and api
  ```

# TODO

- [ ] Delete old JWT config stuff
- [ ] Consolidate config
- [ ] Complete react-admin upgrade.. make all the bridge-frontend stuff work
  - https://marmelab.com/react-admin/Upgrade.html#no-more-prop-injection-in-page-components
- [ ] Get bridge-worker working
- [ ] Migrate off mui/styles
  - https://mui.com/material-ui/migration/v5-style-changes/
  - the codemods might help us?
