A collection of AI-powered skills for Effect-TS development, compatible with skills.sh.
npx skills add mrevanzak/effect-ts-skillsOr install individual skills:
npx skills add mrevanzak/effect-ts-skills/effect-ts-fundamentals
npx skills add mrevanzak/effect-ts-skills/effect-ts-errors
npx skills add mrevanzak/effect-ts-skills/effect-ts-resources
npx skills add mrevanzak/effect-ts-skills/effect-ts-concurrency
npx skills add mrevanzak/effect-ts-skills/effect-ts-anti-patterns| Skill | Description | Use When |
|---|---|---|
| effect-ts-fundamentals | Service pattern, Effect.gen, Layers | Starting with Effect-TS, defining services |
| effect-ts-errors | TaggedError, catchTag, error accumulation | Implementing error handling, validation |
| effect-ts-resources | acquireRelease, Scope, cleanup | Managing DB connections, file handles |
| effect-ts-concurrency | Fiber, Semaphore, Deferred, bounded parallelism | Parallel operations, rate limiting |
| effect-ts-anti-patterns | Common mistakes and fixes | Code review, debugging crashes |
effect-ts-fundamentals (start here)
|
+---> effect-ts-errors
|
+---> effect-ts-resources
|
+---> effect-ts-concurrency
|
v
effect-ts-anti-patterns
- Modern Service Pattern with
Effect.Service - Generator-based composition with
Effect.genandyield* - Layer-based dependency injection
- Type-safe errors with
Data.TaggedError - Selective error handling with
Effect.catchTag - Error accumulation with
{ mode: 'either' }
- Guaranteed cleanup with
Effect.acquireRelease - Scoped resources with
Effect.scoped - LIFO cleanup order
- Bounded parallelism with
{ concurrency: n } - Rate limiting with
Semaphore - Inter-fiber signaling with
Deferred
- Missing
yield*trap - Running effects outside boundaries
- Unbounded parallelism
- Using
throwinstead ofEffect.fail
Based on patterns from EffectPatterns.
MIT