PHPackages                             weble/laravel-adobe-typekit - 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. weble/laravel-adobe-typekit

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

weble/laravel-adobe-typekit
===========================

Manage self-hosted Adobe Typekit Fonts in Laravel apps

1.1.0(4y ago)0152MITPHPPHP ^8.0

Since Mar 11Pushed 4y ago1 watchersCompare

[ Source](https://github.com/Weble/laravel-adobe-typekit)[ Packagist](https://packagist.org/packages/weble/laravel-adobe-typekit)[ Docs](https://github.com/weble/laravel-adobe-typekit)[ RSS](/packages/weble-laravel-adobe-typekit/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (9)Versions (3)Used By (0)

Manage self-hosted Adobe Typekit Fonts in Laravel apps
======================================================

[](#manage-self-hosted-adobe-typekit-fonts-in-laravel-apps)

[![Latest Version on Packagist](https://camo.githubusercontent.com/47e6f7171b83b40c950f4208a9ea761d0b508a495d1dd508f593f292571051b4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7765626c652f6c61726176656c2d61646f62652d747970656b69742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/weble/laravel-adobe-typekit)[![GitHub Tests Action Status](https://camo.githubusercontent.com/80d7b74c474a85e4197b2dabf00ea5f3b2c660d7c4d32110e784df82c51fd443/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f776f726b666c6f772f7374617475732f7765626c652f6c61726176656c2d61646f62652d747970656b69742f72756e2d74657374733f6c6162656c3d7465737473)](https://github.com/weble/laravel-adobe-typekit/actions?query=workflow%3Arun-tests+branch%3Amaster)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/aced2ea00ae4edc1a7d595b94cb54849e138c121782afcd83beb1b8941424433/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f776f726b666c6f772f7374617475732f7765626c652f6c61726176656c2d61646f62652d747970656b69742f436865636b253230262532306669782532307374796c696e673f6c6162656c3d636f64652532307374796c65)](https://github.com/weble/laravel-adobe-typekit/actions?query=workflow%3A%22Check+%26+fix+styling%22+branch%3Amaster)[![Total Downloads](https://camo.githubusercontent.com/63e72e684002e5504c416f60a6d51e9e0161cb6caee95620cfb633e7c9a01f54/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7765626c652f6c61726176656c2d61646f62652d747970656b69742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/weble/laravel-adobe-typekit)

This package makes self-hosting Adobe Typekit Fonts as frictionless as possible for Laravel users. To load fonts in your application, register a Adobe Typekit Fonts embed URL and load it with the `@typekit` Blade directive.

It's not really within the Typekit policy, but their speed is so bad that this is required.

Cloned from the [Spatie Google Fonts Package](https://github.com/weble/laravel-adobe-typekit)

```
// config/adobe.typekit.php

return [
    'fonts' => [
        'default' => 'https://use.typekit.net/[project-id].css',
    ],
];
```

```
{{-- resources/views/layouts/app.blade.php --}}

    {{-- Loads default --}}
    @typekit

    {{-- Loads code project --}}
    @typekit('code')

```

When fonts are requested the first time, this package will scrape the CSS, fetch the assets from Adobe's servers, store them locally, and render the CSS inline.

If anything goes wrong in this process, the package falls back to a `` tag to load the fonts from Adobe.

Installation
------------

[](#installation)

You can install the package via composer:

```
composer require weble/laravel-adobe-typekit
```

You may optionally publish the config file:

```
php artisan vendor:publish --provider="Weble\AdobeTypekit\AdobeTypekitServiceProvider" --tag="adobe-typekit-config"
```

Here's what the config file looks like:

```
return [

    /*
     * Here you can register fonts to call from the @tyepkit Blade directive.
     * The typekit:fetch command will prefetch these fonts.
     */
    'fonts' => [
        'default' => 'https://use.typekit.net/[project-id].css',
    ],

    /*
     * This disk will be used to store local Adobe Typekit Fonts. The public disk
     * is the default because it can be served over HTTP with storage:link.
     */
    'disk' => 'public',

    /*
     * Prepend all files that are written to the selected disk with this path.
     * This allows separating the fonts from other data in the public disk.
     */
    'path' => 'fonts',

    /*
     * By default, CSS will be inlined to reduce the amount of round trips
     * browsers need to make in order to load the requested font files.
     */
    'inline' => true,

    /*
     * When something goes wrong fonts are loaded directly from Adobe.
     * With fallback disabled, this package will throw an exception.
     */
    'fallback' => ! env('APP_DEBUG'),

    /*
     * This user agent will be used to request the stylesheet from Adobe Tyepkit.
     * This is the Safari 14 user agent that only targets modern browsers. If
     * you want to target older browsers, use different user agent string.
     */
    'user_agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Safari/605.1.15',

];
```

Usage
-----

[](#usage)

To add fonts to your application, grab an embed code from Adobe Typekit fonts, register it in the config and use the `@typekit` Blade directive.

```
{{-- resources/views/layouts/app.blade.php --}}

    {{-- Loads Default --}}
    @typekit

    {{-- Loads code project --}}
    @typekit('code')

```

This will inline the CSS, so the browser needs to do one less round-trip. If you prefer an external CSS file, you may disable the `inline` option in the package configuration.

Fonts are stored in a `fonts` folder on the `public` disk. You'll need to run `php artisan storage:link` to ensure the files can be served over HTTP. If you wish to store fonts in the git repository, make sure `storage/app/public` is not ignored.

If you want to serve fonts from a CDN, you may set up a different disk configuration.

Prefetching fonts
-----------------

[](#prefetching-fonts)

If you want to make sure fonts are ready to go before anyone visits your site, you can prefetch them with this artisan command.

```
php artisan typekit:fetch
```

### Caveats for legacy browsers

[](#caveats-for-legacy-browsers)

Adobe Typekit Fonts' servers sniff the visitor's user agent header to determine which font format to serve. This means fonts work in all modern and legacy browsers.

This package isn't able to tailor to different user agents. With the default configuration, only browsers that can handle WOFF 2.0 font files are supported. At the time of writing, this is &gt;95% of all users according to [caniuse](https://caniuse.com/woff2). Most notably, IE doesn't support WOFF 2.0.

If you need to serve fonts to a legacy browser, you may specify a different user agent string in the configuration. Keep in mind that makes the page load heavier for all visitors, including modern browsers.

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Sebastian De Deyne](https://github.com/sebastiandedeyne)
- [Freek Van der Herten](https://github.com/freekmurze)
- [Daniele Rosario](https://github.com/skullbock)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~10 days

Total

2

Last Release

1563d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1104083?v=4)[Daniele Rosario](/maintainers/Skullbock)[@Skullbock](https://github.com/Skullbock)

---

Top Contributors

[![Skullbock](https://avatars.githubusercontent.com/u/1104083?v=4)](https://github.com/Skullbock "Skullbock (5 commits)")

---

Tags

spatielaravellaravel-adobe-typekitAdobe Typekit

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/weble-laravel-adobe-typekit/health.svg)

```
[![Health](https://phpackages.com/badges/weble-laravel-adobe-typekit/health.svg)](https://phpackages.com/packages/weble-laravel-adobe-typekit)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[spatie/laravel-health

Monitor the health of a Laravel application

87512.0M161](/packages/spatie-laravel-health)[spatie/laravel-pdf

Create PDFs in Laravel apps

1.0k4.8M46](/packages/spatie-laravel-pdf)[nativephp/mobile

NativePHP for Mobile

1.1k75.1k90](/packages/nativephp-mobile)[harris21/laravel-fuse

Circuit breaker for Laravel queue jobs. Protect your workers from cascading failures.

44855.7k](/packages/harris21-laravel-fuse)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)

PHPackages © 2026

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