frontend-architecture

Standardize re-frame frontend architecture with layered domain, router, and UI patterns.

Updated Aug 25, 2024
One-click install
npx skills add https://github.com/Kaspazza/doom-config --skill frontend-architecture-kaspazza
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frontend-architecture
Source: https://github.com/Kaspazza/doom-config/tree/main/eca/skills/frontend-architecture
Command: npx skills add https://github.com/Kaspazza/doom-config --skill frontend-architecture-kaspazza

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Standardizes frontend architecture for re-frame applications.

Core Features & Use Cases

  • Layered architecture guidelines covering Domain, Application, Router, Pages multimethod, and UI components.
  • UI components are pure and receive data via props, with i18n and dispatch markers driven from domain.
  • Clear data flow and separation of concerns across multi-layer frontend apps.

Quick Start

Define your domain UI data with transformation markers, translate texts in the application layer, and wire the data through the router to render the page.

Frequently Asked Questions about frontend-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a ClojureScript frontend architecture for re-frame applications?

Structure re-frame frontend architecture using a multi-layer pattern covering Domain, Application, Router, Pages, and UI components to enforce clear data flow and separation of concerns.

What is the best way to separate domain data transformations and UI components in re-frame?

Keep UI components pure by receiving data via props, while driving i18n and dispatch markers from the domain layer to maintain strict separation of concerns across the frontend application.

How does data flow work in a layered re-frame frontend architecture?

Data flows through markers and translations across multiple layers, starting from domain data transformations, passing through the application layer for i18n, and wiring through the router to render pages.

Can I use this architecture to standardize i18n markers and dispatch markers across ClojureScript pages?

Yes, the architecture enforces i18n and dispatch markers driven from the domain layer, standardizing how translations and event dispatches are handled across all pages and UI components.

Do I need a router-driven data loading pipeline for re-frame frontend architecture?

Yes, the architecture enforces a router-driven data loading pipeline that wires transformed domain data through the application layer to render pages via a Pages multimethod.

When should I use a multi-layer architecture pattern for frontend applications?

Use a multi-layer architecture pattern when you need to standardize re-frame applications with clear data flow, strict separation of concerns, and consistent i18n marker handling across complex UI features.