dev-api: add developer portal, OpenAPI spec, and Flatenbadet case study

- New /developers/ page with API docs, SDKs, pricing, use cases
- OpenAPI 3.0 spec for Orders, Missions, Photos, Analytics
- Case study: Glasskiosken i Flatenbadet — complete ROI analysis
- Updated /order/ with recurring missions and frequency dropdown
This commit is contained in:
Bernt
2026-07-14 15:27:33 +00:00
parent 3c522e39f0
commit 1a12fb870b
6296 changed files with 911440 additions and 55607 deletions
+129
View File
@@ -170,3 +170,132 @@
- `??` boc/boc
- `??` boc/db/
<!-- memory-saver:38a5bf71aa21fb08 -->
## 2026-07-14 11:25 UTC
- ` M` boc/backend/automation/engine.go
- ` M` boc/backend/stress_test.go
- ` M` boc/backend/websocket/hub.go
<!-- memory-saver:05d9102ebb9e1d79 -->
## 2026-07-14 11:30 UTC
- ` M` boc/backend/handlers/handlers_test.go
- `??` boc/backend/handlers/crm_test.go
<!-- memory-saver:2492ba971050d157 -->
## 2026-07-14 11:35 UTC
- ` M` boc/backend/db/db.go
- `??` boc/BOC_V2_ARCHITECTURE.md
- `??` boc/web/FRONTEND_REFACTOR_PROPOSAL.md
<!-- memory-saver:37702c74ca71ec09 -->
## 2026-07-14 11:50 UTC
- ` M` boc/Makefile
- ` D` boc/c-runtime/Dockerfile
- ` D` boc/c-runtime/ipc.o
- ` D` boc/c-runtime/libboc_ipc.a
- ` D` boc/c-runtime/libboc_ipc.so
- ` D` boc/c-runtime/src/ipc.c
- ` D` boc/c-runtime/src/ipc.h
- ` D` boc/rust-service/Cargo.lock
- ` D` boc/rust-service/Cargo.toml
- ` D` boc/rust-service/Dockerfile
- ` D` boc/rust-service/src/analytics.rs
- ` D` boc/rust-service/src/ipc.rs
- ` D` boc/rust-service/src/lib.rs
- ` D` boc/rust-service/src/main.rs
- ` D` boc/rust-service/src/reports.rs
- ` D` boc/rust-service/target/.rustc_info.json
- ` D` boc/rust-service/target/CACHEDIR.TAG
- ` D` boc/rust-service/target/release/.cargo-artifact-lock
- ` D` boc/rust-service/target/release/.cargo-build-lock
- ` D` boc/rust-service/target/release/.cargo-lock
- ` D` boc/rust-service/target/release/.fingerprint/async-trait-e3b4366307923e69/dep-lib-async_trait
- ` D` boc/rust-service/target/release/.fingerprint/async-trait-e3b4366307923e69/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/async-trait-e3b4366307923e69/lib-async_trait
- ` D` boc/rust-service/target/release/.fingerprint/async-trait-e3b4366307923e69/lib-async_trait.json
- ` D` boc/rust-service/target/release/.fingerprint/atomic-waker-e92db70727ec2e75/dep-lib-atomic_waker
- ` D` boc/rust-service/target/release/.fingerprint/atomic-waker-e92db70727ec2e75/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/atomic-waker-e92db70727ec2e75/lib-atomic_waker
- ` D` boc/rust-service/target/release/.fingerprint/atomic-waker-e92db70727ec2e75/lib-atomic_waker.json
- ` D` boc/rust-service/target/release/.fingerprint/autocfg-cfdc11b3d5fe0685/dep-lib-autocfg
- ` D` boc/rust-service/target/release/.fingerprint/autocfg-cfdc11b3d5fe0685/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/autocfg-cfdc11b3d5fe0685/lib-autocfg
- ` D` boc/rust-service/target/release/.fingerprint/autocfg-cfdc11b3d5fe0685/lib-autocfg.json
- ` D` boc/rust-service/target/release/.fingerprint/axum-844fb32df64c81a5/dep-lib-axum
- ` D` boc/rust-service/target/release/.fingerprint/axum-844fb32df64c81a5/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/axum-844fb32df64c81a5/lib-axum
- ` D` boc/rust-service/target/release/.fingerprint/axum-844fb32df64c81a5/lib-axum.json
- ` D` boc/rust-service/target/release/.fingerprint/axum-core-c3e65a8ede5c372c/dep-lib-axum_core
- ` D` boc/rust-service/target/release/.fingerprint/axum-core-c3e65a8ede5c372c/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/axum-core-c3e65a8ede5c372c/lib-axum_core
- ` D` boc/rust-service/target/release/.fingerprint/axum-core-c3e65a8ede5c372c/lib-axum_core.json
- ` D` boc/rust-service/target/release/.fingerprint/base64-bffeb343559b9b16/dep-lib-base64
- ` D` boc/rust-service/target/release/.fingerprint/base64-bffeb343559b9b16/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/base64-bffeb343559b9b16/lib-base64
- ` D` boc/rust-service/target/release/.fingerprint/base64-bffeb343559b9b16/lib-base64.json
- ` D` boc/rust-service/target/release/.fingerprint/bitflags-765f98ff397854cf/dep-lib-bitflags
- ` D` boc/rust-service/target/release/.fingerprint/bitflags-765f98ff397854cf/invoked.timestamp
- ` D` boc/rust-service/target/release/.fingerprint/bitflags-765f98ff397854cf/lib-bitflags
- ` D` boc/rust-service/target/release/.fingerprint/bitflags-765f98ff397854cf/lib-bitflags.json
- ` D` boc/rust-service/target/release/.fingerprint/block-buffer-a4cfcc9869f4006d/dep-lib-block_buffer
- ` D` boc/rust-service/target/release/.fingerprint/block-buffer-a4cfcc9869f4006d/invoked.timestamp
- ... and 1024 more files
<!-- memory-saver:c450446bb99c449f -->
## 2026-07-14 11:55 UTC
- `??` boc/backend/handlers/crm_v2.go
- `??` boc/backend/models/
- `??` boc/backend/store/
<!-- memory-saver:fd328992cd8eef55 -->
## 2026-07-14 12:00 UTC
- `??` boc/backend/ledger/
- `??` boc/backend/pdf/document.go
<!-- memory-saver:c5c46bea2ded2897 -->
## 2026-07-14 12:10 UTC
- `??` boc/backend/pdf/document_test.go
<!-- memory-saver:fc3e11793973d198 -->
## 2026-07-14 12:15 UTC
- ` D` boc/backend/integration_test.go
- ` D` boc/backend/stress_test.go
<!-- memory-saver:0aaf804280c53b3d -->
## 2026-07-14 12:20 UTC
- `??` boc/backend/config/config_test.go
- `??` boc/backend/middleware/auth_test.go
<!-- memory-saver:dbfcf95c5287cb6c -->
## 2026-07-14 12:25 UTC
- `??` boc/web/assets/app.js
- `??` boc/web/assets/modules/
<!-- memory-saver:8f2f3aa09be1d84e -->
## 2026-07-14 12:35 UTC
- ` D` boc/backend/events/kafka.go
- `??` boc/LINUS_EVALUATION_ROUND2.md
- `??` boc/backend/automation/engine_test.go
<!-- memory-saver:6b6617e321e6073c -->
## 2026-07-14 12:45 UTC
- `??` boc/LINUS_EVALUATION_FINAL.md
- `??` boc/backend/main_test.go
<!-- memory-saver:b94367dc64b5f9ce -->
## 2026-07-14 15:00 UTC
- `??` boc/backend/auth/