scala-pro

Guides enterprise Scala development with functional programming, Pekko, Spark, and effect systems.

30.5k|3.5k|Updated Jul 4, 2025
One-click install
npx skills add https://github.com/davila7/claude-code-templates --skill scala-pro
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: scala-pro
Source: https://github.com/davila7/claude-code-templates/tree/main/cli-tool/components/skills/development/scala-pro
Command: npx skills add https://github.com/davila7/claude-code-templates --skill scala-pro

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Building maintainable, high-performance Scala systems requires deep knowledge of functional programming, distributed architectures, and a complex ecosystem of libraries, which is hard to apply consistently without expert guidance.

Core Features & Use Cases

  • Functional Programming Guidance: Applies Scala 3 type system features, Cats Effect, ZIO, and category theory patterns to build composable, type-safe applications.
  • Distributed Systems Expertise: Designs actor-based systems with Apache Pekko/Akka, reactive streams with backpressure, and large-scale data processing with Apache Spark.
  • Enterprise Architecture: Implements DDD, event sourcing, CQRS, microservices with gRPC/REST, and resilience patterns like circuit breakers and retries.
  • Use Case: When migrating a legacy Akka microservice to Apache Pekko while introducing ZIO-based error handling and property-based tests with ScalaCheck, this Skill provides the patterns and best practices for each step.

Quick Start

Ask the assistant to design a type-safe REST API in Scala 3 using Http4s and Doobie with proper error handling and tests.

Frequently Asked Questions about scala-pro

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a type-safe REST API in Scala?

Use Http4s or Tapir to define declarative, type-safe HTTP endpoints in Scala. Combine them with Doobie for functional database access and Circe for JSON encoding to keep the entire stack compile-time checked.

Cats Effect vs ZIO for Scala effect systems?

Cats Effect provides a minimal, library-agnostic effect abstraction integrated with the Typelevel ecosystem, while ZIO offers an all-in-one effect type with built-in error channels, dependency injection, and structured concurrency. Choose based on ecosystem preference and team familiarity.

Can I migrate from Akka to Apache Pekko?

Yes, Apache Pekko is the open-source fork of Akka and supports migration of actor systems, cluster sharding, and streams with mostly package renames. Legacy Akka applications can be maintained while gradually transitioning modules to Pekko.

How do I handle errors functionally in Scala?

Model errors explicitly using Either, Validated, or Ior from Cats, or use ZIO's typed error channel. Avoid exceptions for expected failures and use exhaustive pattern matching over sealed trait ADTs for error cases.

Does Scala support native compilation for faster startup?

Yes, GraalVM native image compilation produces native executables from Scala applications, reducing startup time and memory footprint. This suits cloud-native and serverless deployments, though some reflection-heavy libraries need configuration.