{"id":18786853,"url":"https://github.com/chfoidl/typo3-assetloader","last_synced_at":"2025-08-11T06:21:34.126Z","repository":{"id":62542705,"uuid":"89864781","full_name":"chfoidl/typo3-assetloader","owner":"chfoidl","description":"Pagespeed friendly asset loader.","archived":false,"fork":false,"pushed_at":"2018-06-06T08:51:15.000Z","size":185,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-21T10:49:24.739Z","etag":null,"topics":["assets","composer","frontend","pagespeed","php","typo3","typo3-extension"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chfoidl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-04-30T17:07:37.000Z","updated_at":"2018-06-06T08:39:36.000Z","dependencies_parsed_at":"2022-11-02T15:46:36.162Z","dependency_job_id":null,"html_url":"https://github.com/chfoidl/typo3-assetloader","commit_stats":null,"previous_names":["sethorax/typo3-assetloader"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/chfoidl/typo3-assetloader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chfoidl%2Ftypo3-assetloader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chfoidl%2Ftypo3-assetloader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chfoidl%2Ftypo3-assetloader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chfoidl%2Ftypo3-assetloader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chfoidl","download_url":"https://codeload.github.com/chfoidl/typo3-assetloader/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chfoidl%2Ftypo3-assetloader/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269838521,"owners_count":24483229,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-11T02:00:10.019Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assets","composer","frontend","pagespeed","php","typo3","typo3-extension"],"created_at":"2024-11-07T20:52:43.653Z","updated_at":"2025-08-11T06:21:34.069Z","avatar_url":"https://github.com/chfoidl.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TYPO3 Extension ``assetloader``\n\n[![Build Status](https://travis-ci.org/Sethorax/typo3-assetloader.svg?branch=master)](https://travis-ci.org/Sethorax/typo3-assetloader)\n[![StyleCI](https://styleci.io/repos/89864781/shield?branch=master)](https://styleci.io/repos/89864781)\n[![Latest Stable Version](https://poser.pugx.org/sethorax/typo3-assetloader/v/stable)](https://packagist.org/packages/sethorax/typo3-assetloader)\n[![License](https://poser.pugx.org/sethorax/typo3-assetloader/license)](https://packagist.org/packages/sethorax/typo3-assetloader)\n\n\u003e This extension enables you to conveniently add inline CSS and JS, deferred CSS and JS and Webfonts to your project.  \n\u003e The goal of this extension is to improve the overall pagespeed by how those assets are loaded.\n\n### Features\n\n- Extension is entirely configured via typoscript\n- Enables including inline CSS and JS in both `\u003chead\u003e` and before `\u003c/body\u003e`\n- Enables including CSS and JS files but with deferred loading\n- Enables including google fonts and custom fonts via the webfontloader\n- All included assets can be minified and concatenated\n\n### Usage\n\n#### Installation\n\nInstallation using Composer\n\nIt is recommended to install this extension via composer.  \nTo install it just do `composer require sethorax/typo3-assetsloader`\n\nThis extension can also be installed traditionally via the TYPO3 Extension Repository (TER).\n\n\n#### TypoScript Setup\n\nEvery aspect of this extension is configurable via typoscript setup.\n\n\n##### Example typoscript setup:\n```\nplugin.tx_assetsloader {\n    concatenateCSS = 1\n    concatenateJS = 1\n    minifyCSS = 1\n    minifyJS = 1\n\n    includeCSSInline {\n        critical = body {background-color: black; min-height: 100vh;}          \n    }\n    includeCSSInlineFooter {\n        styles = EXT:my_page_extension/Resources/Public/styles/styles.css\n        styles.file = 1\n    }\n    includeJSInline {\n        app = fileadmin/app.js\n        app.file = 1\n    }\n    includeJSInlineFooter {\n        script = console.log('Hello World!');\n    }\n    includeCSSDeferred {\n        deferred = fileadmin/style.css\n        deferred2 = fileadmin/style2.css\n        deferred3 = fileadmin/style2.css\n        deferred3.excludeFromConcatenation = 1\n    }\n    includeJSDeferred {\n        app = fileadmin/app.js  \n    }\n\n    fontloader {\n        googleFonts {\n            roboto = Roboto:400,500,500i\n            opensans = Open Sans:400\n        }\n        customFonts {\n            families {\n                fa = FontAwesome  \n            }\n            urls {\n                fa = https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\n            }\n        }\n    }\n}\n```\n\nAll settings are configured in `plugin.tx_assetsloader`\n\n##### Typoscript Settings\n\n\u003e concatenateCSS\n\nIf enabled all CSS files will be concatenated. Concatenation is only supported by `includeCSSDeferred` and `includeJSDeferred`.  \nSingle files can be excluded from concatenation by setting `excludeFromConcatenation = 1` in the files settings.  \n\n\u003e concatenateJS\n\nSame as `concatenateCSS` but for JS.\n\n\u003e minifyCSS\n\nIf enabled all CSS code will be minified. Minification is supported by all CSS and JS related settings.\n\n\u003e minifyJS\n\nSame as `minifyCSS` but for JS.\n\n\u003e includeCSSInline\n\nAll entries within that setting will be included as a `style` tag in the `\u003chead\u003e`.  \nIt can also include file contents as inline CSS. To do so, set `file = 1` for that entry.  \nSupports minification.\n\n\u003e includeCSSInlineFooter\n\nSame as `includeCSSInline` but includes the `style` tag before `\u003c/body\u003e`.\n\n\u003e includeJSInline\n\nAll entries within that setting will be included as a `script` tag in the `\u003chead\u003e`.\nIt can also include file contents as inline JS. To do so, set `file = 1` fot that entry.  \nSupports minification.\n\n\u003e includeJSInlineFooter\n\nSame as `includeJSInline` but includes the `script` tag before `\u003c/body\u003e`.\n\n\u003e includeCSSDeferred\n\nAll entries within that setting will be loaded deferred via a small inline loading script.  \nThe default loading script can be overwritten in `settings.deferredCssLoadingScript`.  \nAccepts only files.  \nSupports minification and concatenation.  \nSingle files can be excluded from concatenation by setting `excludeFromConcatenation = 1` in the files settings.\n\n\u003e includeJSDeferred\n\nAll entries within that setting will be included as a `script` tag with the `async` and `defer` attribute.  \nAccepts only files.  \nSupports minification and concatenation.  \nSingle files can be excluded from concatenation by setting `excludeFromConcatenation = 1` in the files settings.\n\n\u003e fontloader.googleFonts\n\nAll google font families within that setting will be loaded with the webfontloader.  \nThe content of a font family must be the font family string from Google Fonts!\n\n\u003e fontloader.customFonts\n\nAllows you to load custom font families with the webfontloader.\n\n\u003e fontloader.customFonts.families\n\nAdd the font family names here.\n\n\u003e fontloader.customFonts.urls\n\nThe urls to the font family.\n\n\n###### Overwriting default settings\n\nAll default settings are set in `settings`\n\n\u003e settings.deferredCssLoadingScript\n\nThis setting contains the loading script to defer load CSS files.  \nThis script must contain two markers wich will be replaced later:\n\n|Marker|Description|\n|:---|:---|\n|###CSSFILE####|This marker will be replaced by the full path of the css file.|\n|###SCRIPTNAME###|This marker will be replaced by a generated hash to create a unique loading function.|\n\n\u003e settings.WFLLoadingScript\n\nThis setting contains the loading script to load the webfontloader.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchfoidl%2Ftypo3-assetloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchfoidl%2Ftypo3-assetloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchfoidl%2Ftypo3-assetloader/lists"}