How coil-framework/coil works
Coil is a Rust web platform for HTML-first, multi-site applications, with Shoppr as its ecommerce reference app and Gitly demonstrating non-commerce use. A typical user request enters the runtime’s HTTP/routing layer; product capabilities include content rendering, catalog and checkout workflows, and customer-specific extensions. The repository also provides reusable domain modules and platform services. The README documents these product boundaries, but sampled source is limited, so the graph omits uncertain internal call wiring and treats the Stripe integration as optional.
Main entry points: lib.rs Shoppr App · execution.rs HTTP Execution · checkout.rs Checkout · composition.rs App Composition
Components 22
Request Runtime
- HTTP Execution
crates/coil-runtime/src/http/execution.rs - Route Matching
crates/coil-runtime/src/http/routing/mod.rs - HTML Rendering
crates/coil-runtime/src/render/mod.rs
Commerce
- Product Catalog
crates/coil-commerce/src/catalog.rs - Pricing
crates/coil-commerce/src/pricing.rs - Checkout
crates/coil-commerce/src/checkout.rs - Orders
crates/coil-commerce/src/orders.rs - Stripe Integration
crates/coil-commerce/src/module/stripe.rs
Content And Media
- CMS Pages
crates/coil-cms/src/model/page.rs - Media Library
crates/coil-media/src/library.rs - Memberships
crates/coil-memberships/src/subscription/subscription.rs - Events
crates/coil-events/src/booking.rs
Platform Services
- Authorization
crates/coil-auth/src/service.rs - Data Access
crates/coil-data/src/repository.rs - Managed Storage
crates/coil-storage/src/execution/mod.rs - Cache
crates/coil-cache/src/runtime.rs - Jobs
crates/coil-jobs/src/runtime.rs
Customer Apps And Extensions
- Shoppr App
apps/shoppr/crates/shoppr-app/src/lib.rs - Rust Extensions
crates/coil-customer-sdk/src/lib.rs - WASM Extensions
crates/coil-wasm/src/engine.rs - App Composition
crates/coil-app/src/composition.rs
Other components
- Site Visitor
Connections 10
- Site Visitor → HTTP Execution: sends request
- HTTP Execution → Route Matching: routes request
- Shoppr App → App Composition: configures app
- App Composition → HTTP Execution: builds runtime
- Shoppr App → Product Catalog: offers commerce
- Shoppr App → Checkout: supports checkout
- Checkout → Stripe Integration: optional payments
- Shoppr App → CMS Pages: uses content
- Shoppr App → Rust Extensions: adds customer logic
- Shoppr App → WASM Extensions: may install extensions