{"id":28724179,"url":"https://github.com/featurevisor/featurevisor-example-cloudflare","last_synced_at":"2025-06-15T10:09:24.683Z","repository":{"id":170708977,"uuid":"646864078","full_name":"featurevisor/featurevisor-example-cloudflare","owner":"featurevisor","description":"Featurevisor CI/CD example with GitHub Actions \u0026 Cloudflare Pages","archived":false,"fork":false,"pushed_at":"2024-12-21T19:32:50.000Z","size":201,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-21T20:24:52.870Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://featurevisor.com/docs/integrations/cloudflare-pages/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/featurevisor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-29T14:06:43.000Z","updated_at":"2024-12-21T19:32:53.000Z","dependencies_parsed_at":"2024-03-14T18:51:40.195Z","dependency_job_id":null,"html_url":"https://github.com/featurevisor/featurevisor-example-cloudflare","commit_stats":null,"previous_names":["fahad19/featurevisor-example-cloudflare","featurevisor/featurevisor-example-cloudflare"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/featurevisor/featurevisor-example-cloudflare","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/featurevisor%2Ffeaturevisor-example-cloudflare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/featurevisor%2Ffeaturevisor-example-cloudflare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/featurevisor%2Ffeaturevisor-example-cloudflare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/featurevisor%2Ffeaturevisor-example-cloudflare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/featurevisor","download_url":"https://codeload.github.com/featurevisor/featurevisor-example-cloudflare/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/featurevisor%2Ffeaturevisor-example-cloudflare/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259957280,"owners_count":22937549,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-15T10:09:23.256Z","updated_at":"2025-06-15T10:09:24.670Z","avatar_url":"https://github.com/featurevisor.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# featurevisor-example-cloudflare\n\nExample Featurevisor project utilizing [Cloudflare Pages](https://developers.cloudflare.com/pages).\n\nFor more documentation, visit https://featurevisor.com.\n\n## Accessing datafiles\n\nThe generated datafiles from this repository is accessible via these URLs:\n\n- `production`: https://featurevisor-example-cloudflare.pages.dev/production/datafile-tag-all.json\n- `staging`: https://featurevisor-example-cloudflare.pages.dev/staging/datafile-tag-all.json\n\n### Usage with Featurevisor SDK\n\nInstall the SDK in your application:\n\n```\n$ npm install --save @featurevisor/sdk\n```\n\nThen use it in your application:\n\n```js\nimport { createInstance } from '@featurevisor/sdk';\n\nconst sdk = createInstance({\n  datafileUrl: 'https://featurevisor-example-cloudflare.pages.dev/production/datafile-tag-all.json',\n});\n```\n\n## Installation\n\nSince this example app lives outside of the Featurevisor [monorepo](https://github.com/fahad19/featurevisor), you are recommended to make sure [`package.json`](./package.json) has the latest version of [`@featurevisor/cli`](https://www.npmjs.com/package/@featurevisor/cli) package.\n\n```\n$ npm ci\n```\n\n## Usage\n\n### Lint YAMLs\n\n```\n$ npm run lint\n```\n\n### Build datafiles\n\n```\n$ npm run build\n```\n\n### Test features\n\n```\n$ npm test\n```\n\n## Cloudflare\n\nFor this example, we are going to be uploading to and serving our datafiles from [Cloudflare Pages](https://pages.cloudflare.com/).\n\nMake sure you already have a Cloudflare Pages project set up, and then use it in the [`publish`](./.github/workflows/publish.yml) workflow.\n\n## GitHub Actions\n\nThis example project is configured to run its CI/CD pipeline with [GitHub Actions](https://github.com/features/actions).\n\nYou are free to choose any other CI/CD provider of your choice.\n\n### Settings\n\nMake sure you have `Read and write permissions` enabled in your GitHub repository's `Settings \u003e Actions \u003e General \u003e Workflow permissions` section.\n\n### Workflows\n\nYou can find the GHA workflow files in [`.github/workflows`](./.github/workflows) directory.\n\n- `checks` workflow: runs against non-`master` (non-`main`) branches\n- `publish` workflow: runs against `master` (`main`) branch\n\n### Secrets\n\nFollow the guide [here](https://developers.cloudflare.com/pages/how-to/use-direct-upload-with-continuous-integration/), and set up these two secrets in your GitHub repository's `Settings \u003e Secrects and variables \u003e Actions` section:\n\n- `CLOUDFLARE_ACCOUNT_ID`\n- `CLOUDFLARE_API_TOKEN`\n\n## License\n\nMIT © [Fahad Heylaal](https://fahad19.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffeaturevisor%2Ffeaturevisor-example-cloudflare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffeaturevisor%2Ffeaturevisor-example-cloudflare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffeaturevisor%2Ffeaturevisor-example-cloudflare/lists"}