Upgrade Effect v4 beta compatibility and refresh package branding (#8)
Publish / publish (push) Successful in 25s
Lint / lint (push) Successful in 20s

# PR description

## Summary

- Upgrade the Effect v4 package from `4.0.0-beta.98` to `4.0.0-beta.101`.
- Bump `effect-lens-next` to `2.0.0-beta.101`.
- Normalize the v4 `LensImpl` and `ViewImpl` global symbol keys under the `@effect-lens` namespace.
- Upgrade the monorepo toolchain, including TypeScript 7, Turbo, Biome, the Effect language service, and npm-check-updates.
- Refresh the lockfile with the updated dependency graph.
- Add new wide and square Effect Lens SVG branding.
- Improve both npm README headers with:
  - The new square logo.
  - Package version, download, license, and Effect compatibility badges.
  - Clear warnings distinguishing the Effect v3 stable release from the Effect v4 beta.
- Include the square logo in both published npm packages.

## Validation

- TypeScript checks pass.
- Both SVG assets validate successfully.
- `npm pack --dry-run --ignore-scripts` succeeds for both packages.
- Both npm tarballs include their relative README logo assets.

---------

Co-authored-by: Julien Valverdé <julien.valverde@mailo.com>
Reviewed-on: #8
This commit was merged in pull request #8.
This commit is contained in:
2026-07-27 01:25:47 +02:00
parent 078dfc7712
commit 753215c850
11 changed files with 407 additions and 72 deletions
+21 -6
View File
@@ -1,16 +1,31 @@
# Effect Lens
<p align="center">
<img src="./logo-square.svg" alt="Effect Lens — the layered Effect mark under a magnifying lens highlighting code" width="220">
</p>
A Lens type for [Effect](https://effect.website/) to easily manage nested state.
<h1 align="center">Effect Lens</h1>
<p align="center">
A Lens type for <a href="https://effect.website/">Effect</a> to easily manage nested state.
</p>
<p align="center">
<a href="https://www.npmjs.com/package/effect-lens/v/beta"><img alt="npm beta version" src="https://img.shields.io/npm/v/effect-lens/beta?style=flat-square&color=6e56cf"></a>
<a href="https://www.npmjs.com/package/effect-lens"><img alt="monthly downloads" src="https://img.shields.io/npm/dm/effect-lens?style=flat-square&color=24b8c8"></a>
<a href="https://github.com/Thiladev/effect-lens/blob/next/LICENSE"><img alt="MIT license" src="https://img.shields.io/npm/l/effect-lens?style=flat-square&color=8b7bff"></a>
<a href="https://effect.website/"><img alt="Effect 4 beta" src="https://img.shields.io/badge/Effect-4.0_beta-b9f27c?style=flat-square&labelColor=263238"></a>
</p>
> **⚠️ Effect v4 beta:** This version is built for the Effect v4 beta. For Effect v3, use the [stable release](https://www.npmjs.com/package/effect-lens).
## Install
```
npm install effect-lens@beta effect@4.0.0-beta.98
yarn add effect-lens@beta effect@4.0.0-beta.98
bun add effect-lens@beta effect@4.0.0-beta.98
npm install effect-lens@beta effect@beta
yarn add effect-lens@beta effect@beta
bun add effect-lens@beta effect@beta
```
## Peer dependencies
- `effect` 4.0.0-beta.98
- `effect` 4.0.0-beta.101
## Quickstart