# Balti > Balti is a web-based file manager for S3-compatible storage (Cloudflare R2, AWS S3 and others) with one-click CDN cache purge and team access control. It is a browser-based Cyberduck alternative built for teams. "Balti" (بالٹی) is Urdu for bucket. - App: https://balti-cdn.vercel.app - Built by: Abdul Ahad (https://www.linkedin.com/in/abdul-ahad-q/) - In production at: ImagineArt and Chatly ## What it does - Shows an S3-compatible bucket as folders and files in the browser, with grid and list views and image previews. - Gives every file a clean public CDN URL to copy. - Purges files from the CDN cache in one click: a single file, a selection, or everything under a folder. - Works with any CDN that has an HTTP purge API (for example Cloudflare and Bunny). The admin sets the method, URL, headers and body once; Balti fills in each file's URL. - Uploads large files in chunks; edits JSON and HTML in place; moves, renames and zips files in bulk. - Organizations with Google sign-in and invites. Admin, Editor or Viewer role per connection. Members can request access; admins approve. ## Balti compared with Cyberduck - Where it runs: Cyberduck is a desktop app installed on each machine. Balti runs in the browser. - Cache purge: Cyberduck supports CloudFront and a few other CDNs, not Cloudflare or Bunny. Balti purges any CDN with an HTTP purge API. - Team setup: in Cyberduck each person sets up their own credentials. In Balti an admin adds a connection once and invites the team. - Permissions: in Cyberduck access is whatever each person's storage key allows. In Balti roles are set per connection. ## How to set it up 1. Sign in with Google and create or join an organization. 2. Add a connection: S3 endpoint, bucket, public base URL, and optionally a purge request template. 3. Invite your team and choose each person's role per connection. ## FAQ ### What is Balti? Balti is a browser-based file manager for S3-compatible buckets. It shows a bucket as folders and files, gives every file a public CDN link, and purges files from your CDN cache in one click. Teams share connections through an organization, so nobody has to handle storage keys. "Balti" is Urdu for bucket. ### Is Balti a Cyberduck alternative? Yes, for teams. Cyberduck is a desktop client that each person installs and sets up with their own credentials. Balti runs in the browser, lets an admin add a connection once and invite the team, and can purge any CDN that has an HTTP purge API, including Cloudflare and Bunny. ### Which storage providers does Balti work with? Any storage that speaks the S3 API, including Cloudflare R2 and AWS S3. You add the endpoint, the bucket name and the public base URL your CDN serves files from. Your files stay in your own bucket. ### Which CDNs can Balti purge? Any CDN with an HTTP purge API. You set the request method, URL, headers and body once, and Balti fills in each file's URL when you purge. You can purge a single file, a selection, or everything under a folder. ### How does team access work? You sign in with Google and create or join an organization. Admins add connections and invite people, and each member gets the Admin, Editor or Viewer role per connection. Members can request access to a connection and an admin approves it. ### Are my storage credentials safe? An admin enters the access key and secret once, and they stay on Balti's server. They are never sent to team members' browsers. Everyone else signs in with Google and works through Balti, so nobody on the team needs their own copy of the keys, and removing someone from the organization doesn't mean rotating keys. ### What permissions should I give Balti's keys? Only what it needs. On Cloudflare R2, create an API token with Object Read & Write scoped to the one bucket. On AWS S3, use an IAM user whose policy covers only that bucket. For Cloudflare cache purge, use an API token with just the Cache Purge permission on that zone. You can revoke or rotate any of these at your provider at any time. ### Who uses Balti? Balti manages the production CDNs for ImagineArt and Chatly, including the assets for 18 ImagineArt products. It was built by Abdul Ahad.