image
Akan.js
English
DocsConventionsReferencesCheatsheet
image
Akan.js
Akan.js v2 docs are now available.View the v1 docs
DocsConventionsReferencesCheatsheet
Released under the MIT License
Official Akan.js Consulting onAkansoft
Copyright © 2026 Akan.js All rights reserved.
System managed bybassman
Workspace Convention
• Structure
• Format & Lint
App & Library Convention
• Assets (public/ private/)
• Components (ui/)
• Server Utils (srvkit/)
• Web Utils (webkit/)
• Common Utils (common/)
• akan.config.ts
Domain Convention
• Overview
• model.constant.ts
• model.dictionary.ts
• model.document.ts
• model.service.ts
• model.signal.ts
• model.store.ts
• Model.Template.tsx
• Model.Unit.tsx
• Model.Util.tsx
• Model.View.tsx
• Model.Zone.tsx
Scalar Convention
• Overview
• scalar.constant.ts
• scalar.dictionary.ts
• scalar.document.ts
• Scalar.Template.tsx
• Scalar.Unit.tsx
Service Convention
• Overview
• service.dictionary.ts
• service.service.ts
• service.signal.ts
• service.store.ts
• Service.Util.tsx
• Service.Zone.tsx
Workspace Convention
• Structure
• Format & Lint
App & Library Convention
• Assets (public/ private/)
• Components (ui/)
• Server Utils (srvkit/)
• Web Utils (webkit/)
• Common Utils (common/)
• akan.config.ts
Domain Convention
• Overview
• model.constant.ts
• model.dictionary.ts
• model.document.ts
• model.service.ts
• model.signal.ts
• model.store.ts
• Model.Template.tsx
• Model.Unit.tsx
• Model.Util.tsx
• Model.View.tsx
• Model.Zone.tsx
Scalar Convention
• Overview
• scalar.constant.ts
• scalar.dictionary.ts
• scalar.document.ts
• Scalar.Template.tsx
• Scalar.Unit.tsx
Service Convention
• Overview
• service.dictionary.ts
• service.service.ts
• service.signal.ts
• service.store.ts
• Service.Util.tsx
• Service.Zone.tsx
Previous
Model.View.tsx
Next
Overview

model.Zone.tsx

A Zone file contains client section components for pages. Zones compose server-fetched init/view data with Load wrappers, Unit/View display components, Util actions, and small section-level UI state.
Pages should usually pass route params and server data into Zones. Zones handle section composition, while Unit/View render display, Template renders forms, Util handles small actions, and Store owns state/actions.

File Convention And Props

Zone files usually use client hooks and Load wrappers, so they start with the use client directive. Their props commonly receive server-prepared ClientInit or ClientView values.
Path
lib/[model]/[Model].Zone.tsx
Directive
"use client"
List props
className, init, slice, context ids
View props
className, view, self, context data

List Zone With Load.Units

Use Load.Units when a Zone receives ClientInit list data from a server page. It hydrates initial list state, handles loading and empty states, and delegates each item to Unit components.
DbBackup.Zone.tsx
renderItem
Render one item, usually by delegating to Unit.Card or Unit.Abstract.
renderList
Render the whole list when the layout needs grouping, tabs, boards, or custom ordering.
renderEmpty
Render empty states, often with Model.NewWrapper or a link-style call to action.

View Zone With Load.View

Use Load.View when a Zone receives ClientView detail data. Load.View hydrates the selected model into store state, then passes the full model to View components.
Ticket.Zone.tsx

Section Orchestration Zones

Some Zones compose more than a simple list. They may combine local UI state, store state, Unit components, Util controls, and Model wrappers for a complete page section.
Ticket.Zone.tsx
Dessert.Zone.tsx

Live And Dashboard Zones

A Zone can also be a dashboard or a live section when the whole section depends on store state, subscriptions, or client-only layout behavior.
Summary.Zone.tsx
ChatRoom.Zone.tsx

When To Use Zone

Page
Route shell, params, and server fetch.
Zone
Page section composition and Load wrappers.
Unit / View
Model display and detail rendering.
Template
Form fields and form fragments.
Util
Small actions, toolboxes, and helpers.

Practical Rules

Keep pages thin by passing server init or view data into Zone components.
Use Load.Units for list sections and Load.View for detail sections.
Delegate item display to Unit components and full detail display to View components.
Use Util components for action controls inside Zones.
Keep core business rules in service, document, store, or constants instead of Zone render code.
model.Zone.tsx
File Convention And Props
List Zone With Load.Units
View Zone With Load.View
Section Orchestration Zones
Live And Dashboard Zones
When To Use Zone
Practical Rules