Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Introduction

New Scala is a new platform for the Scala language that supports the JVM and Scala.js runtimes.

The major motivation behind it is, indeed, because:

  • SBT or Maven require complex configuration with tendency to yield errors
  • SBT or Maven complicate publishing to the registry (like the Maven Central)
  • Scala Metals is a bit chaotic (it uses multiple hidden directories under the project root)
  • New Scala gets the opportunity to implement certain features others are not able to (like embedding resources in a way similar to Vite.js and Turbopack)