How To Use Scala Formatter & Validator
📝 Step 1: Enter Scala Code
Paste your Scala code in the input area. Supports both Scala 2.13 and Scala 3 syntax, including objects, classes, methods, and control structures.
⚙️ Step 2: Choose Scala Version
Select your Scala version (2.13 or 3) for accurate validation and formatting that respects version-specific syntax (like significant indentation in Scala 3).
🔧 Step 3: Format or Validate
Click "Format Scala" to beautify your code with proper indentation (2 spaces) and consistent braces. Click "Validate Scala" to check for syntax errors.
📋 Step 4: Copy or Download
Use the "Copy" button to copy formatted Scala to clipboard, or "Download" to save as a .scala file.
💡 Pro Tips
- Use the Sample button to load an example Scala program
- Validation checks for: missing braces, incorrect indentation (Scala 3), unmatched parentheses, invalid modifiers
- Formatting preserves comments and string interpolators (
s"...", f"...", raw"...")
- Works with complex Scala constructs: case classes, pattern matching, for-comprehensions, implicits
🔍 Example
// Before formatting:
object HelloWorld { def main(args: Array[String]): Unit = { println("Hello, world!") for (i <- 1 to 5) { if (i % 2 == 0) { println(s"$i is even") } else { println(s"$i is odd") } } } }
// After formatting:
object HelloWorld {
def main(args: Array[String]): Unit = {
println("Hello, world!")
for (i <- 1 to 5) {
if (i % 2 == 0) {
println(s"$i is even")
} else {
println(s"$i is odd")
}
}
}
}
Frequently Asked Questions
What Scala versions are supported? ▼
We support Scala 2.13 and Scala 3. Each version has its own syntax rules—for example, Scala 3's significant indentation (optional braces) and new keywords like enum and export.
Does it validate all Scala syntax? ▼
The validator checks for common syntax errors including: missing braces/parentheses, incorrect indentation in Scala 3, invalid modifier combinations, misplaced keywords, and basic type annotation issues. It's designed for standard Scala code, not advanced macro constructs.
What formatting options are available? ▼
The formatter adds proper indentation (2 spaces), line breaks after braces, aligns method parameters, capitalizes keywords appropriately, and preserves comments and string interpolators. It follows common Scala style guidelines (like the Scala Style Guide).
Can I format multiple objects/classes? ▼
Yes! The tool handles files with multiple definitions (objects, classes, traits, etc.). Each top-level definition is formatted independently while maintaining overall readability.
Is my Scala code secure? ▼
Absolutely. All processing happens in your browser. Your code is never sent to our servers. It's completely client-side for privacy and security.
What are common Scala errors it detects? ▼
Common errors include: missing = in method definitions, incorrect indentation in Scala 3, unmatched braces, invalid pattern matching syntax, misplaced type annotations, and missing implicit or override modifiers where required.
Does it work with Scala 3 significant indentation? ▼
Yes, when you select Scala 3, the formatter respects significant indentation syntax (no braces) and validates proper indentation levels. It can also convert between brace-style and significant indentation if you prefer.
How accurate is the validation? ▼
The validator catches most syntax errors but may not catch semantic issues (like type mismatches or missing imports) since it doesn't compile your code. It's excellent for quick syntax checking and formatting.