📓

What’s new

Log in Start free trial →

What’s new on Fontdue

We frequently release changes to the platform, and infrequently document select changes here.

April 3, 2024

  • (Fontdue.js) Character Viewer updates
    • Added lines showing the vertical metrics for glyphs
    • Added “Glyph name” (extracted from the font) as well as “Unicode name” from the unicode data
    • Removed obsolete “HTML Entity” line: users should encode their web pages as “utf-8” and copy/paste relevant characters. Only a few characters must be encoded as entities (&, <, “) and web authoring tools handle this automatically
    • Updated the Webfont CSS to add ascent-override , descent-override and line-gap-override to match the hhea vertical metrics. This harmonizes text layout across browsers and makes drawing these lines possible. We refer to the hhea metrics (instead of OS/2 typo) metrics because Safari does not support the overrides, and it refers to the hhea metrics.
    • image

      image

March 7, 2024

  • Updated the Orders search function to be much more inclusive, and also search on the customer’s name & email values
  • Fixed errors when order item descriptions are too long (increased the max allowed length of a description)
  • (Fontdue.js) Fixed the standalone Type Tester component to ensure it respects the config initialAlignment value
  • Fixed error when trying to create new licenses “from scratch”
  • Added Kosovo (XK) to the list of valid countries
  • Improved reliability of validating VAT numbers with the VIES system, by implementing better retries and increasing the possible waiting time

November 30, 2023

  • Added functionality to allow coupons to be limited to particular products
  • image
  • Fixed loading UI font for the Store Modal when it is set to “hidden”
  • Added the Description field to Licenses. This allows you to add some additional text below the license selection
  • (Fontdue.js) Fixed the Newsletter Signup component not accepting attributes
  • Updated our Markdown implementation to allow <script> tags to be emitted in the HTML
  • Added the “delete” button to an empty superfamily collection
  • Fixed some usability issues with the Bundles and Related collections components in the Font collection admin
  • (Fontdue.js) Fixed an issue with incorrect prices during license selection on initial load

October 25, 2023

  • (Fontdue.js) In the Store Modal component, we made a couple of key improvements to the user experience of selecting fonts to add to the cart. Selected items are now represented with a check, and the price of selected items is no longer shown which could previously be confusing in the presence of discounts. We’ve also introduced a subtle change to indicate bundle pricing with a + symbol. We calculate when selecting an item would result in bundle savings, and show the bundle price relative to the selection.
  • Fixed favicon generator integration
  • Fixed an issue where deleting all font styles from a collection causes a broken state. It’s now no longer possible to delete a Font Style if it’s the only one attached to a collection, you must delete the entire family instead
  • Fixed an issue with empty Superfamily editor pages being broken. The page will now direct you to add subfamilies via the “New font collection” page
  • Added a field to the Company information form for a “c/o” line, which will display within the address
  • (GraphQL) Added the taxRate field to Order
  • (Fontdue.js) Updated the cart and checkout totals information to include tax rate as a percentage (this was already present on receipts and invoices)
  • Fixed an error when extracting name information from some fonts
  • (Fontdue.js) Fixed default text alignment for “Right-to-left” type testers
  • (GraphQL) Added tags to Page
  • Fixed the new OT features dropdown in Safari
  • Fixed an issue rendering some icons in Safari

September 1, 2023

  • Fixed an issue adding related font collections to an article
  • Fixed an issue showing orders index in Safari
  • Updated onboarding for Stripe payments to latest convention
  • We now disallow WOFF and WOFF2 files when uploading new fonts, they must be added to styles after uploading at least a source OTF/TTF file
  • Added Actions tab to the Font Collection editor with a new Turn into superfamily action

August 4, 2023

  • Improvements to font collection type testers editor performance
  • Improved Coupon expiry with date picker component; ensure that the time picked is in the site’s timezone
  • Improved Test Fonts Downloads index page performance
  • Fixed an issue where sometimes Test Fonts downloads were not being recorded
  • Orders index: performance improvements when filtering over a large list of orders using a virtualized list; improved layout and display of totals
  • Customer index: added filtering & search, and virtualized list for performance
  • Added the Rebuild ZIP Archives button to batch-rebuild order archives
  • Added a way to filter articles by tag in the admin index
  • Coupons can now be set to have unlimited uses
  • Implemented Article scheduling: articles with a Published time in the future are now hidden until that time
  • Improved Order refunds: refunded orders are more visible in the order index; customer access to refunded order files is now revoked; order totals now exclude refunded orders; added the Refunded column to the CSV and included currency on relevant columns
  • Added ability to edit Customer names & emails
  • Improvements to the performance of the Font Collection editor
  • Fixed a Stripe issue in the checkout with countries that don’t use postal codes

July 10, 2023

  • Improved standalone TypeTester component support for variable fonts, with new fields for axes, variable-settings and features-selected
  • HTML entered in the HTML Head setting is now added to the order confirmation page
  • CharacterViewer: extra-wide glyphs can now take up more than one square of space
  • fontdue-js React components v2: a major change to support React 18, React Server Components and Next.js’s new App Router. The new version now uses Suspense for data fetching (via Relay) which means Fontdue components can now be fully pre-rendered on the server. We’ve written a new guide for getting started with Fontdue and Next.js App Router including a functional example repo based on our template that you can use as a basis for your foundry site.
  • Test Fonts improvements: you can now customize the font name suffix (e.g. Test → Trial), and you can now use the value * to include all characters and features instead of only a subset. Test fonts now regenerate more often (whenever you add, delete, or edit font collections) and will no longer be unavailable while being regenerated.
  • (GraphQL) Added uiFontStyleBold to Settings
  • Fixed an issue extracting font features with some fonts that don’t have a DFLT script
  • Limits for image uploads can now be configured (please get in touch if you need to increase your limit)
  • Added tenant (store) name to the Stripe metadata
  • Fixed an issue where order descriptions were too sometimes long for Stripe metadata, we now truncate the description to 1000 characters
  • CharacterViewer: Updated Unicode blocks data to the latest version
  • Uploading a font will now show an error if the font name is not convertible to a URL-friendly slug
  • Fixed an issue getting characters for the CharacterViewer from rare GSUB features
  • Demo template will now show more than 9 articles on the articles index
  • (GraphQL) Added htmlHead field to Settings

June 7, 2023

  • (GraphQL) Added logo field on Viewer
  • (GraphQL) Added the designer field on Slug
  • (Template) Omit the buy button if a collection is not purchasable nor any of its descendants
  • The “Webfonts” tab for variable fonts now lists all the appropriate CSS code for each named instance
  • Customer’s name & email is now prefilled in the Billing and Licensee steps
  • (Fontdue.js) Added new fontdue-* attribute API that allows you to add Fontdue functionality to your own elements, instead of using the Fontdue elements
    • Added “Widget codes” tab to the Font Collection admin page where you can find the IDs used for this new API, as well as easily grabbing the other element codes
  • Fixed unpredictable ordering of font collections in cases where the order hasn’t been chosen via drag and drop. They would previously reorder when you edited any item, but now they’ll stay in their original order

April 19, 2023

  • Added support for selecting features in each type tester editor, so those features are selected by default
  • Fixed character viewer layout when the metadata column contains too many characters
  • Fixed issue where character viewer was showing invalid data, in cases where glyphs are only activated when multiple features are enabled. We don’t have a way to show these glyphs yet, so we omit them for now
  • Fixed stylistic set name encoding
  • Fixed an issue in the character viewer where each group of characters was missing the first character
  • Fixed an issue where calculated font data (character set, features, etc) was stale after replacing a font file
  • Fixed an issue downloading order CSVs over a large range where Stripe data was missing

March 27, 2023

  • Added support for collecting VAT in the UK
    • This involved some changes that affect tax collection in other regions for more correctness. Now, if a customer is outside of any region where you collect tax, the tax line will be omitted instead of recorded as zero
  • Added support for MP4 files in Image fields. We recommend using MP4 files instead of animated GIFs. You must optimize these files yourself, and they’re currently limited to 5mb in most fields
  • Fixed an issue rendering fonts in the Store Modal

February 20, 2023

  • Rewrote our invoice PDF tool
    • They are now PDF-only (there’s no more HTML page with a “print” button)
    • They now support multiple pages, with page numbers and invoice number in the page footer
    • They have a new limitation which is your logo must now be PNG, as SVGs are not supported. The website logo field is now restricted to PNG uploads
    • Your logo is now displayed at a consistent size. It will be displayed at half size (2x) on screens, and 300ppi on the invoice PDF
    • There is a new “Bold” UI Font Style option in the website settings that is now used for headings in the PDF, and may be used more in other components in the future
  • Fixed issue downloading order CSVs files in rare cases where billing information email is not available (e.g. in imported orders)
  • Fixed an issue during checkout preventing the “Submit payment” button from completing the payment
  • Added “Font types” option to the Test Fonts so you can now include webfont files with your test fonts

January 19, 2023

  • Updated the error message for the VAT field during the checkout process to clarify when the VIES service has returned an error instead of saying “invalid”
  • Updated the “View site” link in the dashboard to go to your site’s URL when it’s entered in the Website settings
  • Fixed the filtering and ordering of the “incomplete orders” page in the dashboard
  • Fixed the Stripe Charge ID column in the orders CSV
  • (GraphQL) Querying a FontStyle’s family will now resolve even if it’s marked “hidden” (this is useful for using a “hidden” font for the site UI)
  • (Fontdue.js) Fixed issues in the Store Modal navigating to the wrong screen in some cases
  • (Fontdue.js) Added the indexExcludeTags option to the Store Modal config

December 13, 2022

  • Updated the Store Modal experience and Stripe integration to allow foundries to accept payment methods other than credit cards. You may enable payment methods you wish to accept in your Stripe dashboard.
  • Fixed an issue downloading invoice PDFs in test mode
  • Fixed invoices inheriting the website customization settings, they are now black on white
  • Customer dashboard page now respects the website theme settings
  • Logos on invoices and receipts now respect the dimensions of the uploaded website logo (downscaled 2x)
  • (GraphQL) Added the uiFont fields to Settings
  • (GraphQL) Added updatedAt to FontCollection
  • Added “Net” column to order CSV (the amount received after fees are deducted)
  • Fixed an issue preventing GST calculation in Canada
  • Fixed the CharacterViewer not loading webfonts appropriately
  • Fixed Store Modal not working when a Stripe account hasn’t been connected yet (adds a message to connect your Stripe account)
  • (GraphQL) Added description and faviconMarkup to the Settings

October 26, 2022

  • Added a “VAT not applicable” setting for foundries in the EU that are exempt from collecting VAT, and an optional field to add a label on invoices
  • Fixed an issue preventing deleting Designers
  • Test fonts packages are now regenerated whenever a Font Collection is added, created or deleted
  • Invoices now correctly exclude physical address if the setting is turned off in the Receipt settings
  • Adds the “Reverse charge” label to relevant VAT invoices

September 28, 2022

July 25, 2022

  • Adds an “Edit order details” button to the order page. You may update billing/licensee information in case a customer requests a change or made an error during checkout. This also creates a workaround for an issue where a font collection is deleted when there are existing orders for that font. You can now edit the existing orders to point to new fonts.
  • Fix tags filtering to be inclusive when specifying multiple tags

June 27, 2022

  • Added a search field to the orders index page in the admin. This is currently limited to searching the text within billing and licensee info, and within the specified date range
  • Added customer login for customers to retrieve their orders. This includes a new form component for customers to enter the email address. When they submit, they receive an email with a link to a new Fontdue-hosted customer dashboard page
    • (Fontdue.js) Added a new CustomerLoginForm component
    • (Template) Added a “Log in” link to the header and a new page with the login form
    • Added customer dashboard page which lists the customer’s orders with links to view the invoice and download the font files

June 15, 2022

  • (Fontdue.js) Added lineHeight option to the Type Tester config to add a line height slider
  • (Fontdue.js) Moved the type tester configs for min and max to new size config, with configurable label (this adds a new “Size” label for the size slider which can be disabled)
  • (Fontdue.js) Adds interactionStyle config option for the Type Tester OpenType features. The new select style is a select-box option allowing the user to select one feature at a time
  • (Fontdue.js) StoreModal: Made improvements to the layout including mobile layout adjustments and moving page headings to the top navigation
  • (Fontdue.js) Store Modal: Styles that don’t have a price associated will now appear in the pre-cart step (they’re included as part of the collection purchase). They’re not clickable but they’ll show as selected when the parent collection is selected
  • (Fontdue.js) Store Modal: Collections that don’t have a price associated will now appear as non-interactive headings for the list of styles
  • (Fontdue.js) Newsletter Signup: Added Newsletter success label to the Labels settings to replace the default “Success!” message
  • Added a button to “re-enable” coupons that have been disabled
  • (Fontdue.js) Fixed Character Viewer component rendering of whitespace characters
  • (Fontdue.js) Fixed some issues with button colors in the pre cart
  • Fixed an error creating webfonts when the Website title setting has non-ascii characters. The webfonts process now inserts the Company name field (rather than the Website title) and strips non-ascii characters (it also converts accented characters to non-accented, e.g. á → a)
  • Fixed deleting slugs
  • Fixed the HTML preview for Articles breaking the page layout when you enter an HTML open tag (this change replaced our Markdown parser, which may include some breaking changes to rendering. The new parser is cmark)
  • Fixed an issue getting stylistic set names for Type Testers OT features
  • Fixed an issue rendering Minisite URL buttons in the template (the field must be validated now)
  • Fixed an issue adding items to carts that contain “ghost products” (collections/styles which have had their price removed)
  • Fixed an issue in the cart for licenses with “text” variables where the user’s text is cleared after adding new items to the cart
  • Fixed an issue with invalid license URLs showing an error instead of not found
  • Fixed an issue with CharacterViewer and fonts with no GSUB table

April 27, 2022

April 1, 2022

  • (Fontdue.js) Added new Character Viewer component
  • image
  • (Fontdue.js) Added config for type tester OT Features, allowing for better control over the columns layout and feature names
  • (Fontdue.js) Added text alignment buttons to type testers, can be enabled via a new config option
  • (Fontdue.js) Added new toolsPosition: 'floating' config for the Type Testers, where one toolbar (fixed to the viewport) controls the currently selected type tester
  • (GraphQL) Added fontCollectionsTags field to Viewer, a list of all tags across collections

March 11, 2022

  • Added support for GST in Australia
  • The Type Tester OT Features panel now animates as it opens
  • The Store Modal now animates as it opens
  • Clicking the Buy Button no longer automatically selects the entire family/superfamily in the store modal

February 8, 2022

  • (Template) Autoplay the image carousel
  • (Template) Adjust font detail layout
  • (Template) Added Fonts link to the nav (if there are more than one font collection)
  • Added the Footer text field to website settings (displayed on the template)
  • (Fontdue.js) Added the checkboxStyle config option for “cross” style checkboxes instead of the default check icon
  • (Fontdue.js) Added button-label field to the Newsletter Signup

December 7, 2021

  • Added the Subsetter features field to the Test Fonts settings
  • image
  • Added drag + drop image support to Page text, with preview
  • Added tags to Pages
  • Added SEO metadata fields
  • (Fontdue.js) Components are now rendered using MutationObserver, allowing them to be used within (for example) Vue.js
  • (Fontdue.js) Added the opt-in-checkbox-checked field to the Newsletter Signup, and newsletter-checkbox-checked to the Test Fonts Form
  • (Fontdue.js) Added the download-label field to Test Fonts Form
  • (Fontdue.js) Fixed an issue rendering two of the same element on the page
  • (Fontdue.js) Fixed an issue where the type tester is re-rendered with a different font collection
  • Fixed an issue with coupon error messaging
  • Fixed issue ordering article images

October 20, 2021

  • Added the Deploy hook URL field to Website settings to for static site generation
  • image
  • Added validation to ensure license variables with the Text type contain text during checkout
  • (Fontdue.js) Added autofitOnChange config property to Type Tester component
  • (GraphQL) Uploaded images now have their dimensions stored and exposed
  • (GraphQL) Added articles field to the FontCollection type
  • Fixed store modal style selection when superfamily does not have a price
  • Fixed an issue ordering styles in the store modal product page

September 17, 2021

  • Added Webfonts tab to the Family dashboard, where you can find webfonts codes
  • image
  • Added drag + drop image support to Article body as well as the Preview tab
  • Allowed site labels (set in Settings) to be markdown/HTML
  • Fixed an issue getting sales tax rates for ZIP+4 codes
  • Fixed an issue preventing order zip download during checkout
  • Fixed z-index issue in the type tester

August 31, 2021

🚀 Soft launch!

  • Enabled public sign up for free trial
  • Added link to GraphQL playground in the dashboard nav
  • Initial work to support font versions
  • Added Design year field to font collections
  • Fixed an issue with the Languages field and newline separators
  • Added tags support for type testers
  • Images in articles can now be tagged and sorted
  • Added URL option for email receipts

June 28, 2021

  • New experimental UX for tags input on font collections form
  • image
  • New UX for picking related font collections
  • image
  • (GraphQL) Fixed the Artlcle slug field
  • Fixed an issue editing license variables
  • Fixed an issue where hidden font collections were appearing in the test fonts archive
  • Fixed the Coupons section for users without a timezone set
  • Fixed an issue adding licenses with no variables to the cart
  • Fixed an issue where widgets don't display correctly on Laytheme
  • Updated the behavior of the autofit attribute on the Type Tester widget. Now when a user edits the content, the widget doesn't keep trying to autofit on every keystroke.

May 11, 2021

  • Fixed an issue saving updates in the Font Collections admin
  • Increased the max allowed font styles
  • Fixed an issue showing webfonts in the admin
  • Fixed an issue adding new type tester content

April 19, 2021

  • The UK is no longer an option in the EU VAT system
  • (GraphQL) Adds featureCharacters to FontSyle: preliminary support for exposing glyphs in the font that are substituted when features are active.

March 29, 2021

  • (Fontdue.js) Adds a standalone Type Tester widget to fontdue.js
  • <fontdue-type-tester
      family-name="My Font Family"
      style-name="Bold"
      font-size="96"
      line-height="1.5"
      content="The quick brown fox.."
      features="onum,tnum,frac,smcp,c2sc,ss01,ss02"
      autofit="true"
    ></fontdue-type-tester>
  • Improvements to performance and reliability of Invoice PDF generation
  • Fixed a rare issue where customers are charged twice for a single order
  • Added link field to Images (only editable on Font Collections)
  • Added "optimistic" locking mechanism to prevent users from writing over each others' changes in the admin
  • Fixed an issue with the Type Tester autofit behavior within Semplice templates
  • Fixed issues when reordering the Table license variable type columns
  • (GraphQL) Added characterBlocks to Font Style. This contains a list of all available unicode characters, grouped by Unicode Block
  • (GraphQL) Added separator argument to languages so you can specify either WHITESPACE (default) or COMMA which allows language names to contain whitespace

January 27, 2021

  • Adds ability to filter orders list by Font Collection, and improves the layout of the orders list
  • Adds totals for the orders list, along with the "filtered total" when a font collection is selected
  • Invoice links which have expired now allow the user to resend the receipt to their email, with a fresh invoice & download link
  • Adds drag + drop file upload for font files, images and PDFs
  • Update coupon expiry UX – select a date for the coupon to expire, or select "never" (default)
  • Adds "Test mode" – a playground for testing content as well as the checkout experience. Put through test payments using Stripe's test cards
  • Improvements to Type Tester component

November 23, 2020

  • Added Tags to Font collections
  • Updated to fields where we collect contact information (Test Fonts Form; Newsletter Form; Checkout) to have consistent labels and placeholder text
  • Updated checkbox icon when selecting licenses to include a check mark
  • Fixed an error when removing discount from cart, when you click the button more than once
  • Receipt emails
    • By default, we'll now send Receipt emails automatically for new foundries, which will come from fontdue.com, like so:
    • From: Example Type Foundry via Fontdue <receipts@fontdue.com>

      To: Customer Name <customer@example.com>

      Reply-to: Example Type Foundry <contact@exampletype.com>

      If you prefer to have emails send from your own domain, get in touch with us to set up domain name authentication (if you're already sending from your own domain, that won't change)

November 13, 2020

  • New Font collections form user experience
    • Drag + drop image upload & PDF upload
    • Images are now sortable, with a new UX for entering tags and a description
    • Improved slug UX
    • New UX for selecting Type tester OpenType features
    • New UX for selecting Bundles Font styles
  • Drag + drop to sort Font collections on the index page
  • Added Newsletter Form widget to fontdue.js
  • Added Cart indicator color option to Theme customization settings
  • Pages in the admin now have appropriate HTML titles
  • Added optional features to Type Tester widget:
    • autofit option to automatically fit text on one line
    • truncate option to hide overflowing lines
  • Bug fixes and performance improvements to the Font Collections editor

September 29, 2020

  • Added new batch invoice PDF generator (Find the Download PDFs button on the Orders index)
  • The Designers form now features drag + drop to upload images, a better slug UX, a new input for associating Font collections, and a new field for Job title
  • Fixed an issue in new foundry onboarding experience where input fields are cleared
  • Fixed an issue where VAT numbers in invoices were missing the country prefix
  • Fixed an issue when entering VAT rates
  • Improved foundry onboarding user experience

September 2, 2020

  • Added support for inclusive licenses, where you have a few sizes that include many uses
  • image

    This example can recreated with the new "Table" variable type. You can specify any number of units (columns) as well as any number of items (rows)

  • Added new Custom Elements API for the Fontdue.js components, as well as allowing slug instead of id which makes it easier to use these on platforms like Wordpress
  • <fontdue-type-testers 
      collection-slug="my-font-slug"
      default-mode="local"
    ></fontdue-type-testers>
  • UX improvements for the Settings page including drag+drop file upload for logo
  • UI improvements to the Template
    • For foundries with a single font collection, the homepage becomes a product page for that typeface
    • Center alignment for more balanced product page
  • Fixed an issue where styles were sorted by their weight value alphabetically rather than numerically (now 50 < 500)
  • Fixed various style issues in fontdue.js components

August 12, 2020

  • Added support for including a Test fonts EULA. The EULA will display alongside other licenses and will automatically be included in the Test fonts ZIP archive → See the new License type field on Licenses. Add a new License and select the Test type
  • Improvements to License creation + editing experience
  • Licenses can now be reordered with drag+drop
  • Improvements to Settings forms including drag+drop file upload support for logo
  • Taiwan is no longer listed as Province of China
  • Fixed an error when creating a new empty License
  • Fixes blank checkbox issue in demo template

July 24, 2020

  • Added ability to drag + drop Pages to reorder
  • image
  • Fixed an error when trying to access Test fonts
  • Updated Privacy Policy to reflect service provider switch from Gigalixir to Render
  • Added automatic slug generation to Articles
  • Added experimental drag+drop file upload, for images in Articles to start
  • Fixed an issue where long addresses create layout issues in invoices
  • Added support for custom HTML code in the <head> for the frontend template, find this in Settings → Website settings
  • Minor improvements to the frontend template homepage and admin area

July 11, 2020

  • Added automatic slug generation
  • New Login settings page for foundry admins to change their password
  • Added Reset password flow for foundry admins who lost their password to login via email and then change password
  • image
  • Added Pre-configured licenses for new foundries
  • image
  • Added foundational support for theme customization: colors
  • image
  • Added GBP as a currency option for new foundries
  • Fixed the VAT prefix for the UK (it's meant to be GB)
  • Fixed an issue preventing new foundries from updating company information in the Settings panel
  • Fixed a Safari layout bug in the Type Tester OpenType features panel
  • Fixed an issue returning error messages for invalid phone numbers
  • Fixed an issue where the OpenType Features dropdown in the Type Testers admin was not populating

June 19, 2020

  • Filter Orders by a date range. The date range applies to the CSV export too for easier accounting
  • image

  • Fixed potential security issues with login, we now return generic error messages for login failures and ensure consistent response times
  • Upgraded all Python scripts to use Python 3, which fixes an issue in the otf→ttf conversion process where some italic character side-bearings were off by several units

May 28, 2020

  • The Settings page has been split up into multiple sections
  • image
  • Added Tags to Articles which enables different kinds of articles ("Blog", "In-use", etc)
  • Added Short description as an optional field on Collections.
  • Added Right-to-left as an option in Type Testers for RTL writing systems
  • When creating new Collections, you can now add to an existing collection, and also make the collection hidden
  • Added Related collections which allows collections to reference others outside of the normal collection hierarchy

April 21, 2020

  • Added OpenType features support in the Type Testers. You can selectively enable features for each collection. Drag-and-drop to reorder the list
  • image
    image

This is as far back as we started documenting new things, and omits the many features developed from when we started the project way back in August 2017.