Passer au contenu principal
Les détails du produit sont affichés en anglais. Traductions à venir.
Portal & Website Theme Builder — A build-to-order Frappe app that lets your team re-skin the entire ERPNext customer/vendor p — 1/1Aperçu illustratif

A build-to-order Frappe app that lets your team re-skin the entire ERPNext customer/vendor portal and website

— navbar, footer, cards, login, signup and CMS pages — from a single settings DocType, no front-end code required.

ECOSIRE scopes, builds, installs and supports it for you.

Qu'est-ce que Portal & Website Theme Builder ?

A build-to-order Frappe app that lets your team re-skin the entire ERPNext customer/vendor portal and website — navbar, footer, cards, login, signup and CMS pages — from a single settings DocType, no front-end code required. ECOSIRE scopes, builds, installs and supports it for you. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Fonctionnalités clés

`Portal Theme Settings` single DocType with child tables for navbar items, footer columns, CSS injection blocks and per-role overrides, so branding is configuration, not code
`hooks.py` `doc_events` handler on save/validate that recompiles the theme bundle and clears the website cache automatically
Custom portal navbar and footer driven by `portal_menu_items` and `website_context` hooks — links, dropdowns, logo, CTA button
Branded login, signup, forgot-password and email-verification pages via overridden Frappe web templates, keeping native auth flow intact
Card and list-view styling for portal pages (invoices, orders, tickets, RFQs) with brand tokens instead of default Frappe cards
Named CSS injection slots (global head, portal-only, login-only, print) so custom CSS is scoped and upgrade-safe
Design tokens (primary/secondary colors, radius, spacing, font stack) stored as fields and compiled into CSS variables
Web font and favicon/OG-image handling via File records — no hard-coded asset paths that break on `bench migrate`
Responsive breakpoints and a configurable mobile navbar (collapse, drawer) as part of the theme model
Per-role portal theming using role profiles, so Vendor, Customer and Partner portals can differ
Whitelisted REST method (`frappe.whitelist()`) that returns the active theme as JSON for headless/mobile front-ends over the Frappe REST API
`app_include_css`/`app_include_js` bundling through Frappe's asset pipeline so the theme ships as a versioned bundle
Optional `scheduler_events` nightly job to rebuild assets and warm the website cache
Light/dark or multi-brand theme presets selectable per website, switchable without redeploying

Fait sur commande, clé en main

Aucune configuration à faire vous-même — une app fonctionnelle conçue, installée et prise en charge par ECOSIRE.

  1. 1

    Vous commandez

    Commencez par un prix de développement unique. Nous cadrons le projet avec vous au lancement.

  2. 2

    Nous développons et installons

    ECOSIRE la développe, la configure et l'installe sur votre ERPNext.

  3. 3

    Mise en ligne + assistance

    Vous êtes en ligne en une semaine ouvrée environ, avec deux semaines d’assistance après la mise en production. Les défauts du code que nous livrons sont corrigés gratuitement.

Spécifications techniques

Compatibilité ERPNext
—
Licence
Licence à confirmer
Version Python requise
Python 3.10+
Base de données
MariaDB 10.6+

À propos de ce produit

Out of the box, the Frappe/ERPNext portal and website look unmistakably like Frappe: the default navbar, the stock login screen, generic card layouts, and a footer that says "Powered by Frappe." For a business that puts customers, vendors, or members in front of that portal — to view invoices, raise support tickets, submit RFQs, or track orders — the un-branded experience quietly erodes trust. ERPNext natively gives you a website settings page, a splash logo, and a brand color, but the moment you want a custom navbar structure, branded login and signup pages, restyled portal cards, or per-role theming, you fall off the edge of what the UI can do and into hand-editing website_theme, overriding portal templates, and maintaining fragile CSS that breaks on the next bench update.

We build a proper Frappe app — its own module, installed with bench get-app and bench install-app — that turns all of this into structured configuration. At its core is a Portal Theme Settings single DocType (plus child tables for menu items, CSS injection blocks, and per-role overrides) that your admins edit like any other ERPNext form. On save, a hooks.py doc_events handler validates the theme and regenerates the compiled CSS/bundle, so the branded navbar, footer, card styles, and login/signup pages render immediately without a developer touching a template. We wire the theme into Frappe's website rendering through website_context, app_include_css, and portal_menu_items hooks so it applies consistently across www pages, the /app desk portal surfaces, and the logged-in customer portal — not just one of them.

Technically, the app exposes controlled extension points instead of a blank CSS box: named injection slots (global head, portal-only, login-only, print) so custom CSS lands in the right scope and survives upgrades; a whitelisted REST method (frappe.whitelist()) that returns the active theme as JSON for any headless or mobile front-end you run against the Frappe REST API; and a nightly scheduler_events job that can rebuild assets and warm caches. Branding assets (logo, favicon, OG image, web fonts) are stored as File records and referenced by field, so there are no hard-coded paths. Everything respects Frappe permissions and role profiles — you decide which roles may edit the theme, and per-role overrides let a "Vendor" portal look different from a "Customer" portal. Responsive breakpoints and mobile navbar behavior are part of the theme model, so the branded experience holds up on phones, not just desktop.

Because this is build-to-order, we start from your actual brand and portal, not a template gallery. After a short scoping call we confirm exactly which surfaces you need themed (portal, website, login, specific DocType web views), your brand tokens, and any v15/v16 target. We build against a copy of your requirements, ship installable source you own, and hand over a git repository — not a black box. Typical delivery is one working week from confirmed scope, and we install it, run UAT on a staging bench with a rollback plan, and stay on for a post-go-live support window.

Ce que vous obtenez

  • Installable Frappe app source code for your version (installed via `bench get-app` / `bench install-app`), targeting Frappe/ERPNext v15 or v16
  • Installation and configuration on your bench, including `Portal Theme Settings` populated with your brand tokens and assets
  • Technical documentation: DocType schema, hooks, injection slots, whitelisted method contract and upgrade notes
  • User guide plus a live training session for the admins who will maintain the theme
  • UAT on a staging bench with a signed-off test plan and a documented rollback procedure
  • Post-go-live support window for defect fixes and configuration help
  • Git repository handover with full commit history and README so you own and can extend the code
  • Site backup and pre-install checklist so the change is reversible on production

Pour qui c'est

Businesses running a branded customer portal

Companies whose customers log into ERPNext to see invoices, orders and tickets, and who need the portal, login and website to look like their brand — not stock Frappe — without a permanent front-end developer.

Vendor / supplier portal operators

Procurement-heavy organizations exposing an RFQ and supplier portal who want per-role theming so the vendor experience is distinct, professional and on-brand across navbar, cards and login.

ERPNext partners and implementers

Consultants delivering ERPNext to end clients who need a reusable, upgrade-safe theming layer they can configure per client instead of hand-editing `website_theme` and portal templates on every project.

Marketing and brand owners in ERPNext shops

Non-technical brand stewards who need to control logos, colors, fonts, footer content and login copy from an ERPNext form governed by permissions, without filing a ticket for every tweak.

Comment Portal & Website Theme Builder se compare

CritèreÉCOSIREConstruction personnaliséeConcurrentNatif ERPNext
Portal navbar & footer brandingConfigured from a DocType, applied via hooks across portal and websitePossible but hand-coded per template each timeOften only global logo/color, limited navbar controlLogo and brand color only; fixed structure
Branded login / signup pagesFully themed while keeping native auth flow intactRequires overriding auth templates by handRarely covered; usually website pages onlyStock Frappe login screen
Custom CSS managementNamed, scoped injection slots that survive upgradesAd-hoc CSS prone to breaking on bench updateSingle CSS box, unscopedEdit `website_theme` CSS field manually
Per-role portal themingRole-profile-based overrides (Vendor vs Customer)Custom conditional logic to build and maintainTypically one theme for all rolesNot supported
Upgrade safety (v15/v16)Isolated app, documented upgrade notes, hooks not core editsDepends on discipline; core edits risk being overwrittenVaries by vendor; may lag new versionsSafe but minimal capability
Headless / REST access to themeWhitelisted method returns theme as JSONWould need to be built separatelyUsually noneNone
Ownership & handoverFull source + git repo; you own and can extend itYou own it but built from scratch at higher costLicensed binary, limited or no sourceN/A — it's core
Support & delivery modelBuild-to-order, UAT, rollback, post-go-live support windowDepends on your team or contractor availabilityGeneric vendor support, no bespoke fitCommunity/self-serve

Foire aux questions sur Portal & Website Theme Builder

Is this an existing app I can download and install today?

No. This is build-to-order. ECOSIRE builds the app against your actual brand, portal surfaces and Frappe version, then installs it on your bench. There is no instant download — you receive installable source code and a git repository as part of the handover.

How long does delivery take?

Typical delivery is one working week from confirmed scope. The timeline starts once we've agreed on which surfaces to theme (portal, website, login, specific web views), your brand tokens and your target version. A short scoping call kicks it off; complex per-role or multi-brand requirements sit at the longer end of that range.

Will it survive `bench update` and future upgrades?

Yes — that's the point of building it as a proper Frappe app. Instead of hand-editing core templates and `website_theme`, we use `hooks.py`, scoped CSS injection slots and File-backed assets, so your branding is isolated from core and re-applies cleanly after `bench update` and `bench migrate`. We document upgrade notes for v15 and v16.

How do you handle support and updates after go-live?

Every build includes a post-go-live support window for defect fixes and configuration help. Because you receive the git repository and full source, your own team can also extend it. Beyond the included window, ECOSIRE offers ongoing support and enhancement engagements.

Does it work with a headless or mobile front-end?

Yes. The app exposes a whitelisted method (`frappe.whitelist()`) that returns the active theme as JSON over the Frappe REST API, so a custom mobile app or headless front-end can consume the same brand tokens the server-rendered portal uses.

Can different roles see differently themed portals?

Yes. Per-role overrides use Frappe role profiles, so a Vendor portal and a Customer portal can differ in navbar, cards and login while sharing one installed app. You control which roles may edit the theme through standard ERPNext permissions.

Do you modify ERPNext core or our data?

No core files are patched and no business data is changed. The theme lives in its own module with its own DocTypes and File records. We install on a staging bench first, run UAT, and keep a rollback plan and site backup before touching production.

Demander un devis

Portal & Website Theme Builder

A build-to-order Frappe app that lets your team re-skin the entire ERPNext customer/vendor portal and website — navbar, footer, cards, login, signup and CMS pages — from a single settings DocType, no front-end code required. ECOSIRE scopes, builds, installs and supports it for you.

  • `Portal Theme Settings` single DocType with child tables for navbar items, footer columns, CSS injection blocks and per-role overrides, so branding is configuration, not code
  • `hooks.py` `doc_events` handler on save/validate that recompiles the theme bundle and clears the website cache automatically
  • Custom portal navbar and footer driven by `portal_menu_items` and `website_context` hooks — links, dropdowns, logo, CTA button
  • Branded login, signup, forgot-password and email-verification pages via overridden Frappe web templates, keeping native auth flow intact

Demander un devis

Décrivez vos besoins pour Portal & Website Theme Builder et nous vous enverrons les tarifs, les options de licence et une proposition sur mesure, généralement sous un jour ouvré.

Aucun paiement maintenant. Ceci envoie une demande de devis à notre équipe — nous vous recontacterons par e-mail avec les tarifs et les prochaines étapes.