Update README.md for SEO - #8493
willsigsworth wants to merge 7 commits into
Conversation
docs: update README with code sample, SDK links, and What is Flagsmith section
|
@willsigsworth is attempting to deploy a commit to the Flagsmith Team on Vercel. A member of the Team first needs to authorize it. |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughThe README now describes Flagsmith’s product capabilities, deployment options, integrations, and supported application targets. It adds an interactive demo, updated quick-start instructions, JavaScript SDK usage, SDK listings, OpenFeature providers, community resources, hosted SaaS information, licensing details, and contribution links. Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: 🟡 Moderate · up to This README refresh improves onboarding and product guidance, but the JavaScript example needs correction before merge to avoid broken integrations or accidental exposure of a server-side key. Documentation-link, provider-list, grammar, and demo-markup fixes should also be applied. ✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Advanced
Run ID: 38236a5b-b98f-4d68-aaf1-f856973c1df4
📒 Files selected for processing (1)
README.md
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.
emyller
left a comment
There was a problem hiding this comment.
Looks great! Only a couple comments.
| Flagsmith is an open-source feature management platform that offers remote configuration and experimentation solutions, as well as four different deployment options: Open source, on-premises/self-hosted, cloud, and private cloud. | ||
|
|
||
| # [Flagsmith](https://flagsmith.com/) is an Open-Source Feature Flagging Tool to Ship Faster & Control Releases | ||
| As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools, as well as greater control over your choices—you are never locked into one vendor, thanks to our partnership with [OpenFeature](https://openfeature.dev/). |
There was a problem hiding this comment.
- I think something along the lines of full support could sound better than "partnership" — dismiss if this is intentional.
- Regardless, I think we could use the opportunity to emphasise that such support makes it easier to move into Flagsmith.
There was a problem hiding this comment.
I agree with Evandro, but I'm also not sure this paragraph reads very well in general.
As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools
- This reads to me like it has a more complete feature set because it's open-source, which isn't true.
- I also don't really like the idea of being combative in our readme...
- It's a Github repo, so it is by definition open-source. I think we need to be a little more selective with our use of the term (while I appreciate that we are trying to optimise for search at the same time).
as well as greater control over your choices—you are never locked into one vendor
Can we try to avoid the use of em dashes?
| As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools, as well as greater control over your choices—you are never locked into one vendor, thanks to our partnership with [OpenFeature](https://openfeature.dev/). | |
| As an open-source solution, Flagsmith provides flexibility, as well as greater control over your choices, thanks to our partnership with [OpenFeature](https://openfeature.dev/), so you are never locked into one vendor. |
There was a problem hiding this comment.
There are perhaps a few too many clauses in one sentence here. How about:
As an open-source solution, Flagsmith provides flexibility and greater control over your choices. Thanks to our partnership with OpenFeature, you are never locked into one vendor.
| Flagsmith is an open-source feature management platform that offers remote configuration and experimentation solutions, as well as four different deployment options: Open source, on-premises/self-hosted, cloud, and private cloud. | ||
|
|
||
| # [Flagsmith](https://flagsmith.com/) is an Open-Source Feature Flagging Tool to Ship Faster & Control Releases | ||
| As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools, as well as greater control over your choices—you are never locked into one vendor, thanks to our partnership with [OpenFeature](https://openfeature.dev/). |
There was a problem hiding this comment.
I agree with Evandro, but I'm also not sure this paragraph reads very well in general.
As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools
- This reads to me like it has a more complete feature set because it's open-source, which isn't true.
- I also don't really like the idea of being combative in our readme...
- It's a Github repo, so it is by definition open-source. I think we need to be a little more selective with our use of the term (while I appreciate that we are trying to optimise for search at the same time).
as well as greater control over your choices—you are never locked into one vendor
Can we try to avoid the use of em dashes?
| As an open-source solution, Flagsmith provides greater flexibility and a more complete feature set than other flagging tools, as well as greater control over your choices—you are never locked into one vendor, thanks to our partnership with [OpenFeature](https://openfeature.dev/). | |
| As an open-source solution, Flagsmith provides flexibility, as well as greater control over your choices, thanks to our partnership with [OpenFeature](https://openfeature.dev/), so you are never locked into one vendor. |
Co-authored-by: Matthew Elwell <mjelwell89@gmail.com>
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Advanced
Run ID: ec6eec28-2320-4f3f-90e8-1ee172c7fb57
📒 Files selected for processing (1)
README.md
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.
That's just how I was taught, but happy to remove Co-authored-by: Matthew Elwell <mjelwell89@gmail.com>
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
README.md (1)
59-59: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick winUse the current JavaScript SDK package name.
The example imports the unscoped
flagsmithpackage. Update it to@flagsmith/flagsmithand addnpm install@flagsmith/flagsmith`` before the example. Otherwise, readers can encounter a module-resolution failure.Proposed correction
-import flagsmith from 'flagsmith'; +import flagsmith from '`@flagsmith/flagsmith`';Add
npm install@flagsmith/flagsmith`` before the example.
♻️ Duplicate comments (1)
README.md (1)
62-62: 🔒 Security & Privacy | 🛡️ Analyzed with Security Review | 🟠 MajorSensitive Data Exposure
Reachability: External
Exploitability: Moderate
CWE: CWE-200 — Exposure of Sensitive Information to an Unauthorized ActorIdentify the key as client-side.
This browser example uses
<your environment key>without stating the key type. If a reader inserts a server-side environment key, the browser exposes that secret to every user. Flagsmith documents client-side keys as public and server-side keys as secret. (docs.flagsmith.com)Change the placeholder to
<your client-side environment key>and add a warning that server-side keys must not be used in browser code.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Advanced
Run ID: d55b6055-18d5-4744-92b5-fc3acf82ee63
📒 Files selected for processing (1)
README.md
Included review availability: Your plan provides up to 8 included reviews per hour; 6 remain after this review.
Added the list of providers through OpenFeature
Added "As an open-source solution, Flagsmith provides flexibility and greater control over your choices. Thanks to our partnership with OpenFeature, you are never locked into one vendor."
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Advanced
Run ID: 53d2da06-c26a-4190-b4ec-420485d064a9
📒 Files selected for processing (1)
README.md
Included review availability: Your plan provides up to 8 included reviews per hour; 5 remain after this review.
| * [Kotlin](https://github.com/Flagsmith/flagsmith-openfeature-provider-kotlin) | ||
| * [.NET](https://github.com/open-feature/dotnet-sdk-contrib/tree/main/src/OpenFeature.Contrib.Providers.Flagsmith) | ||
| * [Python](https://github.com/Flagsmith/flagsmith-openfeature-provider-python) | ||
| * [Ruby](https://github.com/open-feature/ruby-sdk-contrib/tree/main/providers/openfeature-flagsmith-provider) | ||
| * [Rust](https://github.com/open-feature/rust-sdk-contrib/tree/main/crates/flagsmith) |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
🔎 Supported by static analysis
🤖 get_repo_knowledge executed:
get_repo_knowledge Flagsmith/flagsmith /tmp/coderabbit-repo-knowledge/flagsmith-flagsmith-a74d157a
Length of output: 3949
🏁 Script executed:
#!/bin/bash
sed -n '108,130p' README.mdRepository: Flagsmith/flagsmith
Length of output: 1738
🌐 Web query:
site:docs.flagsmith.com/integrating-with-flagsmith/openfeature Flagsmith OpenFeature providers Go Java .NET JavaScript Python Kotlin Ruby Rust
💡 Result:
Flagsmith provides official OpenFeature providers for several programming languages, enabling users to leverage the OpenFeature standard with Flagsmith. As of September 10, 2026, Flagsmith supports OpenFeature providers for the following languages [1]: - Go - Java -.NET - JavaScript (Web and Server) - Python Regarding the additional languages you mentioned: - Kotlin: This is currently listed as a planned provider and is not yet implemented by Flagsmith [1]. - Ruby and Rust: These are not explicitly mentioned in the current documentation as available or planned OpenFeature providers [1]. Flagsmith is a governance board member of the OpenFeature CNCF project and encourages the use of OpenFeature as the default SDK interface for their platforms [1].
Citations:
Synchronise the OpenFeature provider list with the linked documentation.
The README lists Kotlin, Ruby, and Rust as available providers. The linked documentation lists Kotlin as planned and does not list Ruby or Rust. Update either source so both provider lists match.
Source: MCP tools
There was a problem hiding this comment.
@emyller there is a discrepancy between https://docs.flagsmith.com/integrating-with-flagsmith/openfeature and https://openfeature.dev/ecosystem/?instant_search%5BrefinementList%5D%5Bvendor%5D%5B0%5D=Flagsmith
Are our docs out of date?
There was a problem hiding this comment.
Coincidentally, I've just recently updated our docs. Please pull main onto this branch to update it.
There was a problem hiding this comment.
Seems like the humans are having a chat. I'll hop back into my burrow for now. If you need me again, just tag @coderabbitai in a new comment, and I'll come hopping out!
Added: "As this example runs in the browser, you should use your client-side environment key. Server-side keys must stay secret and never appear in browser code."
Took in coderabbit suggestions README.md#L71-L71: remove the trailing slash from the SDK overview URL. README.md#L77-L77: use https://docs.flagsmith.com/project-and-community/contributing. README.md#L91-L91: remove the trailing slash from the client-side SDK URL.
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
README.md (1)
38-38: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winClose the demo anchor.
The block opens an
<a>element at Line 36 but does not close it before</p>. Add</a>before</p>to prevent malformed HTML and inconsistent README rendering.Proposed fix
<a href="https://www.flagsmith.com/demo"> <img width="75%" height="75%" src="static-files/ReadMe_Demo.gif" alt="Try our interactive demo"> + </a> </p>
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Advanced
Run ID: d2f066d6-2334-4206-ab9e-a7016365197d
📒 Files selected for processing (1)
README.md
Included review availability: Your plan provides up to 8 included reviews per hour; 4 remain after this review.
docs: update README with code sample, SDK links, and What is Flagsmith section
Thanks for submitting a PR! Please check the boxes below:
docs/if required so people know about the feature.Changes
Contributes to
Please describe.
How did you test this code?
Previewed the changes. There is no code that affects product
Please describe.
Optimizing the readme section of the repo for search.