Skip to content
CAI
Software that uses CAICheck a score

slick/slick-codegen-example

52.5

Weak · 20 September 2026

31

lines of production code

Scala

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

This system is a documentation and example repository for the Slick database access library, specifically focusing on its code generation capabilities. It provides tutorials and runnable examples demonstrating how to configure Slick with an H2 database, including migrating from Scala 2 to Scala 3 and updating build configurations. The project serves as a reference for developers to understand how to generate Scala code from existing database schemas using modern Slick APIs.

Features

Added tutorial for Slick's default code generator

A new tutorial page has been added to demonstrate how to set up sbt to use Slick's preconfigured code generator for working with an existing database schema. The guide explains how to enable automatic and manual code generation, where the generated code is placed, and how to run the demo using sbt.

tutorial · high confidence

Initial project scaffolding and configuration

The repository is initialized with essential project files, including an Apache 2.0 license, code of conduct, and a NOTICE file. Build and formatting are configured via \.scalafmt.conf\ (version 3.11.5, Scala 3 dialect) and \renovate.json\ for automated dependency updates. CI automation is set up with \.mergify.yml\ to auto-merge PRs from Scala Steward, Slick Scala Steward, and Renovate bots. The \.gitignore\ is updated to exclude IDE-specific directories (VS Code, Metals, Bloop), and the README is updated to reflect the current build setup using \build.sbt\ and Scala 2.11.

(repo-wide) · high confidence

Behavioural changes

Migration to sbt 1.13 and replacement of build configuration

The project build has been upgraded from sbt 0.13 to sbt 1.13. The legacy \project/Build.scala\ file, which contained custom Slick code generation tasks, has been removed, indicating a shift away from the previous build structure. Additionally, the \sbteclipse-plugin\ has been replaced with \sbt-mergify-github-actions\ in the plugins configuration.

project · high confidence

Updated Slick codegen example for Scala 3 and modern Slick APIs

The codegen example has been migrated from Scala 2 to Scala 3, replacing the deprecated \scala.App\ trait with a standard \main\ method and updating imports to use the new Slick 3.x API (e.g., \H2Profile\ instead of \H2Driver\, and explicit \Await.result\ for query execution). The example now resides in \src/main/scala/slick/examples/codegen/Example.scala\ and uses \groupMap\ for result processing. Additionally, the SQL initialization script was updated to use \IF NOT EXISTS\ for table creation to prevent errors on repeated runs.

src/main · high confidence

Dependencies

Initial project setup with Slick 3.6.1 and H2 2.5.250

The project is initialized with a build configuration that sets Scala 2.13.18 as the language version and enables Scala 3 source compatibility. It introduces Slick 3.6.1 for database access, including automatic code generation of table definitions from an H2 database schema, and uses H2 2.5.250 as the embedded database. The setup also includes slf4j-nop 2.0.19 for logging and configures CI to run on Java 17.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Baseline

  • First survey — no prior run to compare against. CAI 52.

Lenses

  • Code Health 100
  • Architecture 43
  • Maturity 73
  • Readiness 41
  • Security 91

Changes since last survey

  • 300 commits — 298 feature/other, 2 fixes

By area

  • (repo) — 143 commits
  • (root) — 90 commits
  • project/build.properties — 52 commits
  • project/plugins.sbt — 8 commits
  • .github/workflows — 4 commits
  • src/main — 3 commits

Notable commits

  • fix: Merge pull request #56 from slick/revert-48-renovate/io.github.nafg.mergify-sbt-mergify-github-actions-0.x
  • fix: Revert "Update dependency io.github.nafg.mergify:sbt-mergify-github-actions to v0.6.0"
  • change: -Xsource:3
  • change: Add renovate.json
  • change: Add sbt run to CI
  • change: Add slick-scala-steward and renovate to mergifyExtraConditions
  • change: Align CI Java matrix with sbt 2.x requirement (JDK 17) (#204)
  • change: Avoid deprecated scala.App
  • change: Build on Java 11
  • change: Merge branch 'main' into renovate/org.slf4j-slf4j-nop-2.x
  • change: Merge branch 'main' into update/scala-library-2.13.12
  • change: Merge branch 'main' into update/slf4j-nop-2.0.1
  • change: Merge branch 'main' into update/slf4j-nop-2.0.8
  • change: Merge pull request #100 from scala-steward/update/slick-3.5.1
  • change: Merge pull request #101 from scala-steward/update/scala-library-2.13.14
  • change: Merge pull request #102 from slick/renovate/sbt-sbt-1.x
  • change: Merge pull request #103 from scala-steward/update/sbt-mergify-github-actions-0.8.2
  • change: Merge pull request #104 from slick/update-for-scala-changes
  • change: Merge pull request #105 from slick/renovate/sbt-sbt-1.x
  • change: Merge pull request #109 from slick/renovate/org.slf4j-slf4j-nop-2.x
  • …and 280 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

slick/slick-codegen-example was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 20 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 62fc5dbe1da65023b3e00c19d63a4eb9719abb10 — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-b51f968c9b10.