π Site Architecture
Overviewβ
Vartovii uses a unified domain architecture:
sentryanalytic.com β Landing (docs_site React app)
βββ /app β Dashboard (React)
βββ /api/docs β Swagger API documentation
docs.sentryanalytic.com β Technical documentation (Docusaurus)
βββ AI Agent
βββ Features
βββ Crypto Module
βββ API Reference
βββ Deployment
βββ Scrapers
βββ Reports
Public developer docs are served from knowledge-base/. The marketing landing
site remains a separate surface in docs_site/, even when both are edited in
the same repository.
Sites & URLsβ
| URL | Purpose | Source |
|---|---|---|
sentryanalytic.com | Landing page (info, roadmap, features) | docs_site/ |
sentryanalytic.com/app | Dashboard application | dashboard_app/ |
sentryanalytic.com/api/docs | Swagger API documentation | FastAPI auto-generated |
docs.sentryanalytic.com | Technical documentation | knowledge-base/ |
Landing Page (sentryanalytic.com)β
Beautiful React + Vite landing page with all product information.
Source: docs_site/β
Tech Stackβ
- Framework: React 19 + Vite
- Styling: Tailwind CSS
- Animations: Framer Motion
- Stats: react-countup
Sectionsβ
- Hero with CTAs
- Modules Showcase (Corporate + Crypto)
- Features Overview
- AI Analysis
- Tech Stack
- Roadmap
- Founder Story
Key Linksβ
| Button | Destination |
|---|---|
| π Dashboard | /app |
| π Documentation | docs.sentryanalytic.com |
| π API Reference | /api/docs |
Dashboard (/app)β
Main application for company analysis.
Source: dashboard_app/β
Featuresβ
- Company Search
- Trust Score Analysis
- Battle Mode
- AI Chat (ΠΠ°ΡΡΠΎΠ²ΠΈΠΉ)
- Crypto Intelligence
- Reports & PDF Export
The dashboard runtime enters through the router-first path
main.jsx -> RouterProvider -> router.jsx -> DashboardLayout. Internal cleanup
of unused legacy shells does not change the public dashboard URL structure or
feature surface. Frontend API traffic flows through shared helper modules in
src/utils/http.js and src/utils/api.js, which keep request formatting and
error handling consistent across dashboard features. Long-running collection and
report-refresh flows use status-aware backoff polling instead of fixed hot-loop
timers, reducing redundant background requests while data is still pending.
Export and rich-rendering dependencies also load lazily, so PDF, markdown, and
chart-heavy tooling are deferred until a user actually opens those feature
paths. The dashboard runtime also keeps user-facing status visible in the UI
rather than emitting direct debug-console noise during normal production flows.
The active dashboard runtime also no longer carries the legacy axios client;
request formatting and transport flow through the shared frontend HTTP helpers.
Core AI-assisted report and analysis paths also keep their evaluation coverage
visible in CI, while future telemetry and research enhancements can evolve
behind the same stable public dashboard routes. Cross-surface forensic journeys
now also preserve lightweight session continuity between the Farcaster mini app
and the main dashboard, so a user who opens a full report from a mini app scan
stays within one consistent analytics funnel. This continuity is based on
product interaction metadata, not on legal, investment, or employment
guarantees. Dashboard report interactions now use the same telemetry backbone,
which keeps report-open, refresh, rerun, export, and share actions inside the
same product-observability contract instead of relying on isolated logs. The
Farcaster mini app bridge now also uses a pinned tested SDK version rather than
a floating CDN alias, reducing unexpected client-runtime drift across
dashboard-handoff flows. The dashboard shell also reads runtime version metadata
from the live backend instead of relying on a hardcoded local badge. Corporate
PDF downloads now enrich the renderer with a structured Deep Research workflow
payload for entity brief, agent workflow, forensic/corporate fusion, confidence,
and action-plan blocks without changing the public report JSON response shape.
The same dashboard shell now also exposes an alert panel for entity-scoped
score-change subscriptions and watchlist notes as part of Alert System Beta.
Technical Documentation (docs.sentryanalytic.com)β
Docusaurus 3.7 documentation platform.
Source: knowledge-base/β
Tech Stackβ
- Framework: Docusaurus 3.7
- Search: Algolia DocSearch
- i18n: English, Ukrainian, German
- Hosting: Cloud Run (europe-west1)
- CI/CD: GitHub Actions
Featuresβ
- β Full-text search via Algolia
- β Multi-language support (EN, UK, DE)
- β AI-powered translations (Gemini 3 preview + 2.5 fallback)
- β Automatic deployment on push
- β Custom domain with SSL
- β v4-compatible markdown hooks configuration for broken markdown link handling
API Documentation (/api/docs)β
FastAPI auto-generates Swagger/OpenAPI docs.
The current public trust-score API surface also exposes explicit rate-limit
headers plus cursor-based search pagination, stable sort parameters, and
freshness metadata without requiring a separate route family beyond /api/v1.
The same active /api/v1 routes also keep one canonical error payload across
their 400/404/429/500 paths.
Sectionsβ
- Scraping Endpoints (job start, progress, control)
- Company Endpoints
- AI Chat & Feedback Endpoints
- Agent Tool Endpoints (search, trust score, company listings)
- Crypto Endpoints
- Analytics Endpoints
- Reports Endpoints
Deploymentβ
| Service | Platform | Region |
|---|---|---|
| Backend + Dashboard + Landing | Cloud Run | europe-west4 |
| docs.sentryanalytic.com | Cloud Run | europe-west1 |
The active production data layer now runs on managed Neon PostgreSQL under the same public application URLs. This infrastructure change does not alter public feature routes or API contracts on its own.
Auto-Deployβ
knowledge-base/**changes β GitHub Actions β Cloud Run (docs)- Backend changes β Manual gcloud deploy or GitHub Actions
Documentation Syncβ
| Location | Purpose | Consumers |
|---|---|---|
docs/ | Internal architecture, implementation, governance | Internal engineering |
docs_site/ | Landing page | Marketing, users |
knowledge-base/ | Public technical documentation and API references | Developers, integrations |
Documentation Publishing Ruleβ
- Public documentation covers public-facing product and technical surfaces only.
- Internal sprint execution notes, admin diagnostics, and operational cleanup
details remain in
docs/. - Internal sprint transitions and repository refactors do not change public feature or API commitments on their own.
- Public docs should use legally safe wording and avoid promises of guaranteed safety, outcomes, or verification.
- Public docs describe runtime behavior at the API/feature level, while repository-level DB hardening details remain in internal documentation.
- Documentation publishing remains CI-validated before release so public references stay synchronized with the approved product surfaces.
- The AI assistant keeps one stable public chat contract even as the internal runtime evolves through shared routing, prompt, tool, and model adapter layers.
Public API Docs Scopeβ
- Public API docs cover documented public endpoints and reference usage.
- Internal/admin operational endpoints are intentionally excluded from the public documentation contract.
Last updated: March 14, 2026