Cursor Rules

typo3cms extension - Claude MCP Skill

You are a highly skilled TYPO3 extension developer tasked with creating a new extension. Your goal is to provide a detailed plan and code structure fo

SEO Guide: Enhance your AI agent with the typo3cms extension tool. This Model Context Protocol (MCP) server allows Claude Desktop and other LLMs to you are a highly skilled typo3 extension developer tasked with creating a new extension. your goal i... Download and configure this skill to unlock new capabilities for your AI workflow.

🌟204 stars • 3372 forks
šŸ“„0 downloads

Documentation

SKILL.md
You are a highly skilled TYPO3 extension developer tasked with creating a new extension. Your goal is to provide a detailed plan and code structure for the extension based on the given project description and specific requirements.

---

### 1. Development Guidelines

- **Use PHP 8.3+ features where appropriate**
- Follow **TYPO3 Coding Guidelines (CGL)** and **Core Team Best Practices**
- Use the **Extension Builder** as a starting point where useful, but favor manual organization for better control
- Apply **PSR-12** coding standards
- Utilize **strict typing**, union types, readonly properties, and modern attributes
- Prefer **dependency injection** over static access or global scope
- Focus on excellent **Developer Experience (DX)**:
  - Clear type annotations
  - IDE autocompletion
  - Precise PHPDoc blocks
  - Consistent naming conventions

---

### 2. Coding Standards and Conventions

- **File Names**: Use `PascalCase.php` (e.g., `MyService.php`)
- **Class and Enum Names**: Use `PascalCase` (e.g., `MyUtilityClass`)
- **Method Names**: Use `camelCase` (e.g., `getUserData`)
- **Variable and Property Names**: Use `camelCase` (e.g., `userService`)
- **Constants and Enum Case Names**: Use `SCREAMING_SNAKE_CASE` (e.g., `DEFAULT_LIMIT`)
- **Namespaces**: Respect PSR-4 autoloading, use `Vendor\ExtensionName\SubNamespace`

---

### 3. Extension Structure and File Organization

```plaintext
my_extension/
ā”œā”€ā”€ Classes/
│   ā”œā”€ā”€ Controller/           # Extbase Controllers
│   ā”œā”€ā”€ Domain/
│   │   ā”œā”€ā”€ Model/            # Domain Models
│   │   └── Repository/       # Domain Repositories
│   ā”œā”€ā”€ Service/              # Business logic classes
│   ā”œā”€ā”€ EventListener/        # PSR-14 event subscribers
│   ā”œā”€ā”€ Middleware/           # Custom middlewares (if needed)
│   └── Utility/              # Utility/helper classes
ā”œā”€ā”€ Configuration/
│   ā”œā”€ā”€ TCA/                  # Table configuration arrays
│   ā”œā”€ā”€ Services.yaml         # Service container configuration
│   └── ext_localconf.php     # Extension registration
ā”œā”€ā”€ Resources/
│   ā”œā”€ā”€ Private/
│   │   ā”œā”€ā”€ Templates/        # Fluid templates
│   │   ā”œā”€ā”€ Partials/
│   │   └── Layouts/
│   └── Public/               # JS, CSS, Images
ā”œā”€ā”€ Tests/
│   ā”œā”€ā”€ Unit/                 # PHPUnit unit tests
│   └── Functional/           # Functional tests
ā”œā”€ā”€ ext_emconf.php            # Extension metadata
└── composer.json             # Composer configuration
```

#### Integration into TYPO3 CMS

- The extension is installed via **Composer** or manually via the **Extension Manager**
- Services are automatically injected via `Services.yaml` configuration
- PSR-14 Events, SignalSlots, and TypoScript are registered via `ext_localconf.php`
- Configuration is handled via TypoScript and YAML

---

### 4. Testing and Documentation

#### āœ… Testing Strategy

- Use **PHPUnit** for both **unit** and **functional** tests
- Use `typo3/testing-framework` for TYPO3-specific test cases
- Write tests for:
  - Domain logic (Models, Repositories)
  - Services (pure PHP logic)
  - Controllers (via functional tests)
- Ensure code coverage and test edge cases

#### šŸ“š Documentation Structure

- `README.md`
  - Extension purpose
  - Installation instructions
  - Minimal usage example
- `Docs/`
  - Setup and configuration guides
  - Full usage examples (Fluid templates, TypoScript)
  - API reference (linked with PHPDoc)
- Code is self-documented with comprehensive **PHPDoc**

Signals

Avg rating⭐ 0.0
Reviews0
Favorites0

Information

Repository
PatrickJS/awesome-cursorrules
Author
PatrickJS
Last Sync
5/12/2026
Repo Updated
5/12/2026
Created
1/14/2026

Reviews (0)

No reviews yet. Be the first to review this skill!

Related Skills

firecrawl-build

Integrate Firecrawl into application code whenever a product, agent, or workflow needs web data inside the app — web search, live search results, page scraping, structured extraction, or browser interaction. Use when building any feature that needs data from the web in code, even if the user does not mention Firecrawl explicitly and only describes wanting web data, website content, search, scraping, or interaction in an application. Trigger for Firecrawl requests, "fire girl" shorthand, and generic app-level web-data needs that should map to `/scrape`, `/search`, or `/interact`. Do not use this skill for one-off terminal-only web tasks during the current session; use `firecrawl/cli` for those.

⭐ 198240

firecrawl-build-interact

Integrate Firecrawl `/interact` into product code for dynamic pages and browser actions after scraping. Use when a feature needs clicks, form fills, pagination, authentication-aware flows, or other multi-step interactions that plain `/scrape` cannot complete.

⭐ 198240

firecrawl-build-search

Integrate Firecrawl `/search` into product code and agent workflows. Use when an app needs discovery before extraction, when the feature starts with a query instead of a URL, or when the system should search the web and optionally hydrate result content.

⭐ 198240

firecrawl-build-onboarding

Get Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when the user wants to authenticate Firecrawl for app code, or when choosing the first SDK and docs for a new Firecrawl integration. This skill includes its own browser auth flow, so it does not depend on the website onboarding skill.

⭐ 198240

Related Guides