I had this idea for a tool that helps people copy Cloudflare firewall rules from one domain, hosted in Cloudflare, to multiple others. So, I decided to quickly build an MVP.
The origin for the idea
Integrating with Cloudflare’s APIs was straightforward, as they kindly offer SDKs. The real challenge? Designing how the system would manage the inputs.
You’re probably wondering why that would be a big deal - let me quickly go through the user flow:
- Input a list of Cloudflare API account credentials
- Fetch all zones belonging to those accounts
- Select which zones you want to copy the WAF rules over to
- Apply the rules to those zones
Seems simple? Here’s the kicker - the app needed to accept thousands of entries. That was the main value proposition.
I explored different interfaces that would be both intuitive and scalable for managing large volumes of edits. I realized that a familiar tool — the classic spreadsheet — was a perfect fit!
Behold, a beautiful spreadsheet
At first, I considered embedding it directly into the app. Then I thought: why not let users handle their edits offline, and upload their specs via CSV files? This approach also has the advantage of not requiring my service to store any confidential data.
Thus enlightened, I duct-taped a couple of file upload components. The first allowed users to upload a list of account credentials and generate a CSV containing all the zones associated with those accounts. They could then review and filter the zones they wanted to copy over, offline.
With the second file upload component, the users could provide the list of zones where they wanted to copy the firewall rules over. Once the user uploads their target zones, the app reads the CSV, validates the entries, and kicks off the copy operation — all without needing to retain any sensitive data server-side. Users stay in full control of their credentials and configurations, and I saved myself days of work by avoiding complex in-app editing features.
And that’s how configberry.com was born! You can try it out your very selves, it’s completely free.