Dominik Ferber
5f3757afc7
stop relying on workspace tsconfig ( #213 )
...
* stop relying on workspace tsconfig
closes #204
* add changeset
2025-11-06 17:06:49 +02:00
Dominik Ferber
5fa72581f7
add @flags-sdk/flagsmith ( #167 )
...
* Revert "Revert "Adds Flagsmith adapter (#103 )""
This reverts commit bf85f9729a .
* prepare flagsmith adapter for release
* adjust changeset
* update lockfile
* shrink readme
* provider @flags-sdk/flagsmith with correct options for Flag Explorer (#182 )
* Revert "Revert "Adds Flagsmith adapter (#103 )""
This reverts commit bf85f9729a .
* prepare flagsmith adapter for release
* adjust changeset
* update lockfile
* shrink readme
* feat: get-mv-options-to-build-possible-values
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* update lockfile
* Flagsmith (#186 )
* Revert "Revert "Adds Flagsmith adapter (#103 )""
This reverts commit bf85f9729a .
* prepare flagsmith adapter for release
* adjust changeset
* update lockfile
* shrink readme
* feat: get-mv-options-to-build-possible-values
* feat: reworked-decide-signature-and-readme
* feat: rebase
* adjust changeset
* update lockfile
* feat: reworked-decide-signature-and-readme
* feat: updated-tests
* feat: fix-pnpm-lok
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* Flagsmith (#190 )
* Revert "Revert "Adds Flagsmith adapter (#103 )""
This reverts commit bf85f9729a .
* prepare flagsmith adapter for release
* adjust changeset
* update lockfile
* shrink readme
* feat: get-mv-options-to-build-possible-values
* feat: reworked-decide-signature-and-readme
* feat: rebase
* adjust changeset
* update lockfile
* feat: reworked-decide-signature-and-readme
* feat: updated-tests
* feat: fix-pnpm-lok
* feat: added-documentation-for-identify
* feat: added-full-example
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* rewrite changeset
* Feat/flagsmith coercion method (#194 )
* Revert "Revert "Adds Flagsmith adapter (#103 )""
This reverts commit bf85f9729a .
* prepare flagsmith adapter for release
* adjust changeset
* update lockfile
* shrink readme
* feat: get-mv-options-to-build-possible-values
* feat: reworked-decide-signature-and-readme
* feat: rebase
* adjust changeset
* update lockfile
* feat: reworked-decide-signature-and-readme
* feat: updated-tests
* feat: fix-pnpm-lok
* feat: added-documentation-for-identify
* feat: added-full-example
* feat: added-type-free-coercion-method
* feat: removed-per-type-functions-in-favor-of-get-value
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* rm next-13
* esm
---------
Co-authored-by: Zaimwa9 <wadii.zaim@gmail.com >
2025-10-30 11:19:06 +02:00
Dominik Ferber
ff052f0417
upgrade to @vercel/edge-config dependency ( #199 )
...
* upgrade to @vercel/edge-config dep
* update lockfile
2025-10-25 12:00:06 +03:00
Dominik Ferber
0910327c65
add next-16 tests ( #195 )
...
* add next-16 tests
* upgrade biome
* upgrade react in next-16
* tsconfig
* try with middleware.ts
* Revert "try with middleware.ts"
This reverts commit 894b6ed5ce .
* Revert "try adding executablePath"
This reverts commit a4991996fe .
* ensure x-middleware-rewrite
* test x-nextjs-cache
* rm playwright --ui
* adjust biome schema version
* disable getStaticPaths in pages router
* try chromium
* re-enable ci playwright workaround
2025-10-25 00:49:34 +03:00
Dominik Ferber
f2eba9c624
upgrade pnpm ( #198 )
...
* extract @flags-sdk/utils
* init
* split package
* rename createFlagsClient to createClient
* add TODO
* wip
* add openfeature adapter
* reuse InlineDataSource
* fix type in test
* expose OpenFeature adapter
* implement OpenFeature adapter
* wip
* wip
* convert shirt-shop
* move store into flags-core
* split up data-source
* add READMEs
* upgrade to pnpm v10
* update comment
* undo example changes
* rm flags/utils
* fix biome issues
* rm status test
* tests
2025-10-25 00:13:34 +03:00
Dominik Ferber
98ad9fb352
rm @vercel/style-guide ( #193 )
...
* add format command
* drop @vercel/style-guide
* copy over rules frmo @vercel/style-guide
2025-10-17 15:31:55 +03:00
Dominik Ferber
735a6eee06
rm jest ( #192 )
2025-10-17 14:39:46 +03:00
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
48adbf2de1
[@flags-sdk/statsig] update statsig-node-lite to v0.5.2 ( #184 )
2025-10-13 15:33:10 +03:00
Dominik Ferber
11a57785bd
rename @flags-sdk/bucket to @flags-sdk/reflag ( #177 )
...
* rename @flags-sdk/bucket to @flags-sdk/reflag
* update lockfile
2025-09-20 15:16:46 +03:00
Dominik Ferber
a7b9be80db
Update hypertune adapter ( #172 )
...
* Support nested flags by using the getFlagValues method. Pass a key to createSource to prevent conflicts with the getHypertune setup.
* address review comments
---------
Co-authored-by: Miraan Tabrez <miraan.tabrez@gmail.com >
2025-09-12 08:02:14 +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
Dominik Ferber
2d88e9f244
remove @flags-sdk/happykit ( #168 )
2025-09-10 15:22:33 +03:00
Dominik Ferber
bf85f9729a
Revert "Adds Flagsmith adapter ( #103 )"
...
This reverts commit 63edc40ec8 .
2025-09-09 13:42:03 +03:00
Tiago Paiva
63edc40ec8
Adds Flagsmith adapter ( #103 )
...
adds tests
fix README
fix documentation
remove asdf file
implements getFeature pattern
update README
Update packages/adapter-flagsmith/README.md
Co-authored-by: Aaron Morris <aaron@vercel.com >
address changes
implements provider
adds different methods for different types of flags
fix tests
changeset
2025-08-22 09:24:18 +03:00
Bryce
6239e2d9a7
Add GrowthBook Adapter ( #133 )
...
* initial wip adapter
* default adapter
* provider
* provider test
* tsc issues
* tsc issues
* tsc issues
* tsc
* feature type safety
* lock
* rm .js / .d.ts / .map
* fix test
* readme
* edge adapter
* readme typo
* update gb sdk ver
* lock
* lock
* fix changelog, package.json
* tighten feature() return type, remove userId from callback
* fix defaultValue handling
* fix decide typo
* Support EXPERIMENTATION_CONFIG
Co-authored-by: Romain Beauxis <romain@growthbook.io >
* sticky bucket support, readme, cleanup
* changeset
* update readme
* support client-side tracking, export types
---------
Co-authored-by: Romain Beauxis <romain@growthbook.io >
2025-06-02 16:09:22 -04:00
Aaron Morris
44bada78fb
feature(adapter-posthog): Add PostHog adapter ( #114 )
...
* feature(adapter-posthog): PostHog Adapter
* pass flagValue=undefined to getFeatureFlagPayload
* Map NEXT_PUBLIC_POSTHOG_HOST to a PostHog app hostname by default, making appHost optional in getProviderData
* Do not expose synchronous client in the Adapter interface (make it async later)
* Add tests
2025-05-23 15:56:36 -04:00
Ron Cohen
1d662a731c
chore(bucket): update to @bucketco/node-sdk@1.8.3 ( #139 )
...
* chore(bucket): update to @bucketco/node-sdk@1.8.3
* chore (changeset): Move package.json update to a changeset
---------
Co-authored-by: Aaron Morris <aaron@vercel.com >
2025-05-19 07:48:48 -04: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
Aaron Morris
16c928bf45
Hypertune Adapter ( #125 )
2025-05-14 12:28:55 -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
github-actions[bot]
290c37ef21
Version Packages ( #102 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-13 09:16:39 +02:00
Dominik Ferber
91338530d2
Add OpenFeature adapter ( #95 )
...
* add OpenFeature adapter
* fix tsup.config.js
* add tests
* init fn
* allow sync and async usage
* remove generics when type is known
2025-03-13 08: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
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
Aaron Morris
bd7e10aa39
(statsig-adapter): Release Statsig Adapter ( #43 )
...
* (statsig-adapter): Move Edge Config to peer deps, more consistent api key naming
* Move dynamic imports into initializeStatsig
* Add default adapter pattern
* Add changeset
* Add layerParameter to get config parameters from experiments in a layer
* (statsig-adapter) Focus on feature management (gates, dynamic configs), add origin, add exposure logging option
* (statsig-adapter) Update key handling and default export
* (refactoring, wip): move some runtime details out of the main implementation of the Statsig adapter
* Use statsig-node-lite
* Switch default environment variable to STATSIG_SERVER_SECRET"
* (statsig-adapter) Add readme
* Update README — Remove details on precompute, add optional peer deps to install command
* Add peerDependenciesMeta
* Update changeset text
* Refactor Statsig Adapter
Add experimentation primitives, disable exposure logging by default, identify StatsigUser instead of `{ statsigUser: StatsigUser }`
* (statsig-adapter) Update default environment variables
* use envvar: EXPERIMENTATION_CONFIG_ITEM_KEY
* Update packages/adapter-statsig/README.md
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* Update packages/adapter-statsig/README.md
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
* Update README, docstrings
* upgrade statsig-node-lite
* remove edge config devDep
* reduce propagation time of Statsig updates
* update deps
* update lockfile
* prefix error
* simplify README
* extend package.json
* fix type
* switch example to gate
* expose types of Statsig SDK
* work around syncing issue
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
2025-02-26 17:03:57 +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
Aaron Morris
cf532daf20
Update flags package json ( #62 )
...
* (flags) remove index from exports
* Update tsup.config, use clean:true instead of rimraf
* Add changeset
* pnpm-lock
* update tsup config, remove unused provider entrypoints
* tsup.config: update entry format
* Add attw check in CI
* Update .changeset/tidy-schools-retire.md
---------
Co-authored-by: Dominik Ferber <dominik.ferber@gmail.com >
2025-02-14 09:45:24 +02: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
Aaron Morris
bdea1488af
Statsig adapter ( #27 )
...
* Add a Statsig adapter
* (statsig-adapter): Update initialization
* (changeset) Add changeset entry
2025-01-20 11:39:04 -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
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
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
33b661f231
update turbo
2024-12-12 15:32:19 +02:00
Dominik Ferber
db89f0dfb1
Init
2024-12-12 13:01:06 +02:00