Styling
Setup logo, colors, fonts, and other visuals for your application.
Theme
There are several predefined shadcn themes included: resources/css/theme-{color}.css
.
To use one of the themes, update this line: @import url(theme-neutral.css)
in app.css
.
To update default border radius, change the --radius
value in your theme css
file.
For example, if you want sharp borders, use this --radius: 0rem
and if you want round borders, use this --radius: 1rem
. Default is --radius: 0.5rem
. You can set any value and see what works best for you.
Custom themes
If you need completely custom themes to stand out you can generate custom themes.
There an example of custom generated theme theme-custom.css
using shadcn-custom-theme.
This generator works only with Tailwind colors and you can customize it as you like. If you want to create unique theme with completely custom colors, this generator could be a good start.
Custom theme has been generated using this code:
Of course, you can always override default colors with your custom colors on specific places. For example, Card
background color bg-red-100 dark:bg-red-900
or Button
bg-indigo-600
, etc.
TailwindCSS
uses TailwindCSS for styling.
To update default configuration, open tailwind.config.js
and do the updates.
To override default Tailwind styles, define the properties inside theme
object.
To extend default Tailwind styles, define the properties inside theme.extend
object.
Defaults
For some properties you can set the default value to shorten your classes. Just name them as DEFAULT
in your config.
Safelist
Safelist contains list of classes that should always be included with the build. But don’t just safelist any class, use it in situations where classes are dynamically generated and can’t be auto-recognized.
Logo
Recommended way is to update resources/js/Components/ApplicationLogo.vue
with your own SVG logo.
You can also upload PNG
or SVG
image to the public
folder and use img
tag instead.
If you have trouble with the logo display, just create a support ticket and I will help you with it.
Favicon
Generate your favicon files and replace them inside public
folder.
- android-chrome-192x192.png
- android-chrome-512x512.png
- apple-touch-icon.png
- favicon-16x16.png
- favicon-32x32.png
- favicon.ico
Fonts
By default there are two font families included: Figtree
and Inter
.
Default font family is Figtree
. Class for default font family is font-body
.
If you want to use Inter
instead, or any other custom font family, update the tailwind.config.js
file:
If you want to add more fonts, check the official Tailwind docs.
bunny.net fonts
By default, bunny.net is used to provide the included fonts.
Google fonts
To include Google fonts, go to resources/views/app.blade.php
and similar example instead of the current fonts. Make sure to copy embed code provided by Google, and not the one in example.
Then update the tailwind.config.js
accordingly.
Custom fonts
To use fonts from other providers like Typekit, jsDelivr or Unpkg, just follow their docs and update app.blade.php
and tailwind.config.js
accordingly.
If you need help to include custom fonts which are not hosted on any CDN, please, create Helpdesk ticket in your dashboard.
Typography
To style HTML coming from editor uses @tailwindcss/typography
package and its prose classes.
You can style it under typography
in tailwind.config.js
configuration file and in resources/css/app.css
using .prose
class (there are already some custom styles included).
Links
There are two predefined styles for anchor tags (links).
Text highlight
By default, text highlight will be in combination of background and foreground colors.
To update this, go to resources/css/app.css
and update selection:bg-foreground
and selection:text-background
.
Icons
Default icons used across the application are Lucide icons.
You can import them like this in your script setup:
And use them like this in your template:
Social icons
Since Lucide doesn’t provide icons for social media providers, they are custom-generated using Simple Icons.
To check which icons are available with , how to use them and how to add new icons, go to this page.