This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
PhpStorm Function Comments is an IntelliJ Platform plugin targeting PhpStorm. Built with Kotlin using the IntelliJ Platform Gradle Plugin (version 2).
# Build the plugin (outputs ZIP to build/distributions/)
./gradlew buildPlugin
# Run plugin in development IDE sandbox
./gradlew runIde
# Run tests
./gradlew test
# Run a specific test class
./gradlew test --tests "com.github.luminarix.phpstormfunctioncomments.MyPluginTest"
# Run a specific test method
./gradlew test --tests "com.github.luminarix.phpstormfunctioncomments.MyPluginTest.testProjectService"
# Verify plugin compatibility with target IDEs
./gradlew verifyPlugin
# Clean build
./gradlew clean build- Platform: IntelliJ Platform (PhpStorm), Kotlin, JVM 21
- Plugin ID:
com.github.luminarix.phpstormfunctioncomments - Target: PhpStorm 2025.2+ (sinceBuild: 252)
src/main/kotlin/- Plugin source codesrc/main/resources/META-INF/plugin.xml- Plugin configuration and extension pointssrc/main/resources/messages/- i18n message bundlessrc/test/kotlin/- Tests usingBasePlatformTestCasesrc/test/testData/- Test fixtures
The plugin registers extensions in plugin.xml:
toolWindow- Custom tool window factorypostStartupActivity- Project startup hook
Services use @Service(Service.Level.PROJECT) annotation and are retrieved via:
project.service<MyProjectService>()gradle.properties- Plugin metadata, version, platform targetbuild.gradle.kts- Build configuration, dependencies, signing/publishing setup- Plugin description is extracted from
README.mdbetween<!-- Plugin description -->markers
Tests extend BasePlatformTestCase from the IntelliJ test framework. Test data files go in src/test/testData/.