01 — someli-platform setup¶
You've finished ../00-workstation-setup.md. Now stand up someli-platform.
1. Clone¶
cd ~/src/someli
git clone git@github.com:Someli-ai/someli-platform.git
cd someli-platform
git checkout dev_app # the active dev branch
Verify with the team if the active dev branch differs.
2. Pin Node 20¶
The repo has no .nvmrc — your version manager will not auto-switch. Set it yourself:
If yarn --version prints 2.x or above, see ../00-workstation-setup.md §4.
3. Install dependencies — TWO node_modules trees¶
This repo is actually two Node projects:
someli-platform/ ← the Nuxt 2 SPA
├── package.json ← Nuxt deps
├── yarn.lock
├── node_modules/ ← ~840 MB
│
└── polotno-editor/ ← independent React 18 + Parcel app
├── package.json ← Polotno + React deps
├── yarn.lock
└── node_modules/ ← ~600 MB
Install both:
# At repo root
yarn install # ~840 MB; takes a few minutes
# Polotno sub-project
cd polotno-editor
yarn install # ~600 MB
cd ..
Important: do not use
npm installhere. The lockfile isyarn.lockandnpmwill produce a different dependency tree.Disk requirement: plan for ~1.5 GB once everything is installed, plus build artefacts. SSDs strongly recommended.
4. The .env file¶
The repo does not ship a .env.example. Ask the team for the dev FE env.
The file lives at the project root: someli-platform/.env. Nuxt loads it via @nuxtjs/dotenv during build.
Variables you need at minimum¶
| Var | What | Example |
|---|---|---|
API_URL |
Where the FE points its axios baseURL |
http://localhost:5002 if running someli-api locally, else the team's dev API URL |
BASE_URL |
Front-end's own URL | http://localhost:3000 |
GTM_ID |
Google Tag Manager ID | optional; only needed if you exercise analytics |
CLARITY_ID |
Microsoft Clarity ID | optional |
Junior shortcut. For your first week, ask for a developer
.envthat already points to a stable dev backend. You generally do NOT need to runsomeli-apilocally to develop the FE — pointing at the team's dev API is usually easier.
5. Start the dev server¶
The Nuxt dev server starts on http://localhost:3000.
The first build takes 30–90 seconds (Nuxt webpack compile + Polotno bundle resolution). Subsequent saves trigger HMR — fast.
If you need to rebuild the Polotno editor¶
The editor's runtime code lives at the repo root as polotno-bundle.js (and .css). It is the built output of polotno-editor/. You only need to rebuild it if you change something inside polotno-editor/:
cd polotno-editor
yarn dev # Parcel dev server, http://localhost:1234 — interactive
# or, to produce the bundle the Nuxt app actually loads:
yarn build # writes polotno-bundle.js into the parent repo root
cd ..
# now restart `yarn dev` at the repo root if the Nuxt app was already running
6. Smoke test¶
Open http://localhost:3000. You should see the login page.
Log in with a dev account (ask the team for credentials). After login, you'll land on the dashboard or onboarding flow, depending on the account's state.
If pages don't load:
- Check the browser devtools network tab — failed requests usually point at a wrong
API_URL. - Check the browser devtools console — Vue 2 errors and runtime errors land here.
- Confirm the backend you point at is reachable:
curl $API_URL/health.
7. Browser tooling¶
- Install Vue DevTools v6.x (the legacy version — Vue 3 DevTools does not work with Vue 2.7). See
../00-workstation-setup.md§7. - The Vue DevTools panel exposes the component tree, Vuex store, and event bus — essential for debugging.
8. Other useful commands¶
# Production build (locally)
yarn build
yarn start # serves the built SPA
# Format with Prettier (someli-platform has Prettier configured; Someli-Designer does not)
yarn format
There is no test suite and no linter configured. You are the test suite.
9. You're done with setup¶
If yarn dev runs, you can hit http://localhost:3000, and login works against the dev API, you are ready.
Next: 02-stack.md.
Troubleshooting¶
| Symptom | Likely cause |
|---|---|
yarn install hangs on node-sass / node-canvas |
Missing system packages — see ../00-workstation-setup.md §2 |
| Login redirects in a loop | API_URL wrong, or backend unreachable — open devtools network tab |
| Polotno editor blank | polotno-bundle.js missing — rebuild inside polotno-editor/ |
Pages flash an error and redirect to /login |
Auth cookie mismatch; clear cookies (Application tab in devtools) and re-login |
Module not found: @nuxtjs/auth |
First-time installation may have been interrupted; re-run yarn install |
| HMR doesn't pick up component changes | Stop and restart yarn dev; sometimes Nuxt's file watcher gets confused after a long session |