PHPackages                             kaystrobach/dyncss - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. kaystrobach/dyncss

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

kaystrobach/dyncss
==================

Compile your CSS dynamically with DynCss Adapters.

1.0.1(5y ago)839.3k28[5 PRs](https://github.com/kaystrobach/TYPO3.dyncss/pulls)4GPL-2.0+PHP

Since Aug 18Pushed 1y ago3 watchersCompare

[ Source](https://github.com/kaystrobach/TYPO3.dyncss)[ Packagist](https://packagist.org/packages/kaystrobach/dyncss)[ Docs](http://donate.kay-strobach.de/)[ RSS](/packages/kaystrobach-dyncss/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (1)Versions (15)Used By (4)

[![](https://camo.githubusercontent.com/23737b7a679ca7dd0726f33ef58e546aac9a0182580d40ba44520e28c730da13/68747470733a2f2f656e6a6f792e67697473746f72652e6170702f7265706f7369746f726965732f62616467652d6b61797374726f626163682f5459504f332e64796e6373732e737667)](https://enjoy.gitstore.app/repositories/kaystrobach/TYPO3.dyncss)

Less in general
===============

[](#less-in-general)

The parser libs may ship dedicated information based on the language you want to use.

Frontend
========

[](#frontend)

Example TYPOScript:

```
page.includeCSS.testLess = EXT:dyncss_test/Resources/Public/Stylesheets/Example.less

```

Example Overrides (dynamic color settings, dynamic image overrides):

```
plugin.tx_dyncss {
	register = LOAD_REGISTER
	register {
		inputColor1.cObject = TEXT
		inputColor1.cObject {
			value = {$lessColorScheme}
			split {
				token.char = 124
				returnKey = 0
			}
		}
		inputColor2 < .inputColor1
		inputColor2.cObject.split.returnKey = 1
	}
	overrides {
		inputColor1 = TEXT
		inputColor1 {
			data = register:inputColor1
		}
		inputColor2 = TEXT
		inputColor2 {
			data = register:inputColor2
		}
		logo = IMG_RESOURCE
		logo {
			stdWrap.wrap = url("|")
			file = GIFBUILDER
			file {
				XY = [20.w],[20.h]
				20 = IMAGE
				20.file = GIFBUILDER
				20.file {
					XY = 128,22
					backColor.data = register:inputColor1
				}
				20.mask = EXT:example/css/colors/less/images/logo_sw.png
			}
		}
	}
	registerReset = RESTORE_REGISTER
}

```

Example less file:

```
	@linkColor: blue;
	@logo: url(someWeirdUrl);

	a {
		color: @linkColor;
	}

	h1 {
		a {
			color: lighten(@linkColor, 20%);
		}
	}
	#logo {
		background-image:@logo
	}
```

Backend: Include in backend.php
===============================

[](#backend-include-in-backendphp)

To see how it works, please take a look into dyncss\_test.

Caching
=======

[](#caching)

In production mode, CSS is only re-rendered if the topmost less or sass file, which is directly included by typoscript, is altered.
In development mode, also changes in files that are imported inside a less or sass file trigger a new rendering.
Development mode is triggered either by TYPO3 application context "Development" or by the preset "Development" in the install tool. Additionally rerendering will happen if you change TS values, which are used in the less files.

Additionally we add a new clear cache button to just clear the dyncss cache.

[![dyncss clear cache](Documentation/Images/clearcache.png)](Documentation/Images/clearcache.png)

Source maps
===========

[](#source-maps)

If the compiling library supports source maps, you can enable that feature by enabling the debug mode of dyncss in the extensionmanager settings.

Normally the source maps are appended to the generated css files, to avoid confusion.

**IMPORTANT**

You need to disable css concatenation to get the sourcemaps working.

This can be done with the following TS based on your environment:

```
themes.configuration.css.concatenate = 0
page.config.concatenateCss = 0

```

[![sourcemap](Documentation/Images/sourcemap.png)](Documentation/Images/sourcemap.png)

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance29

Infrequent updates — may be unmaintained

Popularity37

Limited adoption so far

Community31

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 81.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~214 days

Recently: every ~241 days

Total

9

Last Release

1846d ago

Major Versions

0.9.0 → 1.0.02021-01-25

### Community

Maintainers

![](https://www.gravatar.com/avatar/3c6681704a769ab93a20ba54d94054d0f3f1e81b99341e8cfa29d91f6d8f16fb?d=identicon)[kaystrobach](/maintainers/kaystrobach)

---

Top Contributors

[![kaystrobach](https://avatars.githubusercontent.com/u/1185776?v=4)](https://github.com/kaystrobach "kaystrobach (96 commits)")[![achimfritz](https://avatars.githubusercontent.com/u/2152991?v=4)](https://github.com/achimfritz "achimfritz (2 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (2 commits)")[![kersten](https://avatars.githubusercontent.com/u/487289?v=4)](https://github.com/kersten "kersten (2 commits)")[![tdeuling](https://avatars.githubusercontent.com/u/1298841?v=4)](https://github.com/tdeuling "tdeuling (2 commits)")[![woodyc79](https://avatars.githubusercontent.com/u/1710712?v=4)](https://github.com/woodyc79 "woodyc79 (1 commits)")[![dmh](https://avatars.githubusercontent.com/u/5150636?v=4)](https://github.com/dmh "dmh (1 commits)")[![fritzdacat](https://avatars.githubusercontent.com/u/5744779?v=4)](https://github.com/fritzdacat "fritzdacat (1 commits)")[![hensoko](https://avatars.githubusercontent.com/u/13552930?v=4)](https://github.com/hensoko "hensoko (1 commits)")[![anjeylink](https://avatars.githubusercontent.com/u/11900120?v=4)](https://github.com/anjeylink "anjeylink (1 commits)")[![TehTux](https://avatars.githubusercontent.com/u/5694383?v=4)](https://github.com/TehTux "TehTux (1 commits)")[![marcoseiler](https://avatars.githubusercontent.com/u/13045727?v=4)](https://github.com/marcoseiler "marcoseiler (1 commits)")[![philipp-winterle](https://avatars.githubusercontent.com/u/633711?v=4)](https://github.com/philipp-winterle "philipp-winterle (1 commits)")[![pixelplant](https://avatars.githubusercontent.com/u/492082?v=4)](https://github.com/pixelplant "pixelplant (1 commits)")[![pniederlag](https://avatars.githubusercontent.com/u/85458?v=4)](https://github.com/pniederlag "pniederlag (1 commits)")[![somedia-mkohler](https://avatars.githubusercontent.com/u/23209208?v=4)](https://github.com/somedia-mkohler "somedia-mkohler (1 commits)")[![Anubiso](https://avatars.githubusercontent.com/u/7769367?v=4)](https://github.com/Anubiso "Anubiso (1 commits)")[![arnekolja](https://avatars.githubusercontent.com/u/178206?v=4)](https://github.com/arnekolja "arnekolja (1 commits)")[![baschte](https://avatars.githubusercontent.com/u/9203613?v=4)](https://github.com/baschte "baschte (1 commits)")

---

Tags

dyncss

### Embed Badge

![Health badge](/badges/kaystrobach-dyncss/health.svg)

```
[![Health](https://phpackages.com/badges/kaystrobach-dyncss/health.svg)](https://phpackages.com/packages/kaystrobach-dyncss)
```

###  Alternatives

[in2code/powermail

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features

982.5M38](/packages/in2code-powermail)[fluidtypo3/flux

The flux package from FluidTYPO3

152982.2k20](/packages/fluidtypo3-flux)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[derhansen/sf_event_mgt

Configurable event management and registration extension based on ExtBase and Fluid

64313.9k6](/packages/derhansen-sf-event-mgt)[typo3/cms-t3editor

TYPO3 CMS T3Editor - JavaScript-driven editor with syntax highlighting and code completion. Based on CodeMirror.

115.9M50](/packages/typo3-cms-t3editor)[wazum/sluggi

TYPO3 extension for URL slug management with inline editing, auto-sync, locking, access control, and redirects

39488.5k](/packages/wazum-sluggi)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
