This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
PlantUML is a tool that allows users to create UML diagrams from plain text descriptions. It supports various diagram types including sequence, class, activity, component, state diagrams, and more.
# Build the project
gradle build
# Run tests
gradle test- Java Version: Java 8 compatibility is required. Do not use
var, lambda features beyond Java 8, or other post-Java 8 syntax. - Indentation: Use tabs for indentation, not spaces.
- Braces:
- Opening braces on the same line as the statement.
- For
if/for/whilewith a single statement: no braces, statement on the next line with indentation. - For blocks with multiple statements: braces required, opening brace on the same line.
- Imports: Explicit imports, no wildcard imports.
- Final variables: Prefer
finalfor local variables when possible. - Boolean negation: Prefer positive conditions (
foo == false) over negation operators (!foo).
- Main source code is in
src/main/java/net/sourceforge/plantuml/ - The project uses a custom preprocessor and parser for PlantUML syntax
Generated code (do not modify):
gen- generated codeh- generated code
External/third-party packages (do not modify):
jcckit- external charting libraryzext- external libraryorg.stathissideris- external library (ditaa)