1
0
mirror of https://github.com/tabler/tabler.git synced 2025-12-21 17:34:25 +04:00

Compare commits

...

69 Commits

Author SHA1 Message Date
github-actions[bot]
6d0271ad57 chore: update versions (#2187)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-03-01 14:53:46 +01:00
Paweł Kuna
f29c911032 Fix Documentation structure (#2186) 2025-03-01 14:50:35 +01:00
BG-Software
01ee740535 Documentation for Tabler Emails (#2163)
Co-authored-by: Paweł Kuna <1282324+codecalm@users.noreply.github.com>
2025-03-01 14:44:16 +01:00
codecalm
7d5d9bc847 chore: mark banner package as private 2025-03-01 14:30:41 +01:00
codecalm
776a85cf1a chore: remove obsolete changeset files for layout and styling updates 2025-03-01 14:25:42 +01:00
github-actions[bot]
ac10f55405 chore: update versions (#2131)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-03-01 14:19:38 +01:00
codecalm
d0f45a41f8 update changes pririties 2025-03-01 14:08:28 +01:00
codecalm
16a42ba330 Fix signature component with styling and update canvas dimensions 2025-03-01 13:46:18 +01:00
codecalm
f7d5b6a05e Add Playwright configuration and visual regression tests; refactor SCSS files and update component naming 2025-03-01 13:03:42 +01:00
Paweł Kuna
4376968bca add Signature Pad feature (#2183)
Co-authored-by: ethancrawford <ethan_jc@hotmail.com>
2025-03-01 12:36:41 +01:00
Paweł Kuna
dee2b8ad64 Replace Playwright workflow with Argos workflow for testing (#2185) 2025-03-01 12:27:51 +01:00
BG-Software
2c9a4dfb37 Decrease padding of form-control input in 2-step-verification-code (#2181) 2025-02-28 10:19:37 +01:00
Paweł Kuna
e46fec5050 Update twelve-shirts-mix.md 2025-02-28 00:11:53 +01:00
Paweł Kuna
f3c409ffc2 Refactor alert component styles and markup, remove Bootstrap styles (#2141) 2025-02-28 00:04:50 +01:00
codecalm
309ff40a48 Update package versions in package.json 2025-02-26 19:37:25 +01:00
codecalm
eea2d38f39 Remove unused dependencies from pnpm-lock.yaml 2025-02-26 19:33:40 +01:00
codecalm
876bec9db3 Remove console log from HTML formatting in reformat-mdx script 2025-02-26 19:22:41 +01:00
codecalm
f06cce0300 Clean up HTML syntax and remove unused dependencies in documentation and package.json 2025-02-26 19:20:37 +01:00
codecalm
e1931f8c37 Refactor accordion component styles and markup, remove preview dependency 2025-02-26 18:55:53 +01:00
Paweł Kuna
c240b5ad21 Refactor accordion component styles and markup, remove Bootstrap styles (#2139) 2025-02-26 18:53:01 +01:00
codecalm
baafe08d6e Add condition to skip tests for draft pull requests in Playwright workflow 2025-02-26 18:38:27 +01:00
codecalm
cba487f5b7 build fix 2025-02-19 03:19:27 +01:00
Paweł Kuna
edbaa1eddd Add selectable table functionality with active background color (#2171) 2025-02-19 03:16:53 +01:00
Paweł Kuna
378fba89f5 Refactor badge styles, remove Bootstrap styles (#2169) 2025-02-19 02:20:25 +01:00
codecalm
b0a62b7cf5 Add threshold option to argosScreenshot for improved visual comparison 2025-02-19 02:09:48 +01:00
codecalm
1415820cb1 Fix screenshot filename in visual regression tests to use the correct HTML file name 2025-02-19 01:49:58 +01:00
codecalm
81a8738823 Remove limit on visual regression tests to include all HTML files for comprehensive comparison 2025-02-19 01:45:59 +01:00
codecalm
417d0bc444 Fix Playwright version retrieval in workflow to use devDependencies from package.json 2025-02-19 01:31:54 +01:00
codecalm
22e10d4dba Refactor Playwright workflow by removing unnecessary artifact upload step 2025-02-19 01:22:17 +01:00
codecalm
57f6219f7c Integrate Argos CI for visual regression testing and streamline screenshot comparison 2025-02-19 01:18:22 +01:00
codecalm
fbe3680142 Limit visual regression tests to the first 10 HTML files for improved performance 2025-02-19 01:14:53 +01:00
codecalm
c2b446c209 Enhance Playwright workflow with version retrieval and caching for improved performance 2025-02-19 01:13:48 +01:00
codecalm
09844ab64b Remove snapshot update flag from Playwright test command 2025-02-19 01:09:11 +01:00
codecalm
cea1c87c21 Update Playwright test command to include snapshot updates 2025-02-19 01:06:31 +01:00
Paweł Kuna
a2640e2147 Add Playwright configuration and visual regression tests (#2170) 2025-02-19 00:58:10 +01:00
Paweł Kuna
9cd532745a Update border radius variables for consistency across components (#2167) 2025-02-15 13:33:39 +01:00
Paweł Kuna
063bdc28ab Update and simplify main menu (#2166) 2025-02-15 13:20:29 +01:00
Luca Sabato
5d8392366c Fixed missing images in the README and getting started page + minor formatting changes (#2161)
Co-authored-by: Paweł Kuna <1282324+codecalm@users.noreply.github.com>
2025-02-14 14:14:28 +01:00
Paweł Kuna
2d05b5d5d3 Fix chart styling with border-radius (#2160) 2025-02-14 00:17:37 +01:00
Paweł Kuna
ca4ba14718 Enhance navbar styles with new hover effects and color variables (#2159) 2025-02-14 00:01:41 +01:00
codecalm
9755e1e9e9 Update changelog to consolidate payment provider support details 2025-02-13 23:07:24 +01:00
codecalm
954e42f9c0 Update changelog texts 2025-02-13 23:06:57 +01:00
BG-Software
b47815d530 Fix instruction for CDN icons version (#2157) 2025-02-13 23:00:18 +01:00
oksuzgil
1edaff454b New payment provider (TROY) (#2146)
Co-authored-by: Paweł Kuna <1282324+codecalm@users.noreply.github.com>
Co-authored-by: codecalm <codecalm@gmail.com>
2025-02-13 22:59:45 +01:00
Paweł Kuna
b47725dcc2 New text features page (#2152) 2025-02-13 22:49:42 +01:00
Luca Sabato
b85ef1a95e added "start" command to package.json scripts as alias for dev (#2156)
Co-authored-by: Paweł Kuna <1282324+codecalm@users.noreply.github.com>
2025-02-13 22:49:29 +01:00
Paweł Kuna
eff95dc033 Add section comments and format HTML for improved readability (#2158) 2025-02-13 22:41:46 +01:00
ethancrawford
846c48d140 Add various spelling fixes and grammar improvements (#2153)
Co-authored-by: BG-Software <73077398+BG-Software-BG@users.noreply.github.com>
2025-02-13 22:29:45 +01:00
codecalm
ee3862fcf4 Enhance Markdown styling by adding image support in paragraphs and updating image reference in example 2025-02-13 21:41:08 +01:00
codecalm
2fe9e70b54 Update layout for Markdown page to use 'markdown' layout 2025-02-13 21:37:55 +01:00
codecalm
002528fadd Refactor colorpicker to use dynamic color values from site.colors 2025-02-13 21:34:08 +01:00
codecalm
ee5e25a52b Bump @tabler/core version to minor 2025-02-12 21:14:35 +01:00
Paweł Kuna
bd3d959cea Refactor SCSS files to replace divide function with calc (#2150) 2025-02-12 21:12:52 +01:00
BG-Software
afd070012d Fix apexcharts heatmap example in docs (#2147) 2025-02-12 21:12:25 +01:00
ethancrawford
d6a10938e3 Fix broken 'top pages' table (#2144)
Co-authored-by: BG-Software <73077398+BG-Software-BG@users.noreply.github.com>
Co-authored-by: Paweł Kuna <1282324+codecalm@users.noreply.github.com>
2025-02-12 21:09:14 +01:00
Paweł Kuna
f95f2509c7 Update color utility classes and fix colors in pricing page (#2122) 2025-02-12 21:01:04 +01:00
codecalm
3dea9de29c Add "preview" to ignore list in changeset configuration 2025-02-12 19:48:41 +01:00
codecalm
3b0623fc42 build fix 2025-02-12 19:44:43 +01:00
Bartłomiej Gawęda
f38fac3508 Remove rimraf in preview 2025-02-12 19:36:55 +01:00
Paweł Kuna
b4b4d1a816 Add Scroll Spy page (#2142) 2025-02-12 19:21:31 +01:00
Bartłomiej Gawęda
821a1c5405 Use shx for mkdir and rm commands, remove rimraf 2025-02-12 19:11:04 +01:00
codecalm
1b0266e612 Enhance copy-img script to ensure destination directory exists and use shx for cross-platform compatibility 2025-02-12 18:59:23 +01:00
codecalm
3320246d0f Fix clean script in package.json to remove only the dist directory 2025-02-12 18:45:59 +01:00
codecalm
55f467c945 Replace background tasks with concurrently for improved script execution in package.json 2025-02-12 18:37:16 +01:00
codecalm
958ad128ad Refactor package.json scripts for improved readability and consistency 2025-02-12 18:31:04 +01:00
codecalm
06c3b5dd65 Update pnpm to version 9.15.4 in package.json and pnpm-lock.yaml 2025-02-11 20:00:05 +01:00
codecalm
cac2606016 Use cross-env for setting NODE_ENV in watch-html script for better compatibility 2025-02-11 19:52:00 +01:00
codecalm
bc3a8360a7 Add pnpm as a dependency in package.json and update pnpm-lock.yaml 2025-02-11 19:50:52 +01:00
codecalm
6b3bf15c4c Replace 'rm -rf' with 'rimraf' for cross-platform compatibility in clean scripts 2025-02-11 19:15:43 +01:00
281 changed files with 10283 additions and 4432 deletions

63
.build/reformat-mdx.mjs Normal file
View File

@@ -0,0 +1,63 @@
#!/usr/bin/env node
'use strict'
import { readFileSync, writeFileSync } from 'node:fs';
import { join, dirname } from 'node:path';
import { fileURLToPath } from 'node:url'
import { sync } from 'glob';
import * as prettier from "prettier";
const __dirname = dirname(fileURLToPath(import.meta.url))
const docs = sync(join(__dirname, '..', 'docs', '**', '*.mdx'))
async function formatHTML(htmlString) {
try {
const formattedHtml = await prettier.format(htmlString, {
parser: "html",
printWidth: 100,
});
return formattedHtml;
} catch (error) {
console.error("Error formatting HTML:", error);
return htmlString; // Return original in case of an error
}
}
async function replaceAsync(str, regex, asyncFn) {
const matches = [...str.matchAll(regex)];
const replacements = await Promise.all(
matches.map(async (match) => asyncFn(...match))
);
let result = str;
matches.forEach((match, i) => {
result = result.replace(match[0], replacements[i]);
});
return result;
}
for (const file of docs) {
const oldContent = readFileSync(file, 'utf8')
// get codeblocks from markdown
const content = await replaceAsync(oldContent, /(```([a-z0-9]+).*?\n)(.*?)(```)/gs, async (m, m1, m2, m3, m4) => {
if (m2 === 'html') {
m3 = await formatHTML(m3);
// remove empty lines
m3 = m3.replace(/^\s*[\r\n]/gm, '');
return m1 + m3.trim() + "\n" + m4;
}
return m.trim();
})
if (content !== oldContent) {
writeFileSync(file, content, 'utf8')
console.log(`Reformatted ${file}`)
}
}

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Fix overflow of `label` in a `floating-input`

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Enable `scrollSpy` in `countup` module

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Add segmented control component

View File

@@ -1,5 +0,0 @@
---
"preview": patch
---
Fix timeline card layout and profile header styles

View File

@@ -1,4 +0,0 @@
---
---
Refactor bundlewatch workflow to use Turbo

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Fix size of `apexcharts` tooltip marker

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Fix negative margins in `.navbar-bordered` variant

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": minor
---
Refactored the project into a monorepo, removed Gulp, and introduced a new, more efficient build process.

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Use the full license agreement for illustrations in docs

View File

@@ -1,5 +0,0 @@
---
---
Improve documentation for buttons

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Fix vertical alignment in single page and error layouts

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": "minor"
---
Add documentation for segmented control component

View File

@@ -1,5 +0,0 @@
---
"@tabler/core": patch
---
Fix `.avatar-upload` double borders

View File

@@ -1,4 +0,0 @@
---
---
Update `robots.txt` handling and improve sitemap URL generation

66
.github/workflows/argos.yml vendored Normal file
View File

@@ -0,0 +1,66 @@
name: Argos Tests
on:
push:
branches:
- dev
pull_request:
paths:
- 'preview/**/*.js'
- 'preview/**/*.html'
- 'preview/**/*.scss'
- 'core/**/*.js'
- 'core/**/*.scss'
env:
NODE: 20
permissions:
contents: read
jobs:
test:
timeout-minutes: 60
runs-on: ubuntu-latest
if: github.event.pull_request.draft == false
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Cache turbo build setup
uses: actions/cache@v4
with:
path: .turbo
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE }}"
- name: Install PNPM
uses: pnpm/action-setup@v4
- name: Get installed Playwright version
id: playwright-version
run: echo "PLAYWRIGHT_VERSION=$(node -e "console.log(require('./package.json').devDependencies['@playwright/test'])")" >> $GITHUB_ENV
- name: Cache playwright binaries
uses: actions/cache@v4
id: playwright-cache
with:
path: |
~/.cache/ms-playwright
key: ${{ runner.os }}-playwright-${{ env.PLAYWRIGHT_VERSION }}
- name: Install pnpm dependencies
run: pnpm install
- name: Install Playwright Browsers
run: pnpm exec playwright install --with-deps
if: steps.playwright-cache.outputs.cache-hit != 'true'
- name: Run Playwright tests
run: pnpm run playwright

View File

@@ -44,9 +44,6 @@ jobs:
- name: Install pnpm dependencies
run: pnpm install --no-frozen-lockfile
- name: Build
run: pnpm run build
- name: Run bundlewatch
run: pnpm run bundlewatch
env:

View File

@@ -16,8 +16,7 @@
- be14607: Add new color picker component using `coloris.js` library
- d046570: Update Tabler Icons to version 2.23 with 18 new icons added
- 5488c50: New page with payment providers: `payment-providers.html`
- 5488c50: Add support for new payment providers: 2c2p, Adyen, Affirm, Alipay Plus, Allegro Pay, Amazon Pay, Apple Pay, Autopay, Binance USD, Bkash, Cash App, Chime, EasyPaisa, Ethereum, Google Pay, HubSpot, iDeal, Litecoin, Mercado Pago,
MetaMask, MoneyGram, OpenSea, Payconiq, Payka, Payline, PayPo, Paysafe, Poli, Revolut Pay, Samsung Pay, Shop Pay, Solana, Spingo, Stax, Tether, True USD, Venmo, WeChat Pay, Wise, Zelle
- 5488c50: Add support for new payment providers: 2c2p, Adyen, Affirm, Alipay Plus, Allegro Pay, Amazon Pay, Apple Pay, Autopay, Binance USD, Bkash, Cash App, Chime, EasyPaisa, Ethereum, Google Pay, HubSpot, iDeal, Litecoin, Mercado Pago, MetaMask, MoneyGram, OpenSea, Payconiq, Payka, Payline, PayPo, Paysafe, Poli, Revolut Pay, Samsung Pay, Shop Pay, Solana, Spingo, Stax, Tether, True USD, Venmo, WeChat Pay, Wise, Zelle
### Patch Changes

View File

@@ -1,5 +1,5 @@
<p align="center">
<a href="https://github.com/tabler/tabler"><img src="https://raw.githubusercontent.com/tabler/tabler/dev/src/static/logo.svg" alt="A premium and open source dashboard template with a responsive and high-quality UI." width="300"></a><br><br>
<a href="https://github.com/tabler/tabler"><img src="https://raw.githubusercontent.com/tabler/tabler/refs/heads/dev/preview/static/logo.svg" alt="A premium and open source dashboard template with a responsive and high-quality UI." width="300"></a><br><br>
A premium and open source dashboard template with a responsive and high-quality UI.
</p>
@@ -18,9 +18,9 @@ A premium and open source dashboard template with a responsive and high-quality
**If you want to support our project and help me grow it, you can [become a sponsor on GitHub](https://github.com/sponsors/codecalm) or just [donate on PayPal](https://paypal.me/codecalm) :)**
<p align="center">
<a href="https://github.com/sponsors/codecalm">
<img src="https://cdn.jsdelivr.net/gh/tabler/sponsors@latest/sponsors.svg" alt="Tabler sponsors">
</a>
<a href="https://github.com/sponsors/codecalm">
<img src="https://cdn.jsdelivr.net/gh/tabler/sponsors@latest/sponsors.svg" alt="Tabler sponsors">
</a>
</p>
## Testing
@@ -28,21 +28,24 @@ A premium and open source dashboard template with a responsive and high-quality
<p align="center">Browser testing via:</p>
<p align="center">
<a href="https://www.lambdatest.com/" target="_blank">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/14dd2a0a-bafe-436e-a6cb-29636278c781">
<source media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83">
<img src="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83" alt="Tabler Icons preview" width="296">
</picture>
</a>
<a href="https://www.lambdatest.com/" target="_blank">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/14dd2a0a-bafe-436e-a6cb-29636278c781">
<source media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83">
<img src="https://github.com/user-attachments/assets/d3dede5a-d702-47c3-bb66-4d887948ed83" alt="Tabler Icons preview" width="296">
</picture>
</a>
</p>
## 🔎 Preview
Tabler is fully responsive and compatible with all modern browsers. Thanks to its modern and user-friendly design you can create a fully functional interface that users will love! Choose the layouts and components you need and customize them to make your design consistent and eye-catching. Every component has been created with attention to detail to make your interface beautiful! <a href="https://preview.tabler.io">Show me a demo</a>
<a href="https://preview.tabler.io" target="_blank"><img src="https://raw.githubusercontent.com/tabler/tabler/dev/src/static/tabler-preview.png" alt="Tabler preview"></a>
<p align="center">
<a href="https://preview.tabler.io" target="_blank">
<img src="https://raw.githubusercontent.com/tabler/tabler/dev/preview/static/tabler-preview.png" alt="Tabler Preview">
</a>
</p>
## 🚀 Features
@@ -67,8 +70,11 @@ To run the documentation site locally, follow instructions in the [Documentation
## 💕 Sponsor Tabler
<a href="https://github.com/sponsors/codecalm" target="_blank"><img src="/src/static/sponsor-banner-readme.png?raw=true" alt="Sponsor Tabler" /></a>
<p align="center">
<a href="https://github.com/sponsors/codecalm" target="_blank">
<img src="https://raw.githubusercontent.com/tabler/tabler/dev/preview/static/sponsor-banner-homepage.svg" alt="Sponsor Banner">
</a>
</p>
### Sponsors
@@ -94,12 +100,15 @@ To use our build system and run our documentation locally, you'll need a copy of
**OSX users**:
```pnpm install```
```sh
pnpm install
```
and then
```npm run start```
```sh
npm run start
```
**Windows users**:
@@ -216,4 +225,4 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!

View File

@@ -1,38 +0,0 @@
#!/usr/bin/env node
'use strict'
import { readFileSync, writeFileSync } from 'node:fs';
import { join, dirname } from 'node:path';
import { fileURLToPath } from 'node:url'
import { sync } from 'glob';
import beautify from 'js-beautify';
const __dirname = dirname(fileURLToPath(import.meta.url))
const docs = sync(join(__dirname, '..', 'docs', '**', '*.mdx'))
docs.forEach((file, i) => {
const oldContent = readFileSync(file, 'utf8')
// get codeblocks from markdown
const content = oldContent.replace(/(```([a-z0-9]+).*?\n)(.*?)(```)/gs, (m, m1, m2, m3, m4) => {
if (m2 === 'html') {
// m3 = beautify.default.html(m3, {
// "indent_size": 2,
// "indent_char": " ",
// }).trim();
// remove empty lines
m3 = m3.replace(/^\s*[\r\n]/gm, '');
return m1 + m3 + "\n" + m4;
}
return m
})
if (content !== oldContent) {
writeFileSync(file, content, 'utf8')
console.log(`Reformatted ${file}`)
}
})

39
core/CHANGELOG.md Normal file
View File

@@ -0,0 +1,39 @@
# @tabler/core
## 1.1.1
### Patch Changes
- f29c911: Fix Documentation structure
## 1.1.0
### Minor Changes
- a2640e2: Add Playwright configuration and visual regression tests
- d3ae77c: Enable `scrollSpy` in `countup` module
- bd3d959: Refactor SCSS files to replace divide function with calc
- cb278c7: Add Segmented Control component
- b47725d: Add new text features page with mentions: user, color and app.
- b4b4d1a: Add Scroll Spy page
- 9cd5327: Update border radius variables for consistency across components
- 4376968: Add Signature Pad feature and signatures page
- f95f250: Update color utility classes and replace background colors in pricing table
- eaa7f81: Refactored the project into a monorepo, removed Gulp, and introduced a new, more efficient build process.
- ea14462: Add documentation for segmented control component
- 1edaff4: Add new payment provider (Troy)
- edbaa1e: Add selectable table functionality with active background color
- 378fba8: Refactor badge styles, remove Bootstrap styles
- f3c409f: Refactor alert component styles and markup, remove Bootstrap styles
- c240b5a: Refactor accordion component styles and markup, remove Bootstrap styles
### Patch Changes
- 687267d: Fix overflow of `label` in a `floating-input`
- 06b1dec: Fix size of `apexcharts` tooltip marker
- afd0700: Fix apexcharts heatmap example in docs
- 78383ef: Fix negative margins in `.navbar-bordered` variant
- 11f4487: Use the full license agreement for illustrations in docs
- b28ce9f: Fix vertical alignment in single page and error layouts
- 24b944c: Fix `.avatar-upload` double borders
- ca4ba14: Fixes navbar styles with new hover effects and color variables

View File

@@ -0,0 +1,14 @@
---
title: Tabler Emails
seoTitle: Tabler Emails - premium email templates
order: 4
description: Customizable email templates for over 90 clients and devices.
summary: Tabler Emails is a set of 80 eye-catching, customizable HTML templates. They are compatible with over 90 email clients and devices.
seoDescription: Tabler Emails is a collection of 80 premium, customizable HTML templates. They are compatible with over 90 email clients and devices.
---
# Tabler Emails
*Change below image!*
![Tabler Emails](/docs/cover-illustrations.png)

View File

@@ -0,0 +1,29 @@
---
title: Compiled templates
order: 2
seoTitle: Tabler Emails - How to use the compiled HTML email templates
description: Learn how to use the compiled HTML email templates from the Tabler Emails package.
summary: The compiled HTML files from the Tabler Emails package are ready to use in your email marketing campaigns. This guide explains how to use them effectively.
seoDescription: The compiled HTML files from the Tabler Emails package are ready to use in your email marketing campaigns. This guide explains how to use them effectively.
---
## Compiled version of the template
If you only want to change a content - text or images - of the email template, you can just use the compiled HTML files - `compiled.html`. They are ready to use, and you need only a basic knowledge of HTML to modify them.
## How to modify the compiled HTML files
1. Open the `compiled.html` file in your favorite code editor.
2. Find the content you want to change inside the `<body>` element.
3. Modify the content as needed:
* Change the text, which is mostly placed inside the `<p>` or `<h1>` tags.
* Change the images by replacing the `src` attribute of the `<img>` tag.
* Change the links by replacing the `href` attribute of the `<a>` tag.
* Remove the HTML elements you don't need, but only if you're sure that they are not necessary for the email template to work correctly.
4. If you changed the images, make sure to replace them in the `assets/` folder.
5. Remove all the images you don't use from `assets/` to reduce the size of the email template.
## How to use the compiled HTML files
After changing the templates as needed, you can use them in your email campaigns.
The `compiled.html` file with the `assets/` folder should be sent to your email marketing tool, like Mailchimp, SendGrid, or any other.

View File

@@ -0,0 +1,63 @@
---
title: Contents
order: 1
seoTitle: Tabler Emails - Content of the package
description: Content of the Tabler Emails package.
summary: The Tabler Emails package contains files which can be used by everyone, even without great knowledge of HTML.
seoDescription: todo
---
## Folder structure
Once you unzip the downloaded file, you will see the following structure:
```
tabler-emails/
├── emails/
| ├── absence/
| | ├── assets/
| | ├── compiled.html
| | ├── compiled-dark.html
| | ├── source.html
| | ├── source-dark.html
| | ├── screenshot.jpg
| | ├── screenshot-dark.jpg
| | ├── screenshot-mobile.jpg
| | └── screenshot-mobile-dark.jpg
| ├── access-token/
| ├── account-deleted/
| ├── .../
| ├── welcome/
| └── whishlist/
├── images/
| ├── chart-donuts/
| ├── icons/
| ├── illustrations/
| └── overlays/
├── license.txt
└── readme.html
```
## Understanding the file structure in Tabler Emails
The **Tabler Emails** package is organized into a clear and efficient folder structure to streamline the use of its assets. Below is a breakdown of its key directories:
### 1. Email Templates: `emails/`
This folder contains <EmailsCount /> email subfolders, each with a specific template. Each email folder contains the following files:
* Compiled HTML files for light and dark themes. Read more about its usage in the [Compiled HTML](/docs/emails/compiled-html) section.
* Source HTML files for light and dark themes. Find more information in the [Source HTML](/docs/emails/source-html) section.
* Screenshot images for desktop and mobile views.
* Assets folder with images used in the email template and the CSS file with styles
### 2. Images: `images/`
It contains 4 subfolders with images used across the different email templates:
* `chart-donuts/`: Images of donut charts with different fill.
* `icons/`: [Tabler Icons](/icons) used in the email templates, in PNG version.
* `illustrations/`: PNG versions of [Tabler Illustrations](/illustrations) for light and dark themes.
* `overlays/`: overlay images used in the email templates.
### 3. License: `license.txt`
This file contains the license information for the Tabler Emails package.
### 4. Readme: `readme.html`
This file with the main information about the Tabler Emails package. It contains a brief description of the package and instructions on how to use it.

View File

@@ -0,0 +1,9 @@
---
title: Introduction
seoTitle: Introduction to Tabler Emails
description: Base information about Tabler Emails package.
summary: Tabler Emails is a set of 80 eye-catching, customizable HTML templates. They are compatible with over 90 email clients and devices.
seoDescription: Tabler Emails is a collection of 80 premium, customizable HTML templates. They are compatible with over 90 email clients and devices.
---

View File

@@ -0,0 +1,26 @@
---
title: Source templates
order: 3
seoTitle: Tabler Emails - How to use the source HTML email templates
description: Learn how to use the source HTML email templates from the Tabler Emails package.
summary: The source HTML files from the Tabler Emails package needs a bit more work that the compiled ones. Learn how to use them.
seoDescription: The source HTML files from the Tabler Emails package needs a bit more work that the compiled ones. Learn how to use them.
---
## Source version of the template
If you want to make more advanced changes to the email template, you can use the source HTML files - `source.html` combined with the `theme.css` file. They are ready to use, but you need a basic knowledge of HTML and CSS to modify them.
## How to modify the source HTML files
1. Open the `source.html` file in your favorite code editor.
2. Open the `theme.css` file from `assets/`* directory in the same editor.
3. Change all the content and styles as needed.
4. Use a selected tool to inline the CSS styles into the HTML file. There are a lot of options, like:
* Online tools like [Juice](https://automattic.github.io/juice/) or [Mailchimp CSS Inliner Tool](https://templates.mailchimp.com/resources/inline-css/).
* NPM tools like [juice](https://www.npmjs.com/package/juice) or [inline-css](https://www.npmjs.com/package/inline-css).
5. Save the output HTML file.
## How to use the source HTML files
To use the modified HTML template send the output file with the `assets/` folder to your email marketing tool.

View File

@@ -1,6 +1,6 @@
---
title: Tabler Icons
summary: Tabler Icons is a powerful and versatile icon library that offers a huge collection of high quality icons suitable for a wide range of applications. With its clean and modern aesthetic, extensive customisation options, and user-friendly website and plugins, Tabler Icons is an excellent resource for designers and developers looking to enhance their projects with high-quality icons.
summary: Tabler Icons is a powerful and versatile icon library that offers a huge collection of high quality icons suitable for a wide range of applications. With its clean and modern aesthetic, extensive customization options, and user-friendly website and plugins, Tabler Icons is an excellent resource for designers and developers looking to enhance their projects with high-quality icons.
order: 2
description: Over 5000 pixel-perfect icons for web design and development
---

View File

@@ -14,7 +14,7 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
## How to use
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
It's built with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
```js
import { IconArrowDown } from '@tabler/icons-preact';

View File

@@ -14,7 +14,7 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
## How to use
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
It's built with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
```jsx
import { IconArrowLeft } from '@tabler/icons-react';

View File

@@ -15,7 +15,7 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
## How to use
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
It's built with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
```js
import { IconArrowRight } from '@tabler/icons-solidjs';

View File

@@ -15,7 +15,7 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
## How to use
It's build with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
It's built with ESmodules so it's completely tree-shakable. Each icon can be imported as a component.
```sveltehtml
<script lang="ts">
@@ -29,7 +29,7 @@ import { IconHeart } from '@tabler/icons-svelte';
You can pass additional props to adjust the icon.
```html
```sveltehtml
<IconHeart size={48} stroke={1} />
```

View File

@@ -15,7 +15,7 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
## How to use
All icons are Vue components that contain SVG elements. So any icon can be imported and used as a component. It also helps to use threeshaking, so you only import the icons you use.
All icons are Vue components that contain SVG elements, so any icon can be imported and used as a component. It also helps to use treeshaking, so you only import the icons you use.
```vue
<template>

View File

@@ -30,9 +30,14 @@ or just [download from Github](https://github.com/tabler/tabler-icons/releases).
### CDN
```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@$ICONS_VERSION/dist/tabler-icons.min.css">
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@$ICONS_VERSION/dist/tabler-icons.min.css"
/>
```
Instead of a specific version, you can use `latest` to always get the newest icons.
## Usage
### HTML

View File

@@ -16,8 +16,6 @@ All PNG files are stored in `icons` subdirectory.
## CDN
Replace `$ICONS_VERSION` with `latest` or any specific version you need.
#### Outline version
```html
@@ -29,3 +27,5 @@ Replace `$ICONS_VERSION` with `latest` or any specific version you need.
```html
<img src="https://unpkg.com/@tabler/icons-png@$ICONS_VERSION/icons/filled/home.png" />
```
Instead of a specific version, you can use `latest` to always get the newest icons.

View File

@@ -29,7 +29,18 @@ You can paste the content of the icon file into your HTML code to display it on
```html
<a href="">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-disabled" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.25" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon icon-tabler icon-tabler-disabled"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="1.25"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
...
</svg>
Click me
@@ -59,8 +70,6 @@ Add an icon to be displayed on your page with the following markup (`activity` i
## CDN
Replace `$ICONS_VERSION` with `latest` or any specific version you need.
#### Outline version
```html
@@ -72,3 +81,5 @@ Replace `$ICONS_VERSION` with `latest` or any specific version you need.
```html
<img src="https://unpkg.com/@tabler/icons@$ICONS_VERSION/icons/filled/home.svg" />
```
Instead of a specific version, you can use `latest` to always get the newest icons.

File diff suppressed because it is too large Load Diff

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

Before

Width:  |  Height:  |  Size: 866 B

After

Width:  |  Height:  |  Size: 866 B

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 134 KiB

View File

Before

Width:  |  Height:  |  Size: 131 KiB

After

Width:  |  Height:  |  Size: 131 KiB

View File

Before

Width:  |  Height:  |  Size: 124 KiB

After

Width:  |  Height:  |  Size: 124 KiB

View File

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

Before

Width:  |  Height:  |  Size: 168 KiB

After

Width:  |  Height:  |  Size: 168 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

View File

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

View File

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View File

@@ -11,6 +11,6 @@ Find all the guides and resources you need to develop with Tabler and our other
<Card title="UI Components" href="/docs/ui" icon="paint">Free and open source web application UI kit based on Bootstrap</Card>
<Card title="Icons" href="/docs/icons" icon="ghost"><IconsCount /> pixel-perfect icons for web design and development</Card>
<Card title="Illustrations" href="/docs/illustrations" icon="brand-figma"><IllustrationsCount /> customizable SVG illustrations for your web project</Card>
<Card title="Email Templates" icon="mail" disabled badge="Comming soon"><EmailsCount /> responsive email templates ready to use in your marketing campaigns</Card>
<Card title="Email Templates" href="/docs/emails" icon="mail"><EmailsCount /> responsive email templates ready to use in your marketing campaigns</Card>
<Card title="Avatars" icon="user-circle" disabled badge="Comming soon">Package of over 100 avatars for your next web project</Card>
</Cards>

View File

@@ -1,6 +1,6 @@
---
title: Colors
summary: The choice of colors for a website or app interface has an big influence on how users interact with the product and what decisions they make. Harmonic colors can contribute to a nice first impression and encourage users to engage with your product, so it's a very important aspect of a successful design, which needs to be well thought out.
summary: The choice of colors for a website or app interface has a big influence on how users interact with the product and what decisions they make. Harmonious colors can contribute to a nice first impression and encourage users to engage with your product, so it's a very important aspect of a successful design, which needs to be well thought out.
bootstrapLink: utilities/colors/
description: Impact of colors on user interface design.
---
@@ -80,4 +80,4 @@ Use the colors of popular social networks to create a recognizable design and ma
{ name: "flickr", value: "#0063dc" },
{ name: "bitbucket", value: "#0052cc" },
{ name: "tabler", value: "#066fd1" }
]} />
]} />

View File

@@ -7,7 +7,7 @@ description: Role of typography in interface design.
## Headings
Use HTML headings to organize content on your website and make the structure clear and user-friendly. The `h1` to `h6` tags are used to define HTML headings.
Use HTML headings to organize content on your website and make the structure clear and user-friendly. The `h1` to `h6` tags are used to define HTML headings.
The `h1` tag is the highest level and the `h6` tag is the lowest level.
```html
@@ -19,7 +19,7 @@ The `h1` tag is the highest level and the `h6` tag is the lowest level.
<h6>H6 Heading</h6>
```
There is example of headings with different levels:
Below are examples of headings with different levels:
```html example vertical columns={1}
<h1>H1 Heading</h1>
@@ -32,17 +32,20 @@ There is example of headings with different levels:
## Paragraphs
Organize longer pieces of text into paragraphs using the `p` tag. It is the most common element for text content.
Organize longer pieces of text into paragraphs using the `p` tag. It is the most common element for text content.
```html
<p>At vero eos et accusam et justo duo dolores et ea rebum.</p>
```
If you use second paragraph, it will be separated from the first one by a blank line.
If you use a second paragraph, it will be separated from the first one by a blank line.
```html example vertical centered columns={2}
<div>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</p>
<p>
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt
ut labore et dolore magna aliquyam erat, sed diam voluptua.
</p>
<p>At vero eos et accusam et justo duo dolores et ea rebum.</p>
</div>
```
@@ -50,7 +53,7 @@ If you use second paragraph, it will be separated from the first one by a blank
## Semantic text elements
Use a variety of semantic text elements, depending of how you want to display particular fragments of content.
Use a variety of semantic text elements, depending on how you want to display particular fragments of content.
```html
<abbr title="Internationalization">I18N</abbr>
@@ -65,18 +68,17 @@ Use a variety of semantic text elements, depending of how you want to display pa
<mark>Highlighted</mark>
<s>Strikethrough</s>
<samp>Sample</samp>
Text <sub>Subscripted</sub>
Text <sup>Superscripted</sup>
Text <sub>Subscripted</sub> Text <sup>Superscripted</sup>
<time>20:00</time>
<u>Underline</u>
<var>x</var> = <var>y</var> + 2
```
Here is an example of semantic text elements:
Here are examples of semantic text elements:
```html example vertical separated columns={1}
<div>
<abbr title="Internationalization">I1f8N</abbr>
<abbr title="Internationalization">I18N</abbr>
</div>
<div><strong>Bold</strong></div>
<div>
@@ -109,19 +111,15 @@ Here is an example of semantic text elements:
<div>
<samp>Sample</samp>
</div>
<div>Text <sub>Subscripted</sub>
</div>
<div>Text <sup>Superscripted</sup>
</div>
<div>Text <sub>Subscripted</sub></div>
<div>Text <sup>Superscripted</sup></div>
<div>
<time>20:00</time>
</div>
<div>
<u>Underline</u>
</div>
<div>
<var>x</var> = <var>y</var> + 2
</div>
<div><var>x</var> = <var>y</var> + 2</div>
```
@@ -132,9 +130,17 @@ Use the `hr` tag to represent a thematic break between paragraphs within one sec
```html example vertical centered columns={2}
<div>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. A atque ex excepturi fuga magnam nam reiciendis velit. Amet eius eos eveniet fuga in ipsa, ipsum voluptatum. Dolorem expedita quibusdam veniam?</p>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. A atque ex excepturi fuga magnam nam
reiciendis velit. Amet eius eos eveniet fuga in ipsa, ipsum voluptatum. Dolorem expedita
quibusdam veniam?
</p>
<hr />
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. A atque ex excepturi fuga magnam nam reiciendis velit. Amet eius eos eveniet fuga in ipsa, ipsum voluptatum. Dolorem expedita quibusdam veniam?</p>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. A atque ex excepturi fuga magnam nam
reiciendis velit. Amet eius eos eveniet fuga in ipsa, ipsum voluptatum. Dolorem expedita
quibusdam veniam?
</p>
</div>
```
@@ -148,25 +154,29 @@ You can also add a label to a horizontal rule and align it as you see fit.
```html example vertical centered columns={2}
<p>
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut
labore et dolore magna aliquyam erat, sed diam voluptua.
</p>
<div class="hr-text">
<span>Rule text</span>
</div>
<p>
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea
takimata sanctus est Lorem ipsum dolor sit amet.
</p>
<div class="hr-text hr-text-center">
<span>Rule text</span>
</div>
<p>
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut
labore et dolore magna aliquyam erat, sed diam voluptua.
</p>
<div class="hr-text hr-text-end">
<span>Rule text</span>
</div>
<p>
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea
takimata sanctus est Lorem ipsum dolor sit amet.
</p>
```
@@ -262,9 +272,7 @@ Use the `.antialiased` utility to render text using subpixel antialiasing or use
Use the `<kbd>` to indicate input that is typically entered via keyboard.
```html example vertical centered
<div>
To edit settings, press <kbd>ctrl</kbd> + <kbd>,</kbd> or <kbd>ctrl</kbd> + <kbd>C</kbd>.
</div>
<div>To edit settings, press <kbd>ctrl</kbd> + <kbd>,</kbd> or <kbd>ctrl</kbd> + <kbd>C</kbd>.</div>
```
```html
@@ -273,14 +281,26 @@ To edit settings, press <kbd>ctrl</kbd> + <kbd>,</kbd> or <kbd>ctrl</kbd> + <kbd
## Markdown elements
If you can't use the CSS classes you want or if you just want to use HTML tags, use the `.markdown` class in a container. It will apply the default styles for markdown elements.
If you can't use the CSS classes you want, or you just want to use HTML tags, use the `.markdown` class in a container. It will apply the default styles for markdown elements.
```html example centered background="white" columns={2} height="30rem"
<div class="markdown">
<h1>Hello World</h1>
<p>Lorem ipsum<sup>[1]</sup> dolor sit amet, consectetur adipiscing elit. Nulla accumsan, metus ultrices eleifend gravida, nulla nunc varius lectus, nec rutrum justo nibh eu lectus. Ut vulputate semper dui. Fusce erat odio, sollicitudin vel erat vel, interdum mattis neque. Sub<sub>script</sub> works as well!</p>
<p>
Lorem ipsum<sup>[1]</sup> dolor sit amet, consectetur adipiscing elit. Nulla accumsan, metus
ultrices eleifend gravida, nulla nunc varius lectus, nec rutrum justo nibh eu lectus. Ut
vulputate semper dui. Fusce erat odio, sollicitudin vel erat vel, interdum mattis neque. Sub<sub
>script</sub
>
works as well!
</p>
<h2>Second level</h2>
<p>Curabitur accumsan turpis pharetra <strong>augue tincidunt</strong> blandit. Quisque condimentum maximus mi, sit amet commodo arcu rutrum id. Proin pretium urna vel cursus venenatis. Suspendisse potenti. Etiam mattis sem rhoncus lacus dapibus facilisis. Donec at dignissim dui. Ut et neque nisl.</p>
<p>
Curabitur accumsan turpis pharetra <strong>augue tincidunt</strong> blandit. Quisque condimentum
maximus mi, sit amet commodo arcu rutrum id. Proin pretium urna vel cursus venenatis.
Suspendisse potenti. Etiam mattis sem rhoncus lacus dapibus facilisis. Donec at dignissim dui.
Ut et neque nisl.
</p>
<ul>
<li>In fermentum leo eu lectus mollis, quis dictum mi aliquet.</li>
<li>Morbi eu nulla lobortis, lobortis est in, fringilla felis.</li>

View File

@@ -37,12 +37,14 @@ Alert classes affect the color of all the text inside an alert. Use another clas
Add a link to your alert message to redirect users to the details they need to complete or additional information they should read. Use `alert-link` class to style the link and match the text color.
```html example vertical background="surface" columns={2} centered height="120px"
<div class="alert alert-danger m-0">This is a danger alert — <a href="#" class="alert-link">check it out</a>!</div>
<div class="alert alert-danger m-0">
This is a danger alert — <a href="#" class="alert-link">check it out</a>!
</div>
```
## Dismissible alerts
Add the `x` close button to make an alert modal dismissible. Thanks to that, your alert modal will disappear only once the user closes it.
Add the `x` close button to make an alert modal dismissible. Thanks to that, your alert modal will disappear only when the user closes it.
```html
<a class="btn-close" data-bs-dismiss="alert" aria-label="close"></a>
@@ -83,7 +85,7 @@ Add the `x` close button to make an alert modal dismissible. Thanks to that, you
Add an icon to your alert modal to make it more user-friendly and help users easily identify the message.
Use `alert-icon` class for `<svg>` or `<i>`, when using webfont, to provide the proper styling.
Use the `alert-icon` class on an `<svg>` (or on an `<i>` when using the webfont) to provide the proper styling.
```html example vertical background="surface" columns={2} centered separated height="420px"
<div class="alert alert-success" role="alert">
@@ -155,7 +157,9 @@ Use `alert-icon` class for `<svg>` or `<i>`, when using webfont, to provide the
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M12 9v2m0 4v.01" />
<path d="M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75" />
<path
d="M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75"
/>
</svg>
</div>
<div>
@@ -201,10 +205,14 @@ Add an avatar to your alert modal to make it more personalized.
<div class="alert alert-success" role="alert">
<div class="d-flex">
<div>
<span class="avatar me-3" style="background-image: url(/static/samples/avatars/039m.jpg)"></span>
<span
class="avatar me-3"
style="background-image: url(/static/samples/avatars/039m.jpg)"
></span>
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet,
consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</div>
</div>
</div>
@@ -214,27 +222,36 @@ Add an avatar to your alert modal to make it more personalized.
<span class="avatar me-3">JL</span>
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet,
consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</div>
</div>
</div>
<div class="alert alert-warning" role="alert">
<div class="d-flex">
<div>
<span class="avatar me-3" style="background-image: url(/static/samples/avatars/035f.jpg)"></span>
<span
class="avatar me-3"
style="background-image: url(/static/samples/avatars/035f.jpg)"
></span>
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet,
consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</div>
</div>
</div>
<div class="alert alert-danger" role="alert">
<div class="d-flex">
<div>
<span class="avatar me-3" style="background-image: url(/static/samples/avatars/056f.jpg)"></span>
<span
class="avatar me-3"
style="background-image: url(/static/samples/avatars/056f.jpg)"
></span>
</div>
<div>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Lorem ipsum dolor sit amet,
consectetur adipisicing elit. Lorem ipsum dolor sit amet, consectetur adipisicing elit.
</div>
</div>
</div>
@@ -295,7 +312,7 @@ Buttons don't inherit the alert's color, so you should set the proper class if y
## Important alerts
If you want your alert to be really eye-catching, you can add a `alert-important` class. It will use the selected color as a background for the alert.
If you want your alert to be really eye-catching, you can add an `alert-important` class. It will use the selected color as a background for the alert.
```html
<div class="alert alert-important alert-success alert-dismissible" role="alert">...</div>
@@ -354,9 +371,9 @@ You can also use other elements, like icons and dismissible buttons, with this t
</div>
```
## Custom alert's color
## Custom alert color
You're not limited to the 4 default alert's colors. You can use any [base or social color](../base/colors) you want.
You're not limited to the 4 default alert colors. You can use any [base or social color](../base/colors) you want.
```html example vertical background="surface" columns={2} centered separated height="420px"
<div class="alert alert-lime" role="alert">
@@ -374,7 +391,10 @@ You're not limited to the 4 default alert's colors. You can use any [base or soc
<div class="alert alert-instagram alert-dismissible alert-important" role="alert">
<div class="d-flex">
<div>
<span class="avatar me-3" style="background-image: url(/static/samples/avatars/035f.jpg)"></span>
<span
class="avatar me-3"
style="background-image: url(/static/samples/avatars/035f.jpg)"
></span>
</div>
<div>
<h4 class="alert-title">Sophia just added a new post on Instagram</h4>

View File

@@ -1,12 +1,12 @@
---
title: Avatars
summary: Avatars help customise various elements of a user interface and make the product experience more personalised. They are often used in communication apps, collaboration tools and social media.
summary: Avatars help customize various elements of a user interface and make the product experience more personalized. They are often used in communication apps, collaboration tools and social media.
description: Personalize UI with user avatars.
---
## Default markup
Use the `avatar` class to add an avatar to your interface design for greater customisation.
Use the `avatar` class to add an avatar to your interface design for greater customization.
```html example centered separated code
<span class="avatar" style="background-image: url(/samples/avatars/002f.jpg)"></span>
@@ -16,7 +16,7 @@ Use the `avatar` class to add an avatar to your interface design for greater cus
## Avatar image
Set an image as the background to make users easy to indentify and create a personalised experience.
Set an image as the background to make users easy to indentify and create a personalized experience.
```html example centered separated code
<span class="avatar" style="background-image: url(/samples/avatars/016f.jpg)"></span>
@@ -38,25 +38,58 @@ You can also use initials instead of pictures.
## Avatar icons
Apart from pictures and initials, you can also use icons to make the avatars more universal.
Besides pictures and initials, you can also use icons to make the avatars more universal.
```html example centered separated
<span class="avatar">
<svg xmlns="http://www.w3.org/2000/svg" class="icon avatar-icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon avatar-icon"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="2"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<circle cx="12" cy="7" r="4" />
<path d="M6 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
</svg>
</span>
<span class="avatar">
<svg xmlns="http://www.w3.org/2000/svg" class="icon avatar-icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon avatar-icon"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="2"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<line x1="12" y1="5" x2="12" y2="19" />
<line x1="5" y1="12" x2="19" y2="12" />
</svg>
</span>
<span class="avatar">
<svg xmlns="http://www.w3.org/2000/svg" class="icon avatar-icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon avatar-icon"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="2"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<circle cx="9" cy="7" r="4" />
<path d="M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2" />
@@ -99,7 +132,7 @@ Using Bootstraps typical naming structure, you can create a standard avatar o
## Avatar status
Add a status indicator to your avatar to show, for instance, if a users is online or offline or indicate the number of messages they have received.
Add a status indicator to your avatar to show, for instance, if a user is online or offline or indicate the number of messages they have received.
```html example centered separated code
<span class="avatar" style="background-image: url(/samples/avatars/018m.jpg)"></span>
@@ -109,9 +142,7 @@ Add a status indicator to your avatar to show, for instance, if a users is onlin
<span class="avatar" style="background-image: url(/samples/avatars/022m.jpg)">
<span class="badge bg-success"></span>
</span>
<span class="avatar">
<span class="badge bg-warning"></span>SA
</span>
<span class="avatar"> <span class="badge bg-warning"></span>SA </span>
<span class="avatar" style="background-image: url(/samples/avatars/022m.jpg)">
<span class="badge bg-info"></span>
</span>
@@ -163,13 +194,34 @@ Make the list stack once a certain number of avatars is reached to make it look
```html example centered separated code
<div class="avatar-list avatar-list-stacked">
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/035m.jpg)"></span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/027f.jpg)"></span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/036f.jpg)"></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/035m.jpg)"
></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/027f.jpg)"
></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/036f.jpg)"
></span>
<span class="avatar avatar-sm rounded-circle">SA</span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/034f.jpg)"></span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/043f.jpg)"></span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/039f.jpg)"></span>
<span class="avatar avatar-sm rounded-circle" style="background-image: url(/samples/avatars/020m.jpg)"></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/034f.jpg)"
></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/043f.jpg)"
></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/039f.jpg)"
></span>
<span
class="avatar avatar-sm rounded-circle"
style="background-image: url(/samples/avatars/020m.jpg)"
></span>
</div>
```

View File

@@ -27,18 +27,12 @@ The default badges are square and come in the basic set of colors.
## Headings
```html example columns={1} height="20rem" centered
<h1>Example heading <span class="badge">New</span>
</h1>
<h2>Example heading <span class="badge">New</span>
</h2>
<h3>Example heading <span class="badge">New</span>
</h3>
<h4>Example heading <span class="badge">New</span>
</h4>
<h5>Example heading <span class="badge">New</span>
</h5>
<h6>Example heading <span class="badge">New</span>
</h6>
<h1>Example heading <span class="badge">New</span></h1>
<h2>Example heading <span class="badge">New</span></h2>
<h3>Example heading <span class="badge">New</span></h3>
<h4>Example heading <span class="badge">New</span></h4>
<h5>Example heading <span class="badge">New</span></h5>
<h6>Example heading <span class="badge">New</span></h6>
```
## Outline badges
@@ -111,8 +105,8 @@ Badges can be used as part of links or buttons to provide a counter.
The results can be seen in the example below.
```html example centered separated
<button type="button" class="btn">Notifications <span class="badge bg-red-lt ms-2">4</span>
</button>
<button type="button" class="btn">Notifications <span class="badge bg-green-lt ms-2">4</span>
<button type="button" class="btn">Notifications <span class="badge bg-red-lt ms-2">4</span></button>
<button type="button" class="btn">
Notifications <span class="badge bg-green-lt ms-2">4</span>
</button>
```

View File

@@ -92,7 +92,18 @@ You can use icons in breadcrumbs to make them more visually appealing. The examp
<ol class="breadcrumb">
<li class="breadcrumb-item">
<a href="#">
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="2"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<polyline points="5 12 3 12 12 3 21 12 19 12" />
<path d="M5 12v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-8" />
@@ -151,18 +162,33 @@ You can use breadcrumbs in headers to show the current page location and provide
</ol>
</div>
<h2 class="page-title">
<span class="text-truncate">Knights of Ni, we are but simple travelers who seek the enchanter who lives beyond these woods.</span>
<span class="text-truncate"
>Knights of Ni, we are but simple travelers who seek the enchanter who lives beyond these
woods.</span
>
</h2>
</div>
<div class="col-auto">
<div class="btn-list">
<a href="#" class="btn d-none d-md-inline-flex">
<svg xmlns="http://www.w3.org/2000/svg" class="icon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<svg
xmlns="http://www.w3.org/2000/svg"
class="icon"
width="24"
height="24"
viewBox="0 0 24 24"
stroke-width="2"
stroke="currentColor"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
>
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1" />
<path d="M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415z" />
<path d="M16 5l3 3" />
</svg> Edit
</svg>
Edit
</a>
<a href="#" class="btn btn-primary">Publish</a>
</div>

Some files were not shown because too many files have changed in this diff Show More