Plan: Transitioning to Forward Deployed Engineer / AI Engineer
백엔드 엔지니어가 FDE·AI 엔지니어로 전환하기 위한 단계별 로드맵
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A browser-based 3D simulation of a UHT milk plant in three.js, from standardization to ambient distribution: ten stages running live, six fault scenarios, and a guided tour. The research, design and schedule are in plan/; the build is split into phases and agents in plan/agent-plan/.
Live: https://sophanit-keo.github.io/simulation-milk-process/, deployed to GitHub Pages from master each time CI passes there. It needs a browser with WebGL 2; it is checked in Chrome and Edge.
factory.html. Sign in with a Let Report account to see the real factory live: UHT 1, 2 and 3, the lines each one feeds, and each line's status, product, lot, CIP and open troubles, as Let Report holds them. A change in Let Report shows within a second (D19, phase 9). Which UHT feeds a line, its filler, speed and pack size are edited in Let Report.
factory.html#3d opens it (D20, phase 10).The plant opens the same way every time: day 8 at 06:00, ×10, seed 81006. URL options: ?mock runs the UI on the mock snapshot, ?debug adds lil-gui and window.__scene, ?greybox shows the grey boxes instead of the hero models.
Needs Node 22.13 or later (22.x LTS or 24.x; see .nvmrc).
npm ci
npm run dev # http://localhost:5173
npm run build # production build in dist/ (CI sets BASE_PATH=/simulation-milk-process/ for GitHub Pages)
npm run preview # serves dist/
npm run check # typecheck, lint, unit tests (Vitest) and asset tests: what CI runs first
npm test # unit tests only: formulas, acceptance runs, the 60-day run, scenarios, the demo script
npm run test:assets # the 3D models and textures against their specs and budgets
npm run e2e # browser tests (Playwright, Chromium); `npx playwright install chromium` once
Performance (needs a build, see tests/perf/baseline.md):
npm run build
node tests/perf/measure.mjs # draw calls, triangles and fps at every stage
node tests/perf/measure.mjs --path 60 --headed --channel chrome # the 60 fps check: a 60 s camera path at ×1 and ×10,000
| Document | What |
|---|---|
| docs/report.md | The report, with the technical chapter |
| docs/demo-script.md | The live demo, step by step, with the numbers to expect |
| docs/video-script.md | The demo video's shots and narration |
| docs/slides.md | The presentation, slide by slide |
| plan/DECISIONS.md, plan/hand-calculations.md | Every default with its source, and every expected value the tests check |
| Path | What | Owner agent |
|---|---|---|
src/contracts/ | Types every part shares: PlantConfig, Snapshot, Command, ViewEvent, units | lead |
src/data/plant.json | Default settings; decisions in plan/DECISIONS.md | process |
src/sim/ | Simulation core: clock, event queue, models, fault scenarios. No three.js, no DOM | sim |
src/scene/ | 3D view | scene |
src/ui/, src/styles/, index.html | Screen layout and controls | ui |
public/models/, assets/ | 3D assets and their licences | assets |
factory.html, src/factory/ | The factory board: contracts (types.ts, view.ts), the Let Report client, the model, the floor's layout, the page; no three.js until its 3D view (src/factory/scene/) opens | lead, factory-client, factory-model, factory-scene, factory-ui |
tests/, e2e/ | Unit and browser tests, and the perf check | qa |
docs/ | Report, demo and video scripts, slides | lead, process |
The agents' definitions (phases 9 to 12) are in .claude/agents/.