Перейти к содержанию

Документация FinGuide

Документация backend/API для FinGuide / «Финансовый капитал».

FinGuide строится как contract-first продукт: frontend редактирует входные данные финансового плана, backend владеет хранением, безопасностью и расчётами. Текущий этап — переход от mock/localStorage прототипа к real Spring Boot backend с persisted demo state и Keycloak/OIDC boundary.

Быстрые ссылки

Legacy mock Swagger: http://66.42.121.18/finguide-mock/ — только для переходного сравнения.

Что читать первым

Текущий статус коротко

Реализовано в real backend:

  • API index;
  • GET /me;
  • GET /plans/current;
  • dashboard/health/cashflow/scenarios read;
  • CRUD incomes/expenses/goals;
  • goals reorder;
  • Keycloak JWT Resource Server boundary;
  • user-owned current plan после логина;
  • защита authenticated users от чтения/мутации чужих планов;
  • frontend session restore без demo/default profile flash.

Открытые guardrails:

  • #16 — real Springdoc coverage vs checked-in OpenAPI;
  • #26 — запрет мутации общего anonymous demo seed plan.

Главная договорённость

Frontend не должен дублировать финансовую математику. Backend принимает persisted PlanState и ModelAssumptions, затем строит производные данные:

PlanState + ModelAssumptions
  -> годовой денежный поток
  -> сбережения и накопленный капитал
  -> пенсионная проекция
  -> dashboard, health score, scenarios

Канонический расчётный endpoint:

GET /plans/{planId}/analytics/cashflow