Frappe Theme Studio is a lightweight Frappe/ERPNext app for managing Desk themes from a visual editor.
- Frappe-native Desk page at
/app/theme-studio - Theme DocTypes with version history
- Built-in seed themes
- Draft, duplicate, import/export, and publish workflows
- Generated CSS served through
/api/method/frappe_theme_studio.api.get_active_theme_css - Desk boot integration that applies the active theme for all users
- No frontend build step or runtime JavaScript framework
These commands assume you are installing the app from this local directory:
/Users/yahya/Documents/ERPnext Theme StudioRun the commands from your Frappe Bench directory, not from inside the app folder.
Because the path contains spaces, wrap it in quotes:
bench get-app "/Users/yahya/Documents/ERPnext Theme Studio"If you prefer installing from GitHub instead:
bench get-app https://github.com/yahyaoudra/frappe_theme_studio.gitThe GitHub repository name matches the Frappe app/module name, so Bench should clone it into apps/frappe_theme_studio and build it as frappe_theme_studio.
Replace your-site-name with your actual site name:
bench --site your-site-name install-app frappe_theme_studiobench --site your-site-name migrate
bench --site your-site-name clear-cache
bench build
bench restartLog in as a user with the System Manager role, then open:
/app/theme-studio
For example:
https://your-site-name/app/theme-studio
If you are working on the app locally and want Bench to use this exact folder, create a symlink from your bench apps directory:
cd /path/to/frappe-bench
ln -s "/Users/yahya/Documents/ERPnext Theme Studio" apps/frappe_theme_studio
bench --site your-site-name install-app frappe_theme_studio
bench --site your-site-name migrate
bench build
bench restartAfter pulling or editing the app:
bench --site your-site-name migrate
bench --site your-site-name clear-cache
bench build --app frappe_theme_studio
bench restartMake sure you are using the latest app source, then fetch and install normally:
cd /path/to/frappe-bench
bench get-app https://github.com/yahyaoudra/frappe_theme_studio.git
bench --site your-site-name install-app frappe_theme_studio
bench --site your-site-name migrate
bench buildIf you already have a broken clone from a failed bench get-app, move it away first:
mv apps/frappe_theme_studio archived/apps/frappe_theme_studio-brokenThis error can happen if Bench did not recognize the cloned folder as a Frappe app. Theme Studio includes the standard hooks.py, modules.txt, and patches.txt files that Bench uses for app detection.
bench --site your-site-name uninstall-app frappe_theme_studio
bench --site your-site-name remove-from-installed-apps frappe_theme_studio