{"id":21277936,"url":"https://github.com/b13/http2","last_synced_at":"2025-10-12T19:09:10.659Z","repository":{"id":51291707,"uuid":"163591484","full_name":"b13/http2","owner":"b13","description":"TYPO3 Extension for supporting HTTP/2 Server Push","archived":false,"fork":false,"pushed_at":"2025-07-30T05:54:37.000Z","size":73,"stargazers_count":23,"open_issues_count":12,"forks_count":8,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-10-10T23:16:07.581Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://b13.com","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/b13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-30T13:59:46.000Z","updated_at":"2025-07-30T05:54:27.000Z","dependencies_parsed_at":"2024-05-02T07:42:36.641Z","dependency_job_id":"124e83dc-7923-4c60-bdba-d7c80d582c5b","html_url":"https://github.com/b13/http2","commit_stats":{"total_commits":25,"total_committers":8,"mean_commits":3.125,"dds":0.72,"last_synced_commit":"be5c8792c17faa4722f51eadda25e65192b8172a"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/b13/http2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fhttp2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fhttp2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fhttp2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fhttp2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/b13","download_url":"https://codeload.github.com/b13/http2/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fhttp2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279012640,"owners_count":26085158,"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-10-12T02:00:06.719Z","response_time":53,"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":[],"created_at":"2024-11-21T10:08:19.652Z","updated_at":"2025-10-12T19:09:10.627Z","avatar_url":"https://github.com/b13.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HTTP/2 Pre-Fetch for TYPO3\n\n[Latest Version on Packagist][link-packagist]\n[Software License](LICENSE.md)\n[Build Status][link-travis]\n\nThis TYPO3 extension fetches all CSS and JS resources that are used\nfor a page-rendering and sends additional HTTP/2 Headers \"Link\" for each resource\nresulting in a faster first contentful paint for TYPO3 CMS.\n\nThis extension currently runs on TYPO3 v10, TYPO3 v11 and TYPO3 v12,\nand needs PHP 7.4 or higher.\n\n## Installation\n\nJust use `composer req b13/http2` and install the extension via the Extension Manager,\nflush caches and you're ready to go.\n\nIn order to see if the extension works, ensure that your webserver supports HTTP/2,\nruns via HTTPS and check your Response headers to see if \"link: \" headers are added\nto your HTTP response.\n\nNothing to configure, it just works(tm).\n\n## Requirements\n\nYou need a webserver with HTTP/2 support, and - of course - HTTPS.\n\nAlso, use PHP7 - if you care about performance or supported PHP versions, there is nothing to discuss.\n\n\n## How it works under the hood\n\n1. Hook into the \"PageRenderer\" API class by fetching the concatenated CSS / JS files, and\nlibraries.\n2. If in FE, this is stored within TSFE together with cached data (could be run twice here for non-cached info)\n3. Send to the client via `header()` - in BE directly or in FE at the end of the request via a PSR-15 middleware (TYPO3 v10+ only).\n\n## ToDo\n\n* Implement options to also allow to define other resources (fonts/images), e.g. via TypoScript.\n* Use proper DTOs instead of arrays.\n\n\n## Credits\n\n* [Benni Mack][link-author]\n\n## License\n\nAs this is a PHP project, extending TYPO3, all code is licensed as GPL v2+.\n\n\n[link-author]: https://github.com/bmack\n[link-packagist]: https://packagist.org/packages/b13/http2\n[link-travis]: https://travis-ci.org/b13/http2\n\n## Sharing our expertise\n\n[Find more TYPO3 extensions we have developed](https://b13.com/useful-typo3-extensions-from-b13-to-you) that help us deliver value in client projects. As part of the way we work, we focus on testing and best practices to ensure long-term performance, reliability, and results in all our code.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Fhttp2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fb13%2Fhttp2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Fhttp2/lists"}