# Fontsource with Remix
[Fontsource]() is designed to work with projects that bundle their CSS. You import their stylesheet and the bundler will place the fonts in your build directory and the CSS file will have the correct URL for the `@font-face` `src`.
Remix doesn’t bundle CSS and so while you can import their CSS file and add it to your `links`, the URL to font will be incorrect. **It is still possible to use Fontsource with Remix.** We just need to create our own `@font-face` declaration with the correct URL to the font (ideally, one that benefits from Remix’s asset fingerprinting). There’s a bit of manual set up, but once that’s done, you can serve the font on your site and benefit from updates for the font.
1. Install your font:
```shell
npm install --save @fontsource/montserrat
```
2. Create a directory for fonts in your the `app` directory so that you can fingerprint the font assets for long term caching. Run the following from your project root.
```shell
mkdir app/fonts
```
3. Link the `files` directory of the font to the your `app/fonts` directory. Run the following from your project root.
```shell
ln -s node_modules/@fontsource/montserrat/files app/fonts/montserrat
```
4. In the layout that you need the font, import the font file you want. It’s a sym-link so autocomplete won’t work unfortunately.
```js
import montserratVariableFontLatin from '~/fonts/montserrat/montserrat-latin-variable-wghtOnly-normal.woff2`;
```
5. Define the `@font-face` using the font asset URL that we imported. We have to use a `