Projeto ACBr Patterns

Provide architectural patterns for decoupling ACBr components in FreePascal Lazarus projects.

17|7|Updated Mar 26, 2026
One-click install
npx skills add https://github.com/delphicleancode/lazarus-spec-kit --skill projeto-acbr-patterns
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Projeto ACBr Patterns
Source: https://github.com/delphicleancode/lazarus-spec-kit/tree/main/.gemini/skills/acbr-components
Command: npx skills add https://github.com/delphicleancode/lazarus-spec-kit --skill projeto-acbr-patterns

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The ACBr Patterns Skill identifies and promotes architectural patterns to decouple ACBr-related code, improving maintainability, testability, and scalability in FreePascal/Lazarus projects.

Core Features & Use Cases

  • Establishes dependency injection and interface-based designs for ACBr components like NFe, CTe, and NFCe.
  • Provides guidelines for wrapper services, repositories, and clear separation between business logic and UI layers.
  • Use Case: A Lazarus app requiring ACBr integration can adopt these patterns to swap implementations, mock services in tests, and evolve components with minimal code changes.

Quick Start

Install the ACBr Patterns guidelines into your project and start refactoring a tight-coupled ACBr form to use a service wrapper and DI container.

Frequently Asked Questions about Projeto ACBr Patterns

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

FAQPage Schema
How do I decouple ACBr components in a Lazarus application?

Decouple ACBr components in Lazarus by adopting architectural patterns like dependency injection and interface-driven design, enabling you to separate business logic from UI layers and swap implementations easily.

What is the best way to mock ACBr NFe services for unit testing?

Mock ACBr NFe services by wrapping them in service interfaces and using a dependency injection container, allowing you to substitute real components with mock implementations during tests.

Can I use dependency injection with ACBr CTe and NFCe components in FreePascal?

Yes, dependency injection works with ACBr CTe and NFCe components in FreePascal by establishing interface-based designs and wrapper services that decouple tight coupling in your Lazarus project.

How do I refactor tightly coupled ACBr forms to use a service wrapper?

Refactor tightly coupled ACBr forms by introducing service wrapper guidelines and a DI container, extracting business logic into repositories and interface-driven services that separate concerns from the UI.

When should I apply architectural patterns to ACBr projects?

Apply architectural patterns to ACBr projects when you face tight coupling in components like NFe, CTe, and NFCe, requiring improved maintainability, testability, and scalability across your FreePascal Lazarus codebase.