Skip to content

Experience · Repository · Active

cs-tools

Internal tools catalog experience with a dedicated NestJS BFF, React frontend, local shared package, platform-auth login delegation and dedicated PostgreSQL persistence.

  • NestJS 11
  • Prisma
  • PostgreSQL
  • React 19
  • Vite
  • Chrome Extension MV3
  • Redux Toolkit
  • Tailwind

Spec sheet

Area

Experience / CS Tools

Public host

http://tools.cs.lvh.me:8080

Runtime shape

apps/api + apps/web + packages/shared

Backend port

3006

Frontend port

5180

Data store

Dedicated PostgreSQL

Responsibilities

  • Own the internal tools catalog and product-specific utility UX.
  • Expose a same-origin BFF that delegates login, setup and session resolution to platform-auth-service.
  • Persist product catalog state through Prisma in tools-postgres.
  • Keep frontend traffic same-origin and route all browser API calls through /api.
  • Provide a browser-local Chrome extension bridge for supported external tools without adding backend APIs.
  • Keep product-specific types aligned through the local shared package.

Interfaces and contract surface

  • GET /api/health
  • GET /api/auth/status
  • POST /api/auth/setup
  • POST /api/auth/login
  • POST /api/auth/logout
  • GET /api/catalog/navigation
  • GET /api/catalog/folders/:folderSlug/tools/:toolSlug

Internal modules

Backend

cs-tools api

NestJS BFF for CS Tools, owning catalog persistence and same-origin product APIs while delegating login, setup and session resolution to platform-auth-service.

Frontend

cs-tools web

React and Vite frontend for CS Tools, rendering the tool catalog, auth/setup flows, catalog administration and embedded utility routes through same-origin APIs.

Frontend

cs-tools chrome extension

Chrome Manifest V3 browser-local bridge that exports selected data from supported external tools into CS Tools frontend workflows without new backend APIs.

Package

cs-tools shared

Local shared package for CS Tools contracts and TypeScript types consumed by the BFF and frontend.

Consumers

  • Internal users via tools host

Dependencies and external touchpoints

Notes

  • The BFF stores product state locally and delegates shared auth/session responsibilities to Core.
  • The local stack exposes the experience through tools.cs.lvh.me:8080.

Source references

  • cs-tools/README.md
  • cs-tools/package.json
  • cs-tools/apps/api/package.json
  • cs-tools/apps/web/package.json
  • cs-tools/apps/chrome-extension/package.json
  • cs-tools/packages/shared/package.json

Login condiviso ​

cs-tools usa platform-auth-service come boundary unico per login password, setup e risoluzione sessione. Il BFF emette il cookie prodotto tools_session partendo dal token piattaforma e mantiene il frontend vincolato a chiamate same-origin sotto /api.

Extension bridge ​

apps/chrome-extension e un bridge Chrome Manifest V3 dedicato a sync browser-local da siti supportati verso il frontend CS Tools. La prima fonte abilitata e Anypoint Monitoring Logs verso Unipol / Monitoring con strategy interpreter-flow-logs. Il bridge non introduce API backend, CORS, Prisma, MCP, status operations o persistenza server-side.

Swagger viewer ​

API / Swagger Viewer e un tool web generico del catalogo cs-tools per importare e visualizzare specifiche Swagger 2 e OpenAPI 3 in YAML o JSON. Il parsing avviene nel browser, normalizza endpoint, tag, request, response e schema, e non introduce nuove API backend o persistenza server-side.

Gothic 1 Remake ​

Gothic 1 Remake / Chest Puzzle e un tool client-side per configurare pannelli con fori 1..7, relazioni di movimento tra pannelli e soluzione ordinata del puzzle. La simulazione e il solver restano nel frontend: il BFF salva solo i metadata del catalogo e non introduce API applicative dedicate.

Workspace reference: /Users/jeanpaul/projects/cs-repository