Pilot: A new bench with admin UI

Hello all,

As a part of our “cleanup” post agentic coding, the first project we picked was to re-write the bench. The new bench https://github.com/frappe/bench-cli (soon to be renamed as frappe/bench) is like the old bench but with a brand new admin UI

Key features:

  • Stateless flask based admin UI
  • Configuration based - bench.toml
  • No docker - designed for low resource machines
  • Built in marketplace /registry/apps.json
  • Zero dependencies, just add to path and run bench commands
  • Built in ZFS support for snapshot and recovery
  • Opinionated directory structure

Do give it a spin and post your issues (here or on GitHub)

Screenshots

Try it out here: GitHub - frappe/pilot: Frappe Server Manager · GitHub

If this works, we will make this the default bench!

The marketplace is now migrated to the new bench:

I am testing it days ago … works really smooth.

Check out the latest version, lots of polish has been added. Also bench upgrade now fetches the latest updates and restarts the bench as well.

We are now calling this “Pilot” - it is a full blown Frappe Server Manager with support for multiple benches and marketplace.

New features:

  1. Multi bench support
  2. Updated UI - feat: Implement New UI by tanmoysrt · Pull Request #153 · frappe/pilot · GitHub
  3. Postgres + SQLite support
  4. SQL Playground

Updated screenshots:

Is there a provision to manage existing benches ?

No. It has a more opinionated setup with benches residing in the benches folder.

Can I set up different versions of Frappe in separate benches? If yes, could you please guide me or share the steps to do it?

Hi @bittu9835 and welcome to the community

Yes you can but for VM its a real pain as you need to carefully select ports for redis, nginx, etc..

I suggest you use docker at GitHub - rtCamp/Frappe-Manager: The production platform for Frappe/ERPNext. Automatic TLS, versioned migrations, worker orchestration, isolated benches. Everything from a single CLI. · GitHub

fm create benchv15 --apps frappe:version-15 --apps erpnext:version-15
fm create benchv16 --apps frappe:version-16 --apps erpnext:version-16

Hi @asieftejani,

Thank you for your reply and for the suggestion.

Yes, I agree that using Frappe Manager with Docker is a great option. However, my requirement is to set up multiple Frappe versions directly in my local environment using Pilot, mainly for local development and testing purposes.

Hi @bittu9835 ,

You can try the bench manager app as it suits your requirement, you can setup benches with multiple version by just a click of a button. run common bench commands easily too.

It appears that some apps have not yet been migrated?
For example: https://cloud.frappe.io/marketplace/apps/churchit

Marketplace has moved here: GitHub - frappe/marketplace: Marketplace for Frappe Apps · GitHub

@Aradhya-Tripathi let’s make a separate discuss post on the marketplace.

any plan to bring the feature of using it for existing benches ?