dial-architecture

Document architecture patterns and constraints for ai-dial-chat's NX monorepo.

503|60|Updated Sep 7, 2023
One-click install
npx skills add https://github.com/epam/ai-dial-chat --skill dial-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dial-architecture
Source: https://github.com/epam/ai-dial-chat/tree/main/.claude/skills/dial-architecture
Command: npx skills add https://github.com/epam/ai-dial-chat --skill dial-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The architecture reference provides a clear map of the NX monorepo layout, data flow, and responsibilities to help engineers reason about where logic belongs, how to extend the system, and how to align with DIAL Core.

Core Features & Use Cases

  • Architecture reference for the ai-dial-chat NX monorepo, including store domains, API routes, and epic wiring guidelines.
  • Guidance on layer responsibilities (frontend stores, API proxy, core integration) and dependency rules to ensure clean boundaries.
  • Use Case: when adding a new feature, follow the pattern to decide where code should live, how to route data, and how to test interactions end-to-end.

Quick Start

Read the architecture guide at .claude/guides/architecture.md and apply its rules when adding a store domain or API route.

Frequently Asked Questions about dial-architecture

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

FAQPage Schema
How do I structure a new Redux store domain in an NX monorepo?

Structure a new Redux store domain in an NX monorepo by following the architecture reference to assign layer responsibilities, wire selectors and actions, and enforce alias paths for internal imports to maintain clean boundaries.

What is the correct data flow for API routes using RxJS epics?

Data flow for API routes using RxJS epics routes requests through an API proxy layer to prevent server-side state, aligning interactions with DIAL Core integration constraints and maintaining clean dependency boundaries.

How do I organize layer responsibilities when extending an NX monorepo?

Organize layer responsibilities when extending an NX monorepo by separating frontend stores, API proxies, and core integration, using dependency rules to enforce clean boundaries across store domains and API routes.

Can I use Redux Toolkit with RxJS epics for state management?

Yes, you can use Redux Toolkit with RxJS epics for state management. The architecture enforces this combination alongside strict import conventions and prohibits server-side state to manage data flow.

Why does the architecture reference prohibit server-side state?

The architecture reference prohibits server-side state to maintain clean boundaries and ensure predictable data flow across the NX monorepo, relying entirely on Redux Toolkit and RxJS epics for frontend state management.