5. Externí závislosti
Kritické (bez nich aplikace nefunguje)
@base44/sdk — Base44 platforma
Ověřený fakt — veškerý datový přístup jde přes SDK:
import { createClient } from '@base44/sdk';
export const base44 = createClient({ appId, token, ... });
// Použití:
base44.entities.CalendarEvent.list(...)
base44.functions.invoke('sendNotification', payload)
base44.asServiceRole.connectors.getConnection('outlook')
Tato závislost prochází celou aplikací. Bez Base44 platformy aplikace nemá databázi, backend ani auth.
Resend API — e-maily
Ověřený fakt — používáno v sendNotification/entry.ts a clientAuth/entry.ts:
const RESEND_API_KEY = Deno.env.get('RESEND_API_KEY');
await fetch('https://api.resend.com/emails', { ... });
Konfigurační secret: RESEND_API_KEY (uložen v Base44 secrets).
Funkce: potvrzení rezervace, připomínky, OTP kódy, platební výzvy, ICS přílohy.
Microsoft Graph API — Outlook sync
Ověřený fakt — connector outlook.jsonc + funkce syncToOutlook/entry.ts:
const { accessToken } = await base44.asServiceRole.connectors.getConnection('outlook');
await fetch(`https://graph.microsoft.com/v1.0/me/calendars/${calendarId}/events`, { ... });
OAuth scopes: Calendars.ReadWrite, User.Read, offline_access.
Používáno pro synchronizaci termínů do Outlook kalendáře terapeuta.
Integrované (přítomné, ale podmíněné)
Stripe — platební brána
Ověřený fakt — knihovny jsou v package.json:
"@stripe/react-stripe-js": "^3.0.0"
"@stripe/stripe-js": "^5.2.0"
Nezjištěno — není jasné, zda je Stripe skutečně nakonfigurován a používán v produkci, nebo jen připraven. Platební metoda gateway v PaymentLog existuje, ale integrace není plně viditelná ze zdrojových souborů.
SMS notifikace
Ověřený fakt — kód v clientAuth/entry.ts:
// For phone: in demo we just return the code (in production use SMS gateway)
return Response.json({ demo_code: contact_type === 'phone' ? code : undefined });
Ověřený fakt — SMS provider není implementován. V demo módu se vrací OTP kód přímo v response. V produkci by bylo třeba integrovat SMS gateway.
NPM závislosti (frontend)
Ověřený fakt — klíčové knihovny z package.json:
| Knihovna | Účel | Migrovatelnost |
|---|---|---|
react-router-dom v6 |
Routing | Ponechat |
@tanstack/react-query v5 |
Data fetching + cache | Ponechat |
tailwindcss |
Styling | Ponechat |
@radix-ui/* (25 balíčků) |
UI primitiva (shadcn/ui) | Ponechat |
lucide-react |
Ikony | Ponechat |
framer-motion |
Animace | Ponechat |
date-fns |
Datum/čas | Ponechat |
@hello-pangea/dnd |
Drag & drop v kalendáři | Ponechat |
react-quill |
Rich text editor (notifikační šablony) | Ponechat |
jspdf + html2canvas |
PDF generování | Ponechat |
recharts |
Grafy (statistiky) | Ponechat |
react-day-picker |
Datepicker | Ponechat |
react-hook-form + zod |
Formuláře + validace | Ponechat |
moment |
Datum (starší kód) | Zvážit nahrazení date-fns |
three |
3D grafika | Odvozeno: pravděpodobně nepoužívané |
react-leaflet |
Mapy | Odvozeno: pravděpodobně nepoužívané |
canvas-confetti |
Vizuální efekty | Volitelné |
@base44/sdk |
Base44 specifické | Nutno nahradit vlastní API |
@base44/vite-plugin |
Base44 specifické | Nutno nahradit |
Build a deploy
Ověřený fakt — z base44/config.jsonc:
{
"installCommand": "npm install",
"buildCommand": "npm run build",
"serveCommand": "npm run dev",
"outputDirectory": "./dist"
}
Vite build → statický výstup do ./dist. Standardní SPA deployment.