Git Product home page Git Product logo

froemken / t3x-iconpack Goto Github PK

View Code? Open in Web Editor NEW

This project forked from quellenform/t3x-iconpack

0.0 0.0 0.0 5.05 MB

This extension provides an iconpack registry for custom iconpacks which can be used in backend and frontend and are rendered according to the configuration of the installed iconpacks.

License: GNU General Public License v3.0

JavaScript 0.08% PHP 57.45% TypeScript 32.86% HTML 4.11% Pug 3.40% SCSS 2.09%

t3x-iconpack's Introduction

Donate Latest Stable Version TYPO3 License

Iconpack

TYPO3 CMS Extension iconpack

The most flexible icon system for TYPO3 10, 11, 12 and 13!


This extension provides an iconpack registry for custom iconpacks which can be used in backend and frontend and are rendered according to the configuration of the installed iconpacks.

The idea behind the extension is to provide a flexible system by means of which any icon sets can be used and the desired output can be generated at any time by separating storage and rendering.

Iconpack Preview

Features

The extension iconpack is different from previous implementations and will probably be the only icon extension you will need in the future.

The biggest differences are among others:

  • Not limited to a specific iconset! Existing iconpacks can be installed, or custom iconpacks can be created, depending on your requirements
  • Easy to use: Install, add the provided TypoScript-template & use it, no further configuration needed (but possible!)
  • Offers the use of various icons in the header, page, in the bodytext (CKEditor 4/5) and in your own fields
  • All required assets (JavaScripts, StyleSheets, etc.) are automatically added in frontend and backend by default, depending on the configuration of the icon set used
  • All settings of an iconpack can be overridden via an individual configuration (YAML)
  • Individual iconsets can be easily added (see instructions for creating your own iconpack provider)
  • Can also be integrated into own extensions via the provided form wizard
  • Multilingual labels for icons
  • Uses the backend caching integrated in TYPO3 for the configuration of the installed iconpacks in order not to slow down the backend
  • The frontend rendering of icons can be changed afterwards (easily switch from Webfont to SVG with TypoScript)
  • Works with Bootstrap Package and other extensions
  • No dependency on other extensions or third-party code!

Planned Features

  • Enable the use of SVG sprites in CKEditor 5
  • Add contextmenu in CKEditor to edit a previously added icon (and options)
  • Optimize the UI/Modal
  • Add more detailed information on using and creating your own iconpacks

Sponsoring required

How does it work?

Instead of storing the entire HTML markup or a static file path for an icon in the database fields, a short configuration string is stored instead (also in the RTE). This string is called "iconfig" and looks something like fa6:solid,star,transform:spin. This example will render the icon Star from the iconpack Font Awesome 6 (solid style) with the additional property of a spinning rotation.

This string is only converted into HTML code according to the configuration during rendering in the backend or frontend, which ensures the greatest possible flexibility. It is possible to choose whether the icons are to be rendered as a web font, sprites, inline SVG or as an SVG image without having to change the content in the database.

Furthermore, this extension adds additional icon fields for pages and text headers, but it can also be used to extend fields of your own extensions.

Note: This extension does NOT have the same approach as the TYPO3 integrated IconRegistry with its approach to cache all icons including their HTML markup for the backend and consider them as absolute, but focuses on handling icons for editors and frontend output!

Installation

  1. Install this extension from TER or with Composer
  2. Install one of the existing iconpack providers:
  3. Add the provided TypoScript to your template
  4. [Optional] Install the Iconpack for Bootstrap Package extension if you want to use iconpacks in conjunction with Bootstrap Package.

Configuration

You can find a detailed description of the extension here: Iconpack Documentation

Contribute | Say Thanks!

  • If you like this extension, use it.
  • If you think you can do something better, be so kind and contribute your part to it
  • If you love the extension or if you want to support further development, donate an amount of your choice

t3x-iconpack's People

Contributors

stephankellermayr avatar t3brightside avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.