Lewati ke isi

Arsitektur & Teknologi

EdigSSO Pro dibangun di atas stack teknologi modern dengan paradigma Micro-framework dan arsitektur Monolithic-layered agar mudah di-maintain namun berkinerja tinggi.

1. Arsitektur Singkat

┌─────────────────┐     ┌──────────────────┐
│  Browser (Web)  │     │ Chrome Extension │  (auto-login, Manifest V3)
│  Jinja2 + JS    │     │  service worker  │
└────────┬────────┘     └────────┬─────────┘
         │   HTTPS / REST         │
         └───────────┬────────────┘
                     ▼
        ┌────────────────────────────┐
        │   FastAPI (ASGI · Uvicorn) │   ← entry: app.main:app
        │  routes → services → models│
        └──┬─────────┬─────────┬─────┘
           │         │         │
   ┌───────▼──┐ ┌────▼────┐ ┌──▼─────────────┐ ┌──────────────────┐
   │PostgreSQL│ │  Redis  │ │   Groq  LLM    │ │  Odoo Instances  │
   │ users /  │ │ session │ │ llama 3.1/3.3  │ │ JSON-2 / XML-RPC  │
   │ instances│ │ + cache │ │  + llama-4 OCR │ │  (multi-tenant)   │
   │ + audit  │ └─────────┘ └────────────────┘ └──────────────────┘
   └──────────┘

2. Tech Stack Detail

Layer Teknologi Versi Target
Language / Runtime Python (python:3.11-slim) 3.11
Web Framework FastAPI 0.109.0
ASGI Server Uvicorn [standard] 0.27.0
Validation Pydantic + email-validator 2.6.0
Templating Jinja2 (server-rendered) 3.1.3
Frontend Vanilla JS + CSS (tanpa framework external) -
Database PostgreSQL 15-alpine
ORM / Migrations SQLAlchemy · Alembic · psycopg2-binary 2.0.25
Cache / Session Redis + redis-py 7-alpine
AI / LLM Groq SDK / LangChain 0.4.2
HTTP Client httpx 0.26.0
Auth / Crypto pyjwt · bcrypt · cryptography (AES-256) -
Containerization Docker + Docker Compose -

3. Komponen Odoo

EdigSSO bertindak sebagai Klien Eksternal dari Odoo. Interaksi dengan server Odoo memanfaatkan antarmuka standar: - SSO Login: Merekayasa antarmuka session di /web/login dan /web/session/get_session_info. - AI Agent API: Berkomunikasi sepenuhnya melalui protokol JSON-RPC 2.0 Odoo (External API), layaknya aplikasi client resmi Odoo. Tidak ada direct database access dari backend portal ke PostgreSQL milik Odoo.