We’ve introduced an "Open in Effect Playground" button for select code snippets on the @EffectTS_ website! Now you can interactively explore and test code right from the docs 🚀 Check it out at effect.website
This Week in Effect - 2024-11-08
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 create 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:
- Effect is API stable with the Effect 3.0 release.
- Effect 3.10 has been released.
- The Effect community on Discord reached 3670+ members!
- We’re excited to announce the new Open in Effect Playground feature for code snippets on the Effect website.
Here are all the other technical changes from this week.
- Return sequential cause from Effect.acquireUseRelease (Bug Fix)
- Refactor Effect.gen to improve performance (Refactor)
- Implement Effect.suspend using OP_COMMIT (Feature)
- Add FromIterator primitive to improve Effect.gen performance (Feature)
- Avoid creation of subarray view in Base64.decode (Bug Fix)
- Support “dropping” & “sliding” strategies in Mailbox (Feature)
- Chore: fix NumberFromString category (Bug Fix)
- Add HttpApi.addHttpApi method, for merging two HttpApi instances (Feature)
- Improve platform/Worker shutdown and logging (Improvement)
- Switch from CPS to fiber runtime for Micro (Improvement, next-minor)
- Schema: BigDecimal Arbitrary restricted to the range of 0-18 (Optimization)
- URL and URLFromSelf schemas (Feature, next-minor)
- Simplify Socket internal code (Improvement)
- Support “dropping” & “sliding” strategies in Mailbox (Feature)
- Simplify DevTool/Server module (Improvement)
- Simplify Socket internal code (Improvement)
- Add withResponse option to HttpApiClient methods (Feature)
- Simplify HttpApiBuilder handler logic (Improvement)
- Simplify HttpApiClient implementation (Improvement)
- Support “dropping” & “sliding” strategies in Mailbox (Feature)
- Remove debug logging from NodeSocket (Optimization)
- Fix: NodeWorker not responding to interruption (Bug Fix)
- Fix broken basic auth base64 decoding (Bug Fix)
- Add HttpApi.addHttpApi method, for merging two HttpApi instances (Feature)
- Improve platform/Worker shutdown and logging (Improvement)
- Ensure Socket send queue is not ended (Bug Fix)
- Use plain js data structures for HttpApi properties (Improvement)
-
There are only a few early-bird spots left for the Effect Days Workshop tickets! Grab yours now to get a reduced price!
Only a few early-bird spots left for the Effect Days workshop tickets! 🎟️ Grab your ticket and join us on March 19-21 in Italy 🇮🇹 effect.website/events/effect-…
-
Jake Mor, CEO of Superwall, is hiring full-stack TS developers with Effect experience. Check out the job announcement below.
My experience with @EffectTS_ has been similar to when I first started using @tailwindcss. I immediately understood the benefits of errors as values, robust implementations for retrying, concurrency etc, but like TailwindCSS, I thought it made my code look uglier at first. I do…
-
The 3rd Effect Paris Meetup hosted by Spiko on November 5th ended up with a success. Thank you to those who attended and the organizers, and we look forward to the next one!
Happy to co-host the @EffectTS_ Paris meetup tonight in @Kiln_finance's beautiful offices. Oscar Roche and Nicolas Assouad from Spiko delivering keynotes 😎
-
Douglas Massolari blogged about Exploring Effect in TypeScript: Simplifying Async and Error Handling.
In our latest blog post, Douglas Massolari discusses the Effects library for TypeScript, a library that promises to improve error handling and side effects. He writes an app twice: once with Effects and once without to make the pros and cons apparent hubs.ly/Q02Xf-xv0
-
Rasmus Gustafsson, founder of Flytrap, shared his experience while learning Effect on X, and now reaping the benefits in structure, speed, and robustness for his project.
My experience with @EffectTS_ has been similar to when I first started using @tailwindcss. I immediately understood the benefits of errors as values, robust implementations for retrying, concurrency etc, but like TailwindCSS, I thought it made my code look uglier at first. I do…
-
Lucas Barake published a new article about Effect on his blog, exploring Effect Schema as a solution for Supporting Offline Mode in TanStack Query.
-
Sandro Maglione published a new resource on the Authentication JWT access and refresh tokens with Effect.
-
Mattia Manzati went live on Thursday with the fifth episode of his series about Building a small warehouse app with Effect.
Come and join while we continue developing a Warehouse App using @EffectTS_ ! See you today at 18:15 CET time on twitch.tv/mattiamanzati
The Second revision of HTTP API and the second episode of Building an Effect Warehouse App have already been published on the Effect YouTube Channel.
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