Commit Graph

46 Commits

Author SHA1 Message Date
Dominik Ferber ba4eec7b23 replace eslint and prettier with biome (#187)
* remove @pyra/eslint-config

* wip

* wip

* convert shirt-shop-api

* convert shirt-shop

* convert snippets

* convert next-13

* convert next-14

* convert next-15

* eslint configs

* upgrade prettier

* use eslint v9

* run prettier

* resolve type-check

* adjust eslint

* drop Next.js v13

* fix next-14

Avoid accidentally using implicitly installed eslint v8

* update lockfile

* rm @eslint/eslintrc

* add @next/eslint-plugin-next

* biome

* biome fixes

* wip

* apply formatting

* tabs

* rm prettier

* spaces

* fix svelte

* update lockfile

* single quotes

* format all

* rm eslint-disable comments

* upgrade playwright

* upgrade publint

* upgrade playwright ci workflow

* try chromium headless

* try adding executablePath
2025-10-15 23:38:17 +03:00
Dominik Ferber e1def0eb34 upgrade @flags-sdk/launchdarkly (#169)
* upgrade @flags-sdk/launchdarkly

* remove unused dependencies
2025-09-11 18:54:03 +03:00
Daniel Roe f54cc0cd9f chore: add test .env files (#160)
* chore: add test `.env` files

* add EDGE_CONFIG env var

Adds the EDGE_CONFIG env var to the snippets example with a read-only token meant for public consumption.

---------

Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com>
2025-09-09 13:46:00 +03:00
Dominik Ferber 79b25f6aee @flags-sdk/bucket adapter (#96)
* init
* [@flags-sdk/bucket] getProviderData (#113)
* [@flags-sdk/bucket] various improvements (#121)
* Update framer-motion to motion for CI

---------

Co-authored-by: Ron Cohen <cohen1@gmail.com>
Co-authored-by: Aaron Morris <aaron@vercel.com>
2025-05-16 17:05:38 -04:00
Dominik Ferber bc7944ed89 split crypto functions into dedicated functions (#126) 2025-05-02 17:45:00 +03:00
Dominik Ferber 3994336c4d style examples (#111) 2025-03-21 17:48:34 +02:00
Simon H 701f3c2bf2 Sveltekit flags enhancements (#75)
* use `$env/dynamic/private` from SvelteKit for convenience: people don't have to pass FLAGS_SECRET manually anymore then

* allow flag to be called outside of the lifecycle of the handle hook, with a request object being the key for deduplication etc

* add support for identifiers

* fix types

* new function for managing precomputed flags

* align with next.js API instead

* update example app

* lockfile

* test

* fix example

* restructure examples app

* make it two flags to show power of precompute + code

* add manual approach

* lets see if preview deployment is picked up

* change crypto usage to be usable in middleware

* make sveltekit flags pkg usable within edge middleware

* use ISR

* changeset

* enhance error message

* use static env instead of dynamic env

* bump kit

* use vercel adapter

* make sure Vite tooling is used for sveltekit entry point

---------

Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com>
2025-03-21 14:43:28 +02:00
Andy 2fcc446ea8 Create LaunchDarkly adapter (#2)
* Create LaunchDarkly adapter

* Update example to include a LaunchDarkly flag

* Add missing env to turbo

* Rename to defaultLaunchDarklyAdapter

* Add winter sale example for providers

* Update winter-sale

* Document usage in readme

* Allow to set the default value through the adapter

* Fix readme

* Add default value for adapter

* Make argument optional

* Add @ts-expect-error

* Add a LaunchDarkly adapter (#10)

* add ld example

* reword

* remove winter-sale example

* remove defaultValue

* use @flags-sdk/launchdarkly

* add install steps

* add changeset

* move @vercel/edge-config to peer deps

* add more secrets

* spell out name

* remove unused env var

* rename properties

* Capitalize

* Change import

* Fix more imports

* expose ldClient

* move peerDeps to real deps

* clarify Edge Config requirement in README

* remove adapter-launchdarkly snippet

* upgrade next@canary

* polish @flags-sdk/launchdarkly README

---------

Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com>
2025-03-08 09:29:26 +02:00
Dominik Ferber a5bfb13c43 extended example (#84)
* wip

* adapt nav

* store management

* ssr cart

* clean up

* fix stableId issue

* allow image sorting

* toast on ProceedToCheckoutButton

* move actions, extract components

* Add PPR to Cart (#85)

* toast on Shop now

* allow delay

* loading spinner

* wip

* fix animations

* show cart count

* Extend shirt-shop demo with dynamic flag usage (#86)

* better metadata

* wip

* move cart to api

* wip

* respect free shipping

* add example banner

* init shadcn

* reorg

* remove relative paths from components

* do not link footer

* wip

* remove shadcn setup

* api-server » shirt-shop-api

* /api/:cartId » /api/cart/:cartId

* add delayFlag desc

* fix cart count

* remove quantity

* fine tune animation

* shrink

* list envs, fix Link

* change flag names

* set cart-id from middleware

* append headers

* allow cloning

* add BACKEND_URL fallback
2025-03-04 17:05:13 +01:00
Dominik Ferber e398e7752f remove duplicate package.json 2025-02-28 14:58:12 +02:00
Dominik Ferber 4ad02b9e6f add comments 2025-02-28 13:08:43 +02:00
Dominik Ferber 372b5bb807 use scripts/install 2025-02-28 13:00:38 +02:00
Dominik Ferber 44b8c099fe npm 2025-02-28 12:54:50 +02:00
Dominik Ferber 15bb48a002 compat 2025-02-28 12:52:20 +02:00
Dominik Ferber 1e6e3a816d log 2025-02-28 12:29:53 +02:00
Dominik Ferber d3646d712a clean up 2025-02-28 12:20:31 +02:00
Dominik Ferber 09f6c95f68 run pnpm script to replace workspace dependencies when cloning example (#82)
* use npm when cloning

* use pnpm

* rewrite
2025-02-28 12:18:24 +02:00
Dominik Ferber 8a3ccdb678 allow using shirt-shop as a template (#80)
* allow using shirt-shop as a template

* js » mjs
2025-02-28 11:47:30 +02:00
Dominik Ferber 646778643e convert summer-sale to shirt-shop (#79)
* convert summer-sale to shirt-shop

* update deps

* canary for snippets

* expect errors

* upgrade deps

* ComponentRef

* steps
2025-02-28 11:04:12 +02:00
Dominik Ferber 422435c0eb rename (#68)
* @vercel-flags » flags

* update lockfile

* fix name
2025-02-20 19:54:09 +02:00
Dominik Ferber 48cbe4533b Add @flags-sdk/edge-config adapter (#57)
* add Edge Config Adapter
* add README and tests
* add changeset
* add edge config caching

---------

Co-authored-by: Aaron Morris <aaron@vercel.com>
2025-02-14 10:53:13 -05:00
Dominik Ferber 2388982f2f bring dark mode back for snippets (#55)
* Revert "Revert "add dark mode support (#53)" (#54)"

This reverts commit 2161f4d5f1.

* switch to cssVariables: false

* bring back darkmode for DemoFlag

* fix suspense example

* fix skeleton example
2025-02-01 12:30:03 +02:00
Dominik Ferber 2161f4d5f1 Revert "add dark mode support (#53)" (#54)
This reverts commit 77d68a4a96.
2025-02-01 06:27:57 +02:00
Dominik Ferber 77d68a4a96 add dark mode support (#53) 2025-01-31 08:47:25 -05:00
Dominik Ferber 2713ea7aff throw on undefined unless defaultValue is defined (#46)
* throw when decide returns undefined

* throw on undefined unless defaultValue is defined

* wip

* bring back JsonValue

* do not enforce on typescript level for now

* add changeset

* mention exported types

* add precise types

* fix summer-sale example
2025-01-24 14:22:12 +02:00
Dominik Ferber 55fe9b5e3c change from .com to .dev (#38) 2025-01-17 13:32:02 +02:00
Dominik Ferber f8d5236477 fix csp (#37) 2025-01-16 20:09:16 +02:00
Dominik Ferber 5351cd8259 change domain (#29) 2025-01-16 12:36:02 +01:00
Dominik Ferber bb19b95355 adapt example (#26) 2025-01-14 17:23:12 +01:00
Dominik Ferber 3c56919727 replace favicon (#21) 2025-01-13 14:21:18 +01:00
Dominik Ferber 8043be4059 add favicon to snippets (#20) 2025-01-13 15:17:49 +02:00
Dominik Ferber f44f3971f5 make overview example dynamic (#18) 2025-01-13 09:31:51 +01:00
Dominik Ferber 8d26638f5d use color which does not look like an error message (#17) 2025-01-10 13:35:14 -05:00
Dominik Ferber 3e5db8c96a enable ppr (#16)
PPR is required for the Suspense Fallbacks example
2025-01-10 12:45:25 -05:00
Dominik Ferber 6876875a13 remove partial-prerendering example (#15)
* remove partial-prerendering example

This is now available as a snippet, so we no longer need a dedicated application

* update lockfile
2025-01-10 19:27:33 +02:00
Dominik Ferber 3db88e1873 Suspense fallbacks example (#14)
* ppr shells

* rename
2025-01-10 17:53:33 +01:00
Dominik Ferber 1fcd4fc177 Add Pages Router examples (#12)
* upgrade next

* ensure pages router support in turbopack

* add pages router examples

* fix cards

* re-add node prefix

* remove node prefix

* fix tests

* fix pages router pages
2025-01-10 15:06:24 +02:00
Dominik Ferber e40be88725 ensure id on first-ever request (#11) 2025-01-09 10:11:18 +01:00
Dominik Ferber f3ae006cdd add www.flag-sdk.com to csp (#9) 2024-12-18 10:52:43 +01:00
Dominik Ferber 2bf7cdcbde add csp (#8) 2024-12-18 10:44:00 +01:00
Dominik Ferber 8152ef3371 split up docs (#7)
* wip

* init collection

* convert identify

* convert precompute

* convert adapters

* convert marketing-pages

* convert feature-flags-in-edge-middleware

* remove docs

* rename to snippets

* rename collection to snippets

* eslint

* list examples on landing page

* remove unused code
2024-12-18 11:27:26 +02:00
Dominik Ferber ff437da572 redo landing page 2024-12-17 16:25:23 +02:00
Dominik Ferber 76d6d3cb4c use geist font 2024-12-17 08:07:59 +02:00
Dominik Ferber 8cd7296444 conditionally inject toolbar (#6) 2024-12-13 16:47:48 +02:00
Dominik Ferber f24fd977a0 remove unused edge config example 2024-12-12 15:48:51 +02:00
Dominik Ferber db89f0dfb1 Init 2024-12-12 13:01:06 +02:00