Scala Kindlings Derivation
SkillDev toolsScala auto-derivation with Kindlings for Circe and PureConfig. Use when replacing circe-generic/circe-generic-extras or PureConfig generic derivation with Kindlings while keeping normal Circe JSON APIs and PureConfig loading/writing APIs.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the Scala Kindlings Derivation skill
What this skill tells your AI
The instructions your AI receives, as published by alexandru/skills in skills/scala-kindlings-derivation/SKILL.md and read by ahel’s review.
Quick start
- Use Kindlings to derive type class instances; keep using library APIs for actual work.
- Circe: derive
Encoder,Decoder, orCodec.AsObject; keep usingasJson,decode, parsers, printers. - PureConfig: derive
ConfigReader,ConfigWriter, orConfigConvert; keep usingConfigSource.loadand PureConfig writers.
- Circe: derive
- Prefer companion-object instances for root types used at call sites; nested product types are derived as needed.
- Configure derivation with Kindlings config values/hints, not with Circe/PureConfig generic imports.
- Do not import
io.circe.generic.auto._,io.circe.generic.semiauto._,pureconfig.generic.auto._, orpureconfig.generic.semiauto._when using Kindlings.
APIs to reach for
- Circe JSON:
- Use
KindlingsEncoder.derived[A],KindlingsDecoder.derived[A], orKindlingsCodecAsObject.derived[A]. - For one-off operations, use
KindlingsEncoder.encode(value)orKindlingsDecoder.decode[A](json). - Cross-platform.
- Default field names are unchanged.
- ADTs are wrapped unless a discriminator is configured.
- Use
- PureConfig HOCON:
- Use
KindlingsConfigReader.derived[A],KindlingsConfigWriter.derived[A], orKindlingsConfigConvert.derived[A]. - JVM-only.
- Defaults match PureConfig: kebab-case keys,
typediscriminator, defaults enabled, unknown keys allowed.
- Use
References
- Load
references/circe-derivation.mdfor Circe derivation, annotations, discriminators, and migration notes. - Load
references/pureconfig-derivation.mdfor PureConfig derivation, default conventions, discriminator configuration, and supportedPureConfigknobs. - Load
references/best-practices.mdfor organization, call-site hygiene, and validation guidance.
Signals
- GitHub stars
- 53
- Forks
- 3
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
scala-kindlings-derivation- Source
- github.com/alexandru/skills