Getting Started
Learn how to customize PteroCA's appearance with custom themes.
Introduction
PteroCA's theme system allows you to completely customize the panel's appearance without modifying core files. Themes can override templates, customize styles, and add custom JavaScript to create a unique user experience.
What is a Theme?
A theme is a collection of templates, stylesheets, and assets that define the visual appearance of your PteroCA panel. Themes can:
Override default templates: Customize any page or component
Style the interface: Add custom CSS for colors, layouts, typography
Enhance functionality: Add JavaScript for interactive features
Customize emails: Brand email templates with your design
Theming Architecture
PteroCA uses:
Twig: Templating engine from Symfony
EasyAdmin Bundle: CRUD interface generator (75% of admin panel)
Bootstrap: CSS framework for responsive design
Theme inheritance: Override only what you need, inherit the rest
When to Create a Theme
Create a theme when you want to:
Brand the panel: Add your logo, colors, and style
Customize the UI: Change layouts, add custom components
Improve UX: Enhance user experience with custom interactions
Create white-label: Completely rebrand for reselling
When to Use Plugins Instead
Consider plugins for:
New functionality: Adding features requires plugins, not themes
Database changes: Themes cannot modify database structure
Backend logic: Business logic belongs in plugins
API integrations: External service connections need plugins
Next Steps
Now that you understand what themes are, continue with:
Theme Structure - Learn about file organization
Template.json - Configure theme metadata
Creating Themes - Create your first theme
Need Help?
Check Testing for quality assurance
Review Twig Guide for templating
Join Discord Community
Visit Twig Documentation
Last updated