Skip to content

This Week in Effect - 2026-03-20

Hi Effecters!

Welcome back to This Week In Effect (TWIE) - your weekly update of the latest developments in the Effect community and ecosystem.

Effect is a powerful TypeScript library that helps developers build complex, synchronous, and asynchronous programs. One key feature that sets Effect apart is how it leverages structured concurrency to provide features such as async cancellation and safe resource management, making it easier to build robust, scalable, and efficient programs.

To get started, below you’ll find links to our documentation as well as our guide for installing Effect. Enjoy!

Recent major updates:

 

Here are the main changes that landed in effect-smol.

  • AI & agentic features: Added Anthropic provider support for dynamic tools, introduced an Embeddings module with a new ModelDimensions service, fixed missing finish parts in LanguageModel streaming, fixed missing tool output persistence in streamed chat history, fixed incremental prompt fallback, added retry logic on invalid requests, and removed a duplicate ToolApprovalResponsePartOptions type.

  • Schema & data types: Added Schema.ArrayEnsure, Schema.Result decode/encode helpers, Schema.declare and Schema.declareConstructor docs, isMutableHashMap and isMutableHashSet predicates, a Config.Success type utility, ported Url from v3, and added Equivalence.Date. Fixed DateTime.makeUnsafe incorrectly appending "Z" to date strings containing "GMT".

  • HTTP & platform: Added HttpApiMiddleware.layerSchemaErrorTransform, allowed HttpApi middleware to accept error arrays, bumped undici minimum to ^7.24.0 for CVE fixes, improved OpenAI socket error handling and interrupt cancellation, and fixed ResponseIdTracker to use Map and clear on reset.

  • Bug fixes & internals: Fixed Stream.scanEffect hanging behavior, made Layer.mock work with Stream and Channel, fixed Tool.make type and runtime behavior when parameters are not provided, aligned CLI help description columns for long flags, added Effect.acquireRelease release dependency support, and fixed JSDoc wording for Effect.catch.

You can follow the full changelog directly in the effect-smol repository.

 

Effect 3.20 security update, a security advisory for Effect versions before 3.20.0: GHSA-38f7-945m-qr2g.

Effect 3.21.0 has been released! Take a look at our changelog to keep up with the latest changes.

Here are all the technical changes from the past week (note that changes included in the 3.21 release will not be listed).

 

The 3rd edition of Effect Berlin Meetup is happening on March 26th, hosted by acemate.

To stay informed about future events, visit our Effect Community Events calendar and subscribe for updates.

 

 

  • T3 Code is built pretty much entirely with Effect! 🔥

    T3 Code is built pretty much entirely with Effect and very large portions agent coded without much context engineering. Ive just had to nudge it that we’re using v4 and it Will go dig in the mode modules and read the inline documentation whenever it gets stuck / hits an old api

    Michael Arnaldi
    Michael Arnaldi
    @MichaelArnaldi

    GPT-5.4 is exceptional at Effect, just add the effect repo as a git subtree to give the agent access to best practices, skills don't work well. Check out effect.solutions

 

 

 

 

  • zed-effect-tsgo – A Zed editor extension that integrates @effect/tsgo, combining Microsoft’s native Go-based TypeScript compiler with Effect-specific diagnostics. Up to 10x faster compilation, no project-level setup required.

 

  • blikka – An open-source SaaS platform for managing photo marathons, built with Effect. Project by Villiam Strandh.

 

  • Effect Language Service — TypeScript-Go (Effect Office Hours 21 🔥)
Play

 

  • Schema TaggedErrorClass vs Data TaggedError
Play

 

  • Tagged Errors
Play

 

  • Effect Http API | Effect v4 Beta 🚀
Play

 

  • ExecutionPlan & ExecutionStrategy
Play

 

  • ChEffect - Part 14: A Local-First Meal Planning App written with Effect & LiveStore
Play

 

Don’t forget to listen to our Cause & Effect podcast hosted by Johannes Schickling and available on YouTube, X(Twitter), and audio platforms like Spotify and Apple Podcast.

Adam Rankin, CTO at Warp, joined Johannes Schickling to talk about using Effect to bring structure and composability to a growing TypeScript codebase, enabling a small, fast-moving team to stay productive while shipping reliable payment & payroll systems.

Play

 

More and more companies are adopting Effect in their projects. Here’s a list of companies looking for software engineers with Effect experience:

Disclaimer: Please note that these job postings are shared for informational purposes, and we encourage applicants to verify details directly with the hiring companies.

 

The Effect Merch Store offers a selection of Effect-branded items designed for the community. All orders are processed and fully managed through Printful.

 

That’s all for this week. Thank you for being a vital part of our community. Your feedback is highly valued as we fine-tune this format. Feel free to share your thoughts, and we’ll do our best to tailor it to the needs of our community.

Effect Community Team