[{"data":1,"prerenderedAt":231},["ShallowReactive",2],{"navigation_docs_en":3,"-en-architecture":52,"-en-architecture-surround":226},[4,14,32,42],{"title":5,"path":6,"stem":7,"children":8},"The essentials","/en/proposition","en/1.proposition/1.index",[9,10],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Your need, understood","/en/proposition/comprehension","en/1.proposition/2.comprehension",{"title":15,"path":16,"stem":17,"children":18},"Overview","/en/architecture","en/2.architecture/1.index",[19,20,24,28],{"title":15,"path":16,"stem":17},{"title":21,"path":22,"stem":23},"Technical choices","/en/architecture/stack","en/2.architecture/2.stack",{"title":25,"path":26,"stem":27},"Security & compliance","/en/architecture/securite","en/2.architecture/3.securite",{"title":29,"path":30,"stem":31},"The 19 modules","/en/architecture/modules","en/2.architecture/4.modules",{"title":33,"path":34,"stem":35,"children":36},"The 8-month plan","/en/roadmap","en/3.roadmap/1.index",[37,38],{"title":33,"path":34,"stem":35},{"title":39,"path":40,"stem":41},"The method","/en/roadmap/methodologie","en/3.roadmap/2.methodologie",{"title":43,"path":44,"stem":45,"children":46},"Vortex-Soft","/en/equipe","en/4.equipe/1.index",[47,48],{"title":43,"path":44,"stem":45},{"title":49,"path":50,"stem":51},"References — eCampus","/en/equipe/references","en/4.equipe/2.references",{"id":53,"title":15,"badge":54,"body":55,"category":54,"description":219,"extension":220,"links":54,"meta":221,"navigation":223,"path":16,"seo":224,"stem":17,"tags":54,"__hash__":225},"docs_en/en/2.architecture/1.index.md",null,{"type":56,"value":57,"toc":211},"minimark",[58,75,80,83,86,89,92,96,99,173,176,180,196,200],[59,60,61,62,66,67,70,71,74],"p",{},"Every choice answers a requirement in the specification: ",[63,64,65],"strong",{},"≤ 3s on 4G",", ",[63,68,69],{},"99.5%"," availability, ",[63,72,73],{},"2,000 concurrent users",", FR/EN bilingual, offline, bank-grade security, and a roadmap reaching financial services.",[76,77,79],"h2",{"id":78},"the-end-to-end-architecture","The end-to-end architecture",[59,81,82],{},"From a site manager's smartphone to replicated object storage.",[84,85],"erk-stack-schematic",{},[59,87,88],{},"Every service has a single responsibility. The client never talks directly to the database; services communicate through explicit contracts. This decoupling keeps the system maintainable, resilient and workable by several engineers.",[90,91],"erk-isometric-stack",{},[76,93,95],{"id":94},"microservices","Microservices",[59,97,98],{},"Each domain (authentication, site, notifications, finance, media) is an autonomous service, deployed and scaled independently.",[100,101,102,115],"table",{},[103,104,105],"thead",{},[106,107,108,112],"tr",{},[109,110,111],"th",{},"Building block",[109,113,114],{},"Role",[116,117,118,130,141,152,163],"tbody",{},[106,119,120,127],{},[121,122,123,126],"td",{},[63,124,125],{},"Traefik"," (API Gateway)",[121,128,129],{},"Single entry point: TLS termination, routing, load balancing",[106,131,132,138],{},[121,133,134,137],{},[63,135,136],{},"NATS + JetStream"," (event bus)",[121,139,140],{},"Persistent async communication — no message lost, full traceability",[106,142,143,149],{},[121,144,145,148],{},[63,146,147],{},"gRPC"," (internal)",[121,150,151],{},"Typed, binary exchanges between services",[106,153,154,160],{},[121,155,156,159],{},[63,157,158],{},"GraphQL"," (mobile)",[121,161,162],{},"The mobile downloads only the data it needs — decisive on 4G",[106,164,165,170],{},[121,166,167],{},[63,168,169],{},"Kubernetes",[121,171,172],{},"Auto-scaling to 2,000 users · Blue-Green deploys with zero downtime",[59,174,175],{},"Decoupling isolates failures, lets each block evolve independently, and scales exactly where needed.",[76,177,179],{"id":178},"go-rust","Go + Rust",[181,182,183,190],"ul",{},[184,185,186,189],"li",{},[63,187,188],{},"Go"," — high-concurrency services (Auth, Site, Notifications): millisecond startup, tiny memory footprint, thousands of concurrent connections.",[184,191,192,195],{},[63,193,194],{},"Rust"," — critical modules (Finance, Media): memory safety, arithmetic precision, vault encryption.",[76,197,199],{"id":198},"ready-for-your-v2-and-v3","Ready for your V2 and V3",[181,201,202,205,208],{},[184,203,204],{},"The marketplace (V2) and financial services (V3) plug in as new services, without touching existing ones",[184,206,207],{},"The NATS bus is already there: a new domain subscribes to events",[184,209,210],{},"A versioned, documented API from day one",{"title":212,"searchDepth":213,"depth":213,"links":214},"",2,[215,216,217,218],{"id":78,"depth":213,"text":79},{"id":94,"depth":213,"text":95},{"id":178,"depth":213,"text":179},{"id":198,"depth":213,"text":199},"A decoupled microservices architecture, sized for your constraints.","md",{"icon":222},"lucide:layers",true,{"title":15,"description":219},"T5ZVYoCLKi2-kgkHtLLNoCVVKVJtIRdEYYhON7M5xBM",[227,229],{"title":11,"path":12,"stem":13,"description":228,"children":-1},"Our reading of the specification.",{"title":21,"path":22,"stem":23,"description":230,"children":-1},"Every technology justified by a requirement of your specification.",1784726248131]