Skip to content

Documentation repository focused on guiding and aligning the projects development with AI agents for ARC Labs Studio

License

Notifications You must be signed in to change notification settings

arclabs-studio/ARCKnowledge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“œ ARCKnowledge

Documentation License Git Submodule Skills

Central knowledge base and development standards at ARC Labs Studio

Development guidelines β€’ Architecture standards β€’ Best practices β€’ AI agent collaboration


🎯 Overview

ARCKnowledge is the single source of truth for ARC Labs Studio's development guidelines, architectural standards, and best practices. Designed for AI agents (primarily Claude Code) and developers working on ARC Labs projects.

What's included:

  • Clean Architecture & MVVM+C patterns
  • SOLID & Protocol-Oriented programming
  • Quality standards (testing, code review, documentation)
  • Git workflow & commit conventions
  • Development tools integration

🧠 Claude Code Skills Integration

ARCKnowledge now uses Claude Code Skills for progressive context loading, reducing token usage by ~87% compared to loading all documentation at once.

Available Skills

Skill Command Use When
Swift Architecture /arc-swift-architecture Designing features, MVVM+C, Clean Architecture, SOLID
TDD Patterns /arc-tdd-patterns Writing tests, Swift Testing, coverage requirements
Quality Standards /arc-quality-standards Code review, SwiftLint/Format, documentation, accessibility
Data Layer /arc-data-layer Repositories, API clients, DTOs, caching
Presentation Layer /arc-presentation-layer Views, ViewModels, @Observable, navigation
Workflow /arc-workflow Git commits, branches, PRs, Plan Mode
Project Setup /arc-project-setup New packages/apps, ARCDevTools, Xcode, CI/CD

How It Works

  1. CLAUDE.md loads automatically with core philosophy and critical rules (~200 lines)
  2. Use slash commands to load detailed context only when needed
  3. Each skill includes a SKILL.md summary + detailed documentation files

Example Usage

User: "I need to implement a new repository for user data"

Claude: [Uses /arc-data-layer to load data layer patterns]
        [Uses /arc-swift-architecture if architecture questions arise]

πŸš€ Installation

Adding to Your Project

# Add ARCKnowledge as a submodule
git submodule add https://github.com/ARCLabsStudio/ARCKnowledge.git ARCKnowledge

# Initialize the submodule
git submodule update --init --recursive

This creates an ARCKnowledge/ directory in your project with all documentation.

Cloning Projects with ARCKnowledge

# Clone with submodules
git clone --recurse-submodules https://github.com/YourOrg/YourProject.git

# Or initialize after cloning
git submodule update --init --recursive

Updating to Latest Version

# Update submodule to latest
git submodule update --remote ARCKnowledge

# Commit the update
git add ARCKnowledge
git commit -m "chore: update ARCKnowledge documentation"

πŸ“– Usage

For AI Agents (Claude Code)

Start with CLAUDE.md - loads automatically with core philosophy, critical rules, and skill references.

Load skills on-demand:

  • Use /arc-swift-architecture when designing features
  • Use /arc-tdd-patterns when writing tests
  • Use /arc-quality-standards when reviewing code
  • Use /arc-workflow when committing code

For Developers

Access documentation directly from your project:

# View main guidelines
cat ARCKnowledge/CLAUDE.md

# View skill documentation
cat ARCKnowledge/.claude/skills/arc-swift-architecture/SKILL.md

# Check specific topics
cat ARCKnowledge/Architecture/clean-architecture.md
cat ARCKnowledge/Quality/testing.md

πŸ—οΈ Documentation Structure

ARCKnowledge/
β”œβ”€β”€ CLAUDE.md                    # Main entry point (minified)
β”œβ”€β”€ README.md                    # This file
β”‚
β”œβ”€β”€ .claude/                     # Claude Code Skills
β”‚   └── skills/
β”‚       β”œβ”€β”€ arc-swift-architecture/
β”‚       β”œβ”€β”€ arc-tdd-patterns/
β”‚       β”œβ”€β”€ arc-quality-standards/
β”‚       β”œβ”€β”€ arc-data-layer/
β”‚       β”œβ”€β”€ arc-presentation-layer/
β”‚       β”œβ”€β”€ arc-workflow/
β”‚       └── arc-project-setup/
β”‚
β”œβ”€β”€ Architecture/                # Architectural patterns (reference)
β”‚   β”œβ”€β”€ clean-architecture.md
β”‚   β”œβ”€β”€ mvvm-c.md
β”‚   β”œβ”€β”€ protocol-oriented.md
β”‚   β”œβ”€β”€ singletons.md
β”‚   └── solid-principles.md
β”‚
β”œβ”€β”€ Layers/                      # Implementation layers (reference)
β”‚   β”œβ”€β”€ data.md
β”‚   β”œβ”€β”€ domain.md
β”‚   └── presentation.md
β”‚
β”œβ”€β”€ Projects/                    # Project types (reference)
β”‚   β”œβ”€β”€ apps.md
β”‚   └── packages.md
β”‚
β”œβ”€β”€ Quality/                     # QA standards (reference)
β”‚   β”œβ”€β”€ code-review.md
β”‚   β”œβ”€β”€ code-style.md
β”‚   β”œβ”€β”€ documentation.md
β”‚   β”œβ”€β”€ package-structure.md
β”‚   β”œβ”€β”€ readme-standards.md
β”‚   β”œβ”€β”€ testing.md
β”‚   └── ui-guidelines.md
β”‚
β”œβ”€β”€ Tools/                       # Development tools (reference)
β”‚   β”œβ”€β”€ arcdevtools.md
β”‚   β”œβ”€β”€ spm.md
β”‚   └── xcode.md
β”‚
└── Workflow/                    # Development workflow (reference)
    β”œβ”€β”€ git-branches.md
    β”œβ”€β”€ git-commits.md
    └── plan-mode.md

πŸ“š Skills Documentation Index

arc-swift-architecture

Covers Clean Architecture, MVVM+C pattern, SOLID principles, Protocol-Oriented Design, dependency injection, and singleton patterns.

Files included:

  • clean-architecture.md, mvvm-c.md, solid-principles.md, protocol-oriented.md, singletons.md, domain.md

arc-tdd-patterns

Covers Swift Testing framework, TDD workflow, mocking patterns, coverage requirements, and CI testing.

Files included:

  • testing.md

arc-quality-standards

Covers code review checklists, SwiftLint/SwiftFormat, documentation, README templates, package structure, and UI guidelines.

Files included:

  • code-review.md, code-style.md, documentation.md, readme-standards.md, package-structure.md, ui-guidelines.md

arc-data-layer

Covers Repository pattern, Data Sources, DTOs, caching strategies, error mapping, and SwiftData integration.

Files included:

  • data.md

arc-presentation-layer

Covers SwiftUI Views, @Observable ViewModels, ARCNavigation Router, state management, and MVVM+C implementation.

Files included:

  • presentation.md

arc-workflow

Covers Conventional Commits, branch naming, Git Flow, PRs, and Plan Mode.

Files included:

  • git-commits.md, git-branches.md, plan-mode.md

arc-project-setup

Covers Swift Package creation, iOS App setup, ARCDevTools integration, Xcode configuration, and CI/CD.

Files included:

  • packages.md, apps.md, arcdevtools.md, spm.md, xcode.md

🎯 Core Principles

ARCKnowledge embodies ARC Labs Studio's commitment to quality:

Core Values: Simple, Lovable, Complete β€’ Quality Over Speed β€’ Modular by Design β€’ Professional Standards β€’ Native First

Technical Standards: Clean Architecture β€’ SOLID Principles β€’ Protocol-Oriented Design β€’ Dependency Injection β€’ Swift 6 β€’ 100% Test Coverage (packages) / 80%+ (apps)

For complete philosophy and guidelines, see CLAUDE.md.


🀝 Contributing

Contributions to improve ARC Labs Studio's documentation are welcome!

Process:

  1. Fork and clone the repository
  2. Create a feature branch following git-branches.md
  3. Make focused changes - keep documents concise
  4. Update relevant SKILL.md if changing skill documentation
  5. Create a pull request with clear description

Commit format:

docs: add guidance on SwiftUI previews

Expanded presentation.md to include detailed requirements
for SwiftUI preview implementation with examples.

πŸ”„ Maintenance

Troubleshooting

Submodule not initialized:

git submodule update --init --recursive

Submodule detached HEAD:

cd ARCKnowledge
git checkout main
git pull origin main
cd ..
git add ARCKnowledge
git commit -m "chore: update ARCKnowledge"

Remove submodule:

git submodule deinit ARCKnowledge
git rm ARCKnowledge
rm -rf .git/modules/ARCKnowledge

πŸ“„ License

ARCKnowledge is available under the MIT License. See LICENSE for details.


ARC Labs Studio β€’ Made with πŸ’›

For questions or support, open an issue on GitHub

About

Documentation repository focused on guiding and aligning the projects development with AI agents for ARC Labs Studio

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •