207 Commits
Author SHA1 Message Date
Bogdan Chadkin 8cb6a2a666 build: upgrade to node v20 (#3217)
Node 20 brings a few cool features
- stable test runner
- recursive readdir
- global crypto.randomUUID()
2024-04-21 13:40:44 +07:00
Bogdan Chadkin 868c9bb496 build: regnerate lockfile (#3201)
New lockfile format is applied only after changing any dependency. Here
removed override from typescript caz it just deduplicated instances.
2024-04-18 16:26:01 +07:00
Bogdan Chadkin 708cb61842 build: upgrade to pnpm v9 (#3198)
Ref https://github.com/pnpm/pnpm/releases/tag/v9.0.0

This release trims like 100MB from our node_modules

```diff
du -ckd1 node_modules
- 771_432
+ 872_444
```
2024-04-18 13:05:27 +07:00
Ivan Starkov 6d5e55b892 build: Update react + typescript hotfix (#3194)
## Description

Use canary react 

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2024-04-17 22:23:37 +03:00
Bogdan Chadkin e09f8a184e build: switch to pnpm linker (#3168)
With new remix setup we may finally not need hoisted linker which makes
pnpm very buggy.

Here added all missing dependencies to package.json and removed node
linker from .npmrc.
2024-04-14 23:07:53 +07:00
Ivan Starkov 7fdfb50fb0 build: CLI container to use in webstudio builder publish process (#3163)
## Description

Deployed tags:

<img width="1376" alt="image"
src="https://github.com/webstudio-is/webstudio/assets/5077042/7e7dd235-7e98-4ab7-9a28-e9d027fd0dbf">


## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2024-04-14 18:55:22 +03:00
Bogdan Chadkin 7abeb7b809 build: drop turbo (#3164)
There is no use for us from turbo. Pnpm does the same as runner. Caching
we still were not able to setup. Builds are superfast anyway. Checks are
actually faster since github tuned their actions.
2024-04-14 15:29:19 +07:00
Ivan Starkov 4deeaca2b3 build: cloudflare cli template (#3157)
## Description

Fully based on this guide
https://developers.cloudflare.com/pages/framework-guides/deploy-a-remix-site/

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2024-04-13 19:04:41 +03:00
Bogdan Chadkin ecc7c75e84 build: remove unused build scripts (#3123)
dev, build and dts are not necessary in not published packages and can
be removed. Builder vite setup is able to access webstudio export
conditions. Only prisma client need to be built before builder.

This will reduce CI time which runs build many times in various
workflows.
2024-04-09 20:46:22 +07:00
Bogdan Chadkin 2c1f7d23bb refactor: use vite in cli templates (#3088)
Here switched to vite in all templates.
Followed migration instructions and templates.
Still no way to test before new versions are published to pnpm.
2024-04-04 20:37:07 +07:00
Bogdan Chadkin e6695a84ac build: upgrade esbuild (#3086)
Need to bump storybook to use vite in remix.
2024-04-04 16:06:05 +07:00
Bogdan Chadkinandistarkov f5873f7738 refactor: upgrade to remix v2 (#3076)
Bumped remix to v2 everywhere in CLI, fixtures and builder. Caught a lot
of type stuff. Runtime seem to work without changes. Removed
@vercel/remix and had to upgrade `remix-auth` packages.

Unable to test netlify and vercel from monorepo and need to have sdk
remix with updated remix. So will test after packages release.

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory

---------

Co-authored-by: istarkov <istarkov@gmail.com>
2024-04-02 17:26:45 +07:00
Bogdan Chadkin 7e824eb1e4 build: bump checks (#2425)
- esbuild
- jest
- eslint
- eslint-typescript

Also removed "jest" binary from packages and use the one installed in
the root
and deduplicated all deps (got a little messy recently).
2023-10-06 16:33:33 +04:00
Bogdan Chadkin 10ca57d5ad chore: bump radix (#2423)
- select
(https://github.com/radix-ui/primitives/commit/a3dadb0a825524dd60629d426538dac74930791a)
- avatar
(https://github.com/radix-ui/primitives/commit/baf98624513229d65ff033152f6c0c7b74e2fcba)
- colors
(https://github.com/radix-ui/colors/commit/878dd0a118db8151b854979a2a7001ee6493bcec)
- dialog
- dropdown-menu
- popover
- popper
(https://github.com/radix-ui/primitives/commit/929e9f962ccb148dc6467684d1df8cec746dcae7)
- portal
- scroll-area
- toast
- focus-scope
(https://github.com/radix-ui/primitives/commit/2ce556da2faf526d6349a8d431293a8d0cc9b36c)
- tooltip
- navigation-menu
2023-10-06 13:01:35 +04:00
Ivan Starkov 357f35d7a5 feat: Implement Rate Limiting (#2393)
## Description

This PR integrates a rate-limiting mechanism into the app using Vercel's
edge-layer middleware in combination with the Hono framework. This
middleware is written in JS with full JSDoc TypeScript typings.

### Architecture & Strategy
Vercel Middleware: Serves as the front-line defense, running at the edge
for optimal performance.
Hono Framework: For granular control, we utilize Hono middlewares for
applying or skipping rate limits.
Additionally, non-expensive routes benefit from an ephemeral cache to
further optimize performance

### Current Limitations
Due to a dependency on CommonJS, we cannot use TypeScript fully.
Consequently, session configurations are not yet shared across multiple
files. All utility functions are present in a single file for the time
being.


### Logic Breakdown
- Assets: Rate limiting skipped.
- Service Calls: Rate limiting skipped.
- /rest/ai/* Endpoint: Rate limit of 20 requests per 5 minutes,
identified by userId or IP.
- Unauthorized Users: Rate limit of 5 requests per 5 seconds, based
solely on IP.
- Authorized Users: Rate limit of 20 requests per 5 seconds, based on
userId.

### Next Steps
Plan to migrate to ESM for enabling TypeScript support for better
maintainability.
Use multiple regional KV

### Debug endpoint.
[Rate limit debug
endpoint](https://webstudio-builder-kscynssns-webstudio-is.vercel.app/rate-limit-debug)


## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-10-03 12:16:18 +00:00
Bogdan Chadkin 66a4828ae9 build: upgrade to pnpm 8.8 (#2404)
Last few versions bring many fixes and performance improvements and
might solve some issues when add or upgrade packages.
2023-10-02 15:49:28 +04:00
Bogdan Chadkin 5f93ecb228 perf: generate page prop for links (#2357)
Moved links resolve into props normalizing which is called for whole
project before rendering converting page prop into string.

Remix links now check only if provided path matches any page. Ideally it
should be handled with navigation api to remove all complexity from
links components.

This will let us stop rendering props and assets data in generated
pages.

Also fixed links with hashes.
2023-09-24 20:07:15 +04:00
Ivan Starkov b538b74ef2 Enable CLI Usage in CI Environment (#2321)
## Description

- Allow overriding default templates with custom external or internal
ones.
- Ensure exact dependencies, e.g., workspace:* instead of workspace:^,
to address beta release issues.
- Enable passing buildId, authToken, and origin via flags during sync.
- Rename "host" to "origin" in the CLI.

Most code is custom template.

- [x] - Tested at SaaS

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-09-18 14:54:14 +03:00
Ivan Starkov f0c866aa99 Fixes dev mode (#2286)
## Description

Do not run dev inside `./fixtures` folder

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-09-08 15:01:53 +03:00
Ivan Starkov 4753c2ac46 Fix shared link name is not editable (#2279)
## Description

Shared link name is not editable because every input change closes
popover with the input.

Here is the fix and the explanation.

This is already fixed in rc radix versions and will be in the next
stable release

https://github.com/radix-ui/primitives/blob/28bebf2c6992d056244845c898abeff45dec2871/packages/react/focus-scope/src/FocusScope.tsx#L115

Without this PR the issue looks:

Editing input 
<img width="353" alt="image"
src="https://github.com/webstudio-is/webstudio/assets/5077042/b6ba547c-4286-45f2-b351-9122780cb482">
cause this button 
<img width="216" alt="image"
src="https://github.com/webstudio-is/webstudio/assets/5077042/4d6a26c3-3336-4995-b0b4-c38200e34e07">
to switch onto `pending` state
<img width="211" alt="image"
src="https://github.com/webstudio-is/webstudio/assets/5077042/f214d9a9-3454-4b1b-8603-48224fa370d1">
what cause handleMutations to move focus onto parent popover 
Child popover lost focus and closes.


## Steps for reproduction

Click Share, Edit link name, see it works

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-09-08 10:13:09 +03:00
Bogdan Chadkin dbbbf84c34 Drop commonjs (#2255)
Seems like we no longer need commonjs in most packages. Only prisma
cannot be bundled on server because has binary.

Now new package setup is easier and require only esbuild instead of
custom solution.

Cli install size

```diff
du -ck node_modules
- 35516
+ 33192
```
2023-09-06 20:47:13 +04:00
Bogdan Chadkin 8402316908 Bump storybook and build tools (#2253)
- storybook
- vite
- react types
- tsx
- esbuild (glob entry points support)
2023-09-06 17:49:56 +04:00
Bogdan Chadkin 1b50873728 Bump checks (#2236)
- jest
- type-fest
- typescript
- prettier
- eslint
- typescript-eslint
2023-09-04 13:25:57 +04:00
Bogdan Chadkin 0d152c8909 Bump checks (#2099)
- prettier
- eslint
- typescript-eslint
2023-08-12 16:59:17 +04:00
Bogdan Chadkin 107a2c0ce5 Bump to storybook 7.2 (#2059)
- https://github.com/storybookjs/storybook/releases/tag/v7.2.0
- https://storybook.js.org/blog/july-2023-update/
2023-08-06 14:20:05 +04:00
Bogdan Chadkin 004232da63 Bump checks packages (#2002)
- jest
- simple-git-hooks
- eslint
- size-limit
2023-07-28 23:37:33 +03:00
Bogdan Chadkin 886f839951 Upgrade to prettier v3 (#1973)
Ref https://prettier.io/blog/2023/07/05/3.0.0.html

Smaller package size, trailing comma for types always enabled, though I
disabled it for code.
2023-07-24 18:36:10 +03:00
Bogdan Chadkin 7b9b9216f2 Bump storybook (#1968)
Here bumped, storybook and esbuild and deduped all dependencies (mostly
babel packages)

- https://github.com/storybookjs/storybook/releases/tag/v7.1.0
- https://github.com/evanw/esbuild/releases/tag/v0.18.0

```diff
Packages:
- 2203
+ 1902
```
2023-07-24 13:55:31 +03:00
Bogdan Chadkin e98fe09eda Optimize typechecking (#1971)
Before we run two configurations of typescript on CI. Though this leads
to very long checks. Here I enabled "typecheck" script to generate dummy
.d.ts files to enable additional checks.

```diff
pnpm run -r typecheck (serial)
- 239.13s
+ 262.94s
pnpm turbo run size-test build checks dts --force (parallel locally)
- 2m30.609s
+ 1m47.622s
- pnpm turbo run size-test build checks dts --force (Ci)
- 6m 5s
+ pnpm turbo run size-test build checks --force (Ci)
+ 3m 22s
```
2023-07-24 11:38:19 +03:00
Bogdan Chadkin 05df3910f5 Support effectful expressions in component actions (#1914)
Here added support for callbacks or event handlers on components which
basically can do only assignment to variables for now with extended
(with assignment operator) syntax of expressions.
2023-07-11 20:27:06 +03:00
Bogdan Chadkin a8ecaf3a99 Migrate storybook to new format in sdk (#1924)
Here bumped storybook and migrated stories to Meta and StoryObj types
from deprecated ComponentMeta and ComponentStory.
2023-07-11 20:15:38 +03:00
Bogdan Chadkin b8c18be051 Migrate to node v18 (#1857)
Ref https://github.com/webstudio-is/webstudio-builder/issues/1191

Only removed stucturedClone polyfill for now
2023-06-27 18:17:48 +03:00
Bogdan Chadkin e66e118ad5 Migrate to storybook 7 (#1862)
See https://storybook.js.org/docs/react/migration-guide and
https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#from-version-65x-to-700

- all configs are now ts/esm
- had to add hack (process.env.NODE_ENV) to workaround storybook bug
- webpack is gone
- renamed storybook:run to storybook:dev
- amount of packages reduced from 2456 to 2060
2023-06-27 10:02:58 +03:00
Ivan Starkov 0827fd3e6b Forms playground (#1823)
## Description

Closes #1806

Most changes in this PR is ability to test it locally with saas
described here
https://dev.to/istarkov/local-development-with-public-and-private-monorepos-3554

Documentation how to test saas is added to SaaS

`action` and `method` now available for adding
`hidden inputs` are now cleared by prefix from formData (to not send ws
inputs anywhere)

`action` and `method` are now read at server using `getFormProperties`


## Steps for reproduction

Create form, add action and method, see form has hidden inputs 

<img width="273" alt="image"
src="https://github.com/webstudio-is/webstudio-builder/assets/5077042/3f50dc14-9779-4da1-9bcf-730ad377c72f">


## Code Review

- [x] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
- [x] hi @TrySound , I need you to do
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-06-23 10:38:06 +04:00
Bogdan Chadkin c40f5e507d Replace @types/css-tree override with patch (#1783)
Split from https://github.com/webstudio-is/webstudio-builder/pull/1634

We may need more things from css-tree and reexporting everything is
harder to maintain so here added patch instead of types override.
2023-06-14 17:51:13 +03:00
Ivan Starkov e1b0c7808e Update typescript (#1734)
## Description

Removes errors with vscode and tsconfig

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-06-09 11:03:23 +03:00
Giuseppe 6a9c4c013c Initial CSS parser (#1652)
## Description

This PR moves the parse-css-value utility that was before part of the
builder app to the css-data package.

In this package we are adding an initial `parse-css` utility that will take
CSS and convert to a format that we can work on within Webstudio. For
now it is relatively simple and it supports only CSS classes parsing.
2023-05-23 09:47:13 +02:00
Bogdan Chadkin 50a54a7c70 Drop unused deps (#1623)
Found these dependencies are not used in our project. Can be safely
removed.
2023-05-13 15:06:01 +07:00
Bogdan Chadkin 0ac4050d7e Upgrade to pnpm 8.4 (#1578)
Ref https://github.com/pnpm/pnpm/releases/tag/v8.4.0
https://github.com/pnpm/pnpm/releases/tag/v8.3.0

- pnpm install && pnpm install no longer needed
- pnpm dedupe simplifies upgrading deps, didn't enable check in CI caz
taking too long
2023-05-05 18:07:14 +07:00
Bogdan Chadkin 496c9197ad Upgrade to react 18 (#1452)
Ref https://react.dev/blog/2022/03/29/react-v18
https://react.dev/blog/2022/03/08/react-18-upgrade-guide

- bumped all deps to use react 18
- storybook still somehow enforces react 17 (but not react-dom) so
forces with overrides until bump of storybook
- both storybook and remix still use legacy api so concurrent features
are not yet enabled. Will do in separate PRs
- fixed weird react-hot-toast error which expose function as renderable
type
- fixed a few untyped useCallback which failed with new react types
- sdk size became a little bigger
2023-04-16 15:33:03 +07:00
Mateusz Burzyński 678c9a273f Generate declaration files before publishing packages (#1351) 2023-04-07 07:14:18 +02:00
Bogdan Chadkin d0f5146cef Drop chromatic from dependencies (#1370)
We probably don't need to have chromatic in dependencies.
Especially since the latest version is getting 20MB bigger

https://packagephobia.com/result?p=chromatic

Also removed builds from chromatic workflows, "source" export condition
allows to avoid it.
2023-04-05 12:19:09 +07:00
Bogdan Chadkin b4d21aadff Run global prettier check (#1353)
Here add check to have formatting always applied in case git hook was
ignored or not run for some reason.

Cached prettier for whole project is run within 2-3 seconds.
2023-04-03 16:48:10 +07:00
Mateusz Burzyński 051cddfea4 Upgrade to TypeScript 5 (#1345) 2023-04-01 16:09:27 +02:00
Bogdan Chadkin 73c812a4f4 Upgrade to pnpm 8 (#1320)
Ref https://github.com/pnpm/pnpm/releases/tag/v8.0.0

The new version got a lot of stuff enabled by default including the one
I didn't enabled before "dedupe-peer-dependents" which will make
packages upgrade so much easier.
2023-03-29 18:59:46 +07:00
Bogdan ChadkinandNathan Hammond 2a7340353c Upgrade turbo (#1319)
Rebased https://github.com/webstudio-is/webstudio-builder/pull/1111.
Took all changes which already work. Will try to enable caching in
separate PR.

---------

Co-authored-by: Nathan Hammond <nathan.hammond@vercel.com>
2023-03-29 18:54:19 +07:00
Bogdan Chadkin 13e2298c97 Upgrade tsx (#1298)
Bumped esbuild inside tsx to the latest version.
2023-03-27 17:49:19 +07:00
Bogdan Chadkin 7ec230462b Upgrade esbuild (#1297)
- got rid of unused esbuild-node-externals package
- removed esbuild override/resolution to old version
- deduplicateed webpack 4 and 5 into single 4 instance
- upgraded esbuild to the latest version with "context" api instead of
incremental flag which potentially forces to fix the issue with remix
once they upgrade

Esbuild bump fixed the issue with remix going infinite watch loop after
any changes in packages and looks like esbuild in remix no longer blocks
parallel turbo run!!!
2023-03-27 14:36:57 +07:00
Andras Bacsai c9cb63eaa3 Add lostpixel to builder (#1230)
## Description

1. What is this PR about (link the issue and add a short description)

## Steps for reproduction

1. click button
2. expect xyz

## Code Review

- [ ] hi @kof, I need you to do
  - conceptual review (architecture, feature-correctness)
  - detailed review (read every line)
  - test it on preview

## Before requesting a review

- [ ] made a self-review
- [ ] added inline comments where things may be not obvious (the "why",
not "what")

## Before merging

- [ ] tested locally and on preview environment (preview dev login:
5de6)
- [ ] updated [test
cases](https://github.com/webstudio-is/webstudio-builder/blob/main/apps/builder/docs/test-cases.md)
document
- [ ] added tests
- [ ] if any new env variables are added, added them to `.env.example`
and the `builder/env-check.js` if mandatory
2023-03-13 15:16:42 +01:00
Bogdan Chadkin 2757da21d6 Migrate storybook to vite (#1209)
Webpack builder is very slow and hard to use becaause of it. It gave us
a lot of issues recently.

So here I migrated to vite builder. The experience is great. It caught a
bug in shallow-equal package, though fixed in latest release.

There was one issue with reload. When modify packages and rebuild
storybook watcher detects a lot of changes and goes into infinite loop.
Solved by importing packages sources directly with export conditions
vite allows to configure. Now any changes in packages can be reflected
in builder storybook without manual reload, restart and additional
watching.

We would get much better experience with remix if they allow to
configure this.

Also had to remove @storybook/addon-interactions which are incompatible
with vite builder.
2023-03-10 12:51:38 +03:00