Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
a45f9a771a
|
|||
|
378efb126c
|
|||
|
6dde2e7749
|
|||
|
747540c9cc
|
|||
|
07f31f39a0
|
|||
|
bb0ecfbb26
|
|||
|
109b48ec20
|
|||
|
eeba687551
|
|||
|
b888455add
|
|||
|
8a4595ce8b
|
|||
|
c1e56f0c20
|
|||
|
ccc85b2b62
|
|||
|
458201e693
|
|||
|
746e36f1b9
|
|||
|
e2df9d2e39
|
+5
-3
@@ -2,6 +2,9 @@
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Claude
|
||||
.claude/*.local.json
|
||||
|
||||
# Dependencies
|
||||
node_modules/
|
||||
npm-debug.log*
|
||||
@@ -10,10 +13,10 @@ yarn-error.log*
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
|
||||
# Source SVGs (too large for git)
|
||||
# Source SVGs
|
||||
svgs/
|
||||
|
||||
# Data files (generated)
|
||||
# Data files
|
||||
data/all_icons.json
|
||||
data/page*.json
|
||||
data/icons-full.json
|
||||
@@ -21,4 +24,3 @@ data/*.tmp
|
||||
|
||||
# FontForge temp files
|
||||
*.new
|
||||
fonts/webfonts/*.new
|
||||
|
||||
@@ -4,16 +4,16 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
||||
|
||||
## Project Overview
|
||||
|
||||
This is **@invisi/flaticon-uicons**, a local web-compatible icon font package with 50,492+ icons across 15 style variations (stroke weights × corner styles). Icons are sourced from Flaticon's public API and converted to webfonts using FontForge.
|
||||
This is **@invisi/ficons**, a local web-compatible icon font package with thousands of icons across 15 style variations (stroke weights × corner styles). Icons are converted to webfonts using FontForge.
|
||||
|
||||
The output is a drop-in CSS font system - users link `fonts/flaticon.css` and use class names like `fi-rs-bookmark` to display icons.
|
||||
The output is a drop-in CSS font system - users link `fonts/ficons.css` and use class names like `fi-rs-bookmark` to display icons.
|
||||
|
||||
## Development Commands
|
||||
|
||||
```bash
|
||||
# Fetch latest icon metadata from Flaticon API (writes to data/all_icons.json)
|
||||
# Fetch latest icon metadata and sync SVGs (writes to data/all_icons.json + svgs/*/*.svg)
|
||||
npm run update:icons
|
||||
# or: node update-icon-list.js
|
||||
# or: node update-icons.js
|
||||
|
||||
# Convert JSON to browser-ready JS (writes to data/all_icons.js)
|
||||
npm run build:icons
|
||||
@@ -44,9 +44,9 @@ Examples: `fi-rs-bookmark`, `fi-br-home`, `fi-brands-instagram`
|
||||
|
||||
### Data Pipeline
|
||||
|
||||
1. **`update-icon-list.js`** - Fetches icon metadata from Flaticon API with pagination (117 pages). Rate-limited (100ms delay). Outputs `data/all_icons.json` (~53MB).
|
||||
1. **`update-icons.js`** - Fetches icon metadata page-by-page and immediately syncs SVG files for each page into `svgs/{prefix}/` (to avoid expiring SVG tokens), then writes `data/all_icons.json`. Existing files are skipped unless icon metadata changed.
|
||||
|
||||
2. **`build-icons-js.js`** - Converts JSON to `window.FLATICON_ICONS` global for browser use in explorer (~5.7MB).
|
||||
2. **`build-icons-js.js`** - Converts JSON to `window.FICONS_DATA` global for browser use in explorer.
|
||||
|
||||
3. **`build-fonts.js`** - Node.js orchestrator that calls FontForge via `scripts/build-font.py` to convert SVGs → TTF → WOFF/WOFF2. Generates CSS with `@font-face` rules and content-based icon classes.
|
||||
|
||||
@@ -62,7 +62,7 @@ Examples: `fi-rs-bookmark`, `fi-br-home`, `fi-brands-instagram`
|
||||
|
||||
### Key Files
|
||||
|
||||
- `fonts/flaticon.css` - Unified CSS importing all font-face definitions
|
||||
- `fonts/ficons.css` - Unified CSS importing all font-face definitions
|
||||
- `explorer.html` + `explorer.js` + `explorer.css` - Interactive icon browser with search/filter
|
||||
- `index.js` - Module exports for npm distribution
|
||||
|
||||
|
||||
@@ -1,137 +1,34 @@
|
||||
# [@invisi/flaticon-uicons](https://www.flaticon.com/uicons/interface-icons)
|
||||
# @invisi/ficons
|
||||
|
||||
A local web-compatible icon font package with **50,000+ icons** across multiple style variations. Icons are sourced from Flaticon's public API and converted to webfonts using FontForge.
|
||||
A local icon font package with webfonts, a small icon dataset, and a built-in explorer.
|
||||
|
||||

|
||||
## Install
|
||||
|
||||
## Features
|
||||
|
||||
- **50,492+ icons** across 15 style variations (stroke weights × corner styles)
|
||||
- **Self-hosted** - no CDN dependencies
|
||||
- **Interactive explorer** - browse, search, and filter icons locally
|
||||
- **Web fonts** - WOFF2, WOFF, TTF formats
|
||||
- **Easy integration** - drop-in CSS with class-based icons
|
||||
|
||||
## Installation
|
||||
|
||||
```shell
|
||||
npm i @invisi/flaticon-uicons
|
||||
```sh
|
||||
npm i @invisi/ficons
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
|
||||
Include the CSS in your HTML:
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="fonts/flaticon.css">
|
||||
```
|
||||
|
||||
Use icons with `<span>` or `<i>` elements:
|
||||
## Basic usage
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="fonts/ficons.css">
|
||||
<i class="fi fi-rs-user"></i>
|
||||
<span class="fi fi-brs-home"></span>
|
||||
<i class="fi fi-brands-instagram"></i>
|
||||
```
|
||||
|
||||
## Icon Styles
|
||||
## CLI
|
||||
|
||||
| Weight | Corner | Prefix | Example |
|
||||
|:-----------|:---------|:-------|:-------------------------------|
|
||||
| Regular | Straight | fi-rs | `<i class="fi fi-rs-user"></i>` |
|
||||
| Regular | Rounded | fi-rr | `<i class="fi fi-rr-user"></i>` |
|
||||
| Bold | Straight | fi-bs | `<i class="fi fi-bs-user"></i>` |
|
||||
| Bold | Rounded | fi-br | `<i class="fi fi-br-user"></i>` |
|
||||
| Solid | Straight | fi-ss | `<i class="fi fi-ss-user"></i>` |
|
||||
| Solid | Rounded | fi-sr | `<i class="fi fi-sr-user"></i>` |
|
||||
| Thin | Straight | fi-ts | `<i class="fi fi-ts-user"></i>` |
|
||||
| Thin | Rounded | fi-tr | `<i class="fi fi-tr-user"></i>` |
|
||||
| Brands | - | fi-brands | `<i class="fi fi-brands-facebook"></i>` |
|
||||
|
||||
## Icon Count
|
||||
|
||||
| Variant | Icons |
|
||||
|-------------------|--------|
|
||||
| Regular Straight | 5,043 |
|
||||
| Regular Rounded | 5,039 |
|
||||
| Bold Straight | 5,055 |
|
||||
| Bold Rounded | 5,041 |
|
||||
| Solid Straight | 5,044 |
|
||||
| Solid Rounded | 5,051 |
|
||||
| Thin Straight | 5,053 |
|
||||
| Thin Rounded | 5,032 |
|
||||
| Regular Chubby | 3,093 |
|
||||
| Solid Chubby | 3,093 |
|
||||
| Thin Chubby | 3,093 |
|
||||
| Duotone Straight | 180 |
|
||||
| Duotone Rounded | 160 |
|
||||
| Duotone Chubby | 270 |
|
||||
| Brands | 245 |
|
||||
|
||||
**Total: 50,492 icon variations**
|
||||
|
||||
## Styling
|
||||
|
||||
Icons inherit `font-size` and `color` from their parent:
|
||||
|
||||
```html
|
||||
<!-- Size -->
|
||||
<i class="fi fi-rs-heart" style="font-size: 24px;"></i>
|
||||
<i class="fi fi-rs-heart" style="font-size: 48px;"></i>
|
||||
|
||||
<!-- Color -->
|
||||
<i class="fi fi-rs-star" style="color: #f1c40f;"></i>
|
||||
<i class="fi fi-rs-heart" style="color: #e74c3c;"></i>
|
||||
```sh
|
||||
npx @invisi/ficons explore
|
||||
npx @invisi/ficons search camera
|
||||
npx @invisi/ficons search camera --variation rr
|
||||
```
|
||||
|
||||
## Package Structure
|
||||
## Development
|
||||
|
||||
```
|
||||
fonts/
|
||||
flaticon.css # Unified CSS (imports all styles)
|
||||
css/
|
||||
flaticon-regular-straight.css
|
||||
flaticon-regular-rounded.css
|
||||
flaticon-bold-straight.css
|
||||
...
|
||||
webfonts/ # Font files (woff2, woff, ttf)
|
||||
data/
|
||||
all_icons.js # Icon data for explorer
|
||||
explorer.html # Interactive icon browser
|
||||
```
|
||||
|
||||
## Icon Explorer
|
||||
|
||||
Open `explorer.html` in a browser to:
|
||||
|
||||
- Browse all 50,000+ icons
|
||||
- Search by name or tags
|
||||
- Filter by weight, corner style, and type
|
||||
- Copy HTML snippets and CSS classes
|
||||
- Adjust icon preview size
|
||||
|
||||
## Development Scripts
|
||||
|
||||
```bash
|
||||
# Fetch latest icon metadata from Flaticon API
|
||||
```sh
|
||||
# Fetch metadata and sync SVGs page-by-page
|
||||
npm run update:icons
|
||||
# or: node update-icon-list.js
|
||||
|
||||
# Convert JSON to browser-ready JS
|
||||
npm run build:icons
|
||||
# or: node build-icons-js.js
|
||||
|
||||
# Generate webfonts from SVGs using FontForge
|
||||
npm run build:fonts
|
||||
# or: node build-fonts.js
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Icons sourced from [Flaticon UIcons](https://www.flaticon.com/uicons). Please refer to [Flaticon's license](https://www.flaticon.com/legal) for usage terms.
|
||||
|
||||
## Attribution
|
||||
|
||||
```
|
||||
Uicons by <a href="https://www.flaticon.com/uicons">Flaticon</a>
|
||||
```
|
||||
|
||||
+14
-11
@@ -60,12 +60,15 @@ function buildCss({ order, mapping, outputPath }) {
|
||||
// Generate base.css with shared styles
|
||||
const baseLines = [];
|
||||
baseLines.push('/*!');
|
||||
baseLines.push(' * Flaticon Icon Fonts - Base Styles');
|
||||
baseLines.push(' * Ficons Icon Fonts - Base Styles');
|
||||
baseLines.push(' * Required for all icon fonts to render correctly');
|
||||
baseLines.push(' */');
|
||||
baseLines.push('');
|
||||
baseLines.push('[class^="fi-"], [class*=" fi-"] {');
|
||||
baseLines.push(' display: inline-block;');
|
||||
baseLines.push(' width: 1em;');
|
||||
baseLines.push(' height: 1em;');
|
||||
baseLines.push(' text-align: center;');
|
||||
baseLines.push(' font-style: normal;');
|
||||
baseLines.push(' font-weight: normal !important;');
|
||||
baseLines.push(' font-variant: normal;');
|
||||
@@ -99,20 +102,20 @@ function buildCss({ order, mapping, outputPath }) {
|
||||
const lines = [];
|
||||
lines.push('/*!');
|
||||
lines.push(` * ${label} (${prefix})`);
|
||||
lines.push(' * Generated from Flaticon icon API');
|
||||
lines.push(' * Icon font generated from SVG sources');
|
||||
lines.push(' */');
|
||||
lines.push('@import url("./base.css");');
|
||||
lines.push('@font-face {');
|
||||
lines.push(` font-family: "flaticon-${fileSuffix}";`);
|
||||
lines.push(` src: url("../webfonts/flaticon-${fileSuffix}.woff2") format("woff2"),`);
|
||||
lines.push(` url("../webfonts/flaticon-${fileSuffix}.woff") format("woff"),`);
|
||||
lines.push(` url("../webfonts/flaticon-${fileSuffix}.ttf") format("truetype");`);
|
||||
lines.push(` font-family: "ficons-${fileSuffix}";`);
|
||||
lines.push(` src: url("../webfonts/ficons-${fileSuffix}.woff2") format("woff2"),`);
|
||||
lines.push(` url("../webfonts/ficons-${fileSuffix}.woff") format("woff"),`);
|
||||
lines.push(` url("../webfonts/ficons-${fileSuffix}.ttf") format("truetype");`);
|
||||
lines.push(' font-display: swap;');
|
||||
lines.push('}');
|
||||
lines.push('');
|
||||
lines.push(`i[class^="fi-${prefix}-"]:before, i[class*=" fi-${prefix}-"]:before,`);
|
||||
lines.push(`span[class^="fi-${prefix}-"]:before, span[class*=" fi-${prefix}-"]:before {`);
|
||||
lines.push(` font-family: flaticon-${fileSuffix} !important;`);
|
||||
lines.push(` font-family: ficons-${fileSuffix} !important;`);
|
||||
lines.push(' font-style: normal;');
|
||||
lines.push(' font-weight: normal !important;');
|
||||
lines.push('}');
|
||||
@@ -148,11 +151,11 @@ function buildCss({ order, mapping, outputPath }) {
|
||||
fs.writeFileSync(path.join(cssDir, `${stroke}.css`), groupLines.join('\n'));
|
||||
});
|
||||
|
||||
// Generate all.css (main entry point)
|
||||
// Generate ficons.css (main entry point)
|
||||
const allLines = [];
|
||||
allLines.push('/*!');
|
||||
allLines.push(' * Flaticon Icon Fonts - All Icons');
|
||||
allLines.push(' * Generated from Flaticon icon API');
|
||||
allLines.push(' * Ficons Icon Fonts - All Icons');
|
||||
allLines.push(' * Icon fonts generated from SVG sources');
|
||||
allLines.push(' */');
|
||||
allLines.push('');
|
||||
allLines.push('@import url("./css/base.css");');
|
||||
@@ -204,7 +207,7 @@ function main() {
|
||||
const prefixes = args.prefix ? String(args.prefix).split(',') : Object.keys(PREFIX_CONFIG);
|
||||
const clean = Boolean(args.clean);
|
||||
const outputDir = args.outputDir || 'fonts/webfonts';
|
||||
const cssPath = args.css || 'fonts/all.css';
|
||||
const cssPath = args.css || 'fonts/ficons.css';
|
||||
|
||||
const iconsByPrefix = loadIcons();
|
||||
const buildOrder = Object.keys(PREFIX_CONFIG).filter(prefix => prefixes.includes(prefix));
|
||||
|
||||
+16
-7
@@ -1,6 +1,20 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
function toEssentialIcon(icon = {}) {
|
||||
const name = typeof icon.name === 'string' ? icon.name : '';
|
||||
const prefix = typeof icon.prefix === 'string' ? icon.prefix : '';
|
||||
|
||||
if (!name || !prefix) return null;
|
||||
|
||||
const minimal = { name, prefix };
|
||||
if (typeof icon.tags === 'string' && icon.tags.trim()) {
|
||||
minimal.tags = icon.tags;
|
||||
}
|
||||
|
||||
return minimal;
|
||||
}
|
||||
|
||||
function buildIconsJs({
|
||||
inputPath = path.join(__dirname, 'data', 'all_icons.json'),
|
||||
outputPath = path.join(__dirname, 'data', 'all_icons.js')
|
||||
@@ -10,14 +24,9 @@ function buildIconsJs({
|
||||
}
|
||||
|
||||
const raw = fs.readFileSync(inputPath, 'utf8');
|
||||
const icons = JSON.parse(raw).map(({ name, prefix, tags, is_brand }) => ({
|
||||
name,
|
||||
prefix,
|
||||
tags,
|
||||
is_brand
|
||||
}));
|
||||
const icons = JSON.parse(raw).map(toEssentialIcon).filter(Boolean);
|
||||
|
||||
const payload = `window.FLATICON_ICONS = ${JSON.stringify(icons)};\n`;
|
||||
const payload = `window.FICONS_DATA = ${JSON.stringify(icons)};\n`;
|
||||
fs.writeFileSync(outputPath, payload, 'utf8');
|
||||
|
||||
const sizeMb = (payload.length / (1024 * 1024)).toFixed(1);
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+3
-3
@@ -3,8 +3,8 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Flaticon Explorer</title>
|
||||
<link rel="stylesheet" href="fonts/all.css">
|
||||
<title>Ficons Explorer</title>
|
||||
<link rel="stylesheet" href="fonts/ficons.css">
|
||||
<link rel="stylesheet" href="explorer.css">
|
||||
<script>try{document.documentElement.dataset.theme=localStorage.getItem('theme')??(matchMedia('(prefers-color-scheme:dark)').matches?'dark':'light')}catch{}</script>
|
||||
</head>
|
||||
@@ -17,7 +17,7 @@
|
||||
<span class="fi fi-rs-sparkles"></span>
|
||||
</div>
|
||||
<div>
|
||||
<h1>Flaticon Explorer</h1>
|
||||
<h1>Ficons Explorer</h1>
|
||||
<div class="header-subtitle">Just a little place to find nice icons</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
+2
-2
@@ -70,8 +70,8 @@ function getCurrentPrefix() {
|
||||
|
||||
async function loadIcons() {
|
||||
try {
|
||||
if (Array.isArray(window.FLATICON_ICONS) && window.FLATICON_ICONS.length) {
|
||||
allIcons = window.FLATICON_ICONS;
|
||||
if (Array.isArray(window.FICONS_DATA) && window.FICONS_DATA.length) {
|
||||
allIcons = window.FICONS_DATA;
|
||||
} else {
|
||||
const response = await fetch('data/all_icons.json');
|
||||
if (!response.ok) throw new Error('Failed to load icons');
|
||||
|
||||
+4
-1
@@ -1,10 +1,13 @@
|
||||
/*!
|
||||
* Flaticon Icon Fonts - Base Styles
|
||||
* Ficons Icon Fonts - Base Styles
|
||||
* Required for all icon fonts to render correctly
|
||||
*/
|
||||
|
||||
[class^="fi-"], [class*=" fi-"] {
|
||||
display: inline-block;
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
font-variant: normal;
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Bold Rounded (br)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-bold-rounded";
|
||||
src: url("../webfonts/flaticon-bold-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-bold-rounded.woff") format("woff"),
|
||||
url("../webfonts/flaticon-bold-rounded.ttf") format("truetype");
|
||||
font-family: "ficons-bold-rounded";
|
||||
src: url("../webfonts/ficons-bold-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-bold-rounded.woff") format("woff"),
|
||||
url("../webfonts/ficons-bold-rounded.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-br-"]:before, i[class*=" fi-br-"]:before,
|
||||
span[class^="fi-br-"]:before, span[class*=" fi-br-"]:before {
|
||||
font-family: flaticon-bold-rounded !important;
|
||||
font-family: ficons-bold-rounded !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Bold Straight (bs)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-bold-straight";
|
||||
src: url("../webfonts/flaticon-bold-straight.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-bold-straight.woff") format("woff"),
|
||||
url("../webfonts/flaticon-bold-straight.ttf") format("truetype");
|
||||
font-family: "ficons-bold-straight";
|
||||
src: url("../webfonts/ficons-bold-straight.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-bold-straight.woff") format("woff"),
|
||||
url("../webfonts/ficons-bold-straight.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-bs-"]:before, i[class*=" fi-bs-"]:before,
|
||||
span[class^="fi-bs-"]:before, span[class*=" fi-bs-"]:before {
|
||||
font-family: flaticon-bold-straight !important;
|
||||
font-family: ficons-bold-straight !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Brands (brands)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-brands";
|
||||
src: url("../webfonts/flaticon-brands.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-brands.woff") format("woff"),
|
||||
url("../webfonts/flaticon-brands.ttf") format("truetype");
|
||||
font-family: "ficons-brands";
|
||||
src: url("../webfonts/ficons-brands.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-brands.woff") format("woff"),
|
||||
url("../webfonts/ficons-brands.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-brands-"]:before, i[class*=" fi-brands-"]:before,
|
||||
span[class^="fi-brands-"]:before, span[class*=" fi-brands-"]:before {
|
||||
font-family: flaticon-brands !important;
|
||||
font-family: ficons-brands !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Duotone Chubby (dc)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-duotone-chubby";
|
||||
src: url("../webfonts/flaticon-duotone-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-duotone-chubby.woff") format("woff"),
|
||||
url("../webfonts/flaticon-duotone-chubby.ttf") format("truetype");
|
||||
font-family: "ficons-duotone-chubby";
|
||||
src: url("../webfonts/ficons-duotone-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-duotone-chubby.woff") format("woff"),
|
||||
url("../webfonts/ficons-duotone-chubby.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-dc-"]:before, i[class*=" fi-dc-"]:before,
|
||||
span[class^="fi-dc-"]:before, span[class*=" fi-dc-"]:before {
|
||||
font-family: flaticon-duotone-chubby !important;
|
||||
font-family: ficons-duotone-chubby !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Duotone Rounded (dr)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-duotone-rounded";
|
||||
src: url("../webfonts/flaticon-duotone-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-duotone-rounded.woff") format("woff"),
|
||||
url("../webfonts/flaticon-duotone-rounded.ttf") format("truetype");
|
||||
font-family: "ficons-duotone-rounded";
|
||||
src: url("../webfonts/ficons-duotone-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-duotone-rounded.woff") format("woff"),
|
||||
url("../webfonts/ficons-duotone-rounded.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-dr-"]:before, i[class*=" fi-dr-"]:before,
|
||||
span[class^="fi-dr-"]:before, span[class*=" fi-dr-"]:before {
|
||||
font-family: flaticon-duotone-rounded !important;
|
||||
font-family: ficons-duotone-rounded !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Duotone Straight (ds)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-duotone-straight";
|
||||
src: url("../webfonts/flaticon-duotone-straight.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-duotone-straight.woff") format("woff"),
|
||||
url("../webfonts/flaticon-duotone-straight.ttf") format("truetype");
|
||||
font-family: "ficons-duotone-straight";
|
||||
src: url("../webfonts/ficons-duotone-straight.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-duotone-straight.woff") format("woff"),
|
||||
url("../webfonts/ficons-duotone-straight.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-ds-"]:before, i[class*=" fi-ds-"]:before,
|
||||
span[class^="fi-ds-"]:before, span[class*=" fi-ds-"]:before {
|
||||
font-family: flaticon-duotone-straight !important;
|
||||
font-family: ficons-duotone-straight !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Regular Chubby (rc)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-regular-chubby";
|
||||
src: url("../webfonts/flaticon-regular-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-regular-chubby.woff") format("woff"),
|
||||
url("../webfonts/flaticon-regular-chubby.ttf") format("truetype");
|
||||
font-family: "ficons-regular-chubby";
|
||||
src: url("../webfonts/ficons-regular-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-regular-chubby.woff") format("woff"),
|
||||
url("../webfonts/ficons-regular-chubby.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-rc-"]:before, i[class*=" fi-rc-"]:before,
|
||||
span[class^="fi-rc-"]:before, span[class*=" fi-rc-"]:before {
|
||||
font-family: flaticon-regular-chubby !important;
|
||||
font-family: ficons-regular-chubby !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Regular Rounded (rr)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-regular-rounded";
|
||||
src: url("../webfonts/flaticon-regular-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-regular-rounded.woff") format("woff"),
|
||||
url("../webfonts/flaticon-regular-rounded.ttf") format("truetype");
|
||||
font-family: "ficons-regular-rounded";
|
||||
src: url("../webfonts/ficons-regular-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-regular-rounded.woff") format("woff"),
|
||||
url("../webfonts/ficons-regular-rounded.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-rr-"]:before, i[class*=" fi-rr-"]:before,
|
||||
span[class^="fi-rr-"]:before, span[class*=" fi-rr-"]:before {
|
||||
font-family: flaticon-regular-rounded !important;
|
||||
font-family: ficons-regular-rounded !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Regular Straight (rs)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-regular-straight";
|
||||
src: url("../webfonts/flaticon-regular-straight.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-regular-straight.woff") format("woff"),
|
||||
url("../webfonts/flaticon-regular-straight.ttf") format("truetype");
|
||||
font-family: "ficons-regular-straight";
|
||||
src: url("../webfonts/ficons-regular-straight.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-regular-straight.woff") format("woff"),
|
||||
url("../webfonts/ficons-regular-straight.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-rs-"]:before, i[class*=" fi-rs-"]:before,
|
||||
span[class^="fi-rs-"]:before, span[class*=" fi-rs-"]:before {
|
||||
font-family: flaticon-regular-straight !important;
|
||||
font-family: ficons-regular-straight !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Solid Chubby (sc)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-solid-chubby";
|
||||
src: url("../webfonts/flaticon-solid-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-solid-chubby.woff") format("woff"),
|
||||
url("../webfonts/flaticon-solid-chubby.ttf") format("truetype");
|
||||
font-family: "ficons-solid-chubby";
|
||||
src: url("../webfonts/ficons-solid-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-solid-chubby.woff") format("woff"),
|
||||
url("../webfonts/ficons-solid-chubby.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-sc-"]:before, i[class*=" fi-sc-"]:before,
|
||||
span[class^="fi-sc-"]:before, span[class*=" fi-sc-"]:before {
|
||||
font-family: flaticon-solid-chubby !important;
|
||||
font-family: ficons-solid-chubby !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Solid Rounded (sr)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-solid-rounded";
|
||||
src: url("../webfonts/flaticon-solid-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-solid-rounded.woff") format("woff"),
|
||||
url("../webfonts/flaticon-solid-rounded.ttf") format("truetype");
|
||||
font-family: "ficons-solid-rounded";
|
||||
src: url("../webfonts/ficons-solid-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-solid-rounded.woff") format("woff"),
|
||||
url("../webfonts/ficons-solid-rounded.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-sr-"]:before, i[class*=" fi-sr-"]:before,
|
||||
span[class^="fi-sr-"]:before, span[class*=" fi-sr-"]:before {
|
||||
font-family: flaticon-solid-rounded !important;
|
||||
font-family: ficons-solid-rounded !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Solid Straight (ss)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-solid-straight";
|
||||
src: url("../webfonts/flaticon-solid-straight.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-solid-straight.woff") format("woff"),
|
||||
url("../webfonts/flaticon-solid-straight.ttf") format("truetype");
|
||||
font-family: "ficons-solid-straight";
|
||||
src: url("../webfonts/ficons-solid-straight.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-solid-straight.woff") format("woff"),
|
||||
url("../webfonts/ficons-solid-straight.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-ss-"]:before, i[class*=" fi-ss-"]:before,
|
||||
span[class^="fi-ss-"]:before, span[class*=" fi-ss-"]:before {
|
||||
font-family: flaticon-solid-straight !important;
|
||||
font-family: ficons-solid-straight !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Thin Chubby (tc)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-thin-chubby";
|
||||
src: url("../webfonts/flaticon-thin-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-thin-chubby.woff") format("woff"),
|
||||
url("../webfonts/flaticon-thin-chubby.ttf") format("truetype");
|
||||
font-family: "ficons-thin-chubby";
|
||||
src: url("../webfonts/ficons-thin-chubby.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-thin-chubby.woff") format("woff"),
|
||||
url("../webfonts/ficons-thin-chubby.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-tc-"]:before, i[class*=" fi-tc-"]:before,
|
||||
span[class^="fi-tc-"]:before, span[class*=" fi-tc-"]:before {
|
||||
font-family: flaticon-thin-chubby !important;
|
||||
font-family: ficons-thin-chubby !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Thin Rounded (tr)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-thin-rounded";
|
||||
src: url("../webfonts/flaticon-thin-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-thin-rounded.woff") format("woff"),
|
||||
url("../webfonts/flaticon-thin-rounded.ttf") format("truetype");
|
||||
font-family: "ficons-thin-rounded";
|
||||
src: url("../webfonts/ficons-thin-rounded.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-thin-rounded.woff") format("woff"),
|
||||
url("../webfonts/ficons-thin-rounded.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-tr-"]:before, i[class*=" fi-tr-"]:before,
|
||||
span[class^="fi-tr-"]:before, span[class*=" fi-tr-"]:before {
|
||||
font-family: flaticon-thin-rounded !important;
|
||||
font-family: ficons-thin-rounded !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
/*!
|
||||
* Thin Straight (ts)
|
||||
* Generated from Flaticon icon API
|
||||
* Icon font generated from SVG sources
|
||||
*/
|
||||
@import url("./base.css");
|
||||
@font-face {
|
||||
font-family: "flaticon-thin-straight";
|
||||
src: url("../webfonts/flaticon-thin-straight.woff2") format("woff2"),
|
||||
url("../webfonts/flaticon-thin-straight.woff") format("woff"),
|
||||
url("../webfonts/flaticon-thin-straight.ttf") format("truetype");
|
||||
font-family: "ficons-thin-straight";
|
||||
src: url("../webfonts/ficons-thin-straight.woff2") format("woff2"),
|
||||
url("../webfonts/ficons-thin-straight.woff") format("woff"),
|
||||
url("../webfonts/ficons-thin-straight.ttf") format("truetype");
|
||||
font-display: swap;
|
||||
}
|
||||
|
||||
i[class^="fi-ts-"]:before, i[class*=" fi-ts-"]:before,
|
||||
span[class^="fi-ts-"]:before, span[class*=" fi-ts-"]:before {
|
||||
font-family: flaticon-thin-straight !important;
|
||||
font-family: ficons-thin-straight !important;
|
||||
font-style: normal;
|
||||
font-weight: normal !important;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*!
|
||||
* Flaticon Icon Fonts - All Icons
|
||||
* Generated from Flaticon icon API
|
||||
* Ficons Icon Fonts - All Icons
|
||||
* Icon fonts generated from SVG sources
|
||||
*/
|
||||
|
||||
@import url("./css/base.css");
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user