Licence
PressboardKit is free to use. It is licensed rather than given away: you register an application, a licence is issued against it, and it costs nothing.
1. What this covers
This page describes the licence that applies to the PressboardKit engine today — the Swift package and any artefacts distributed with it. It does not cover use of this website, which is governed by the site terms.
The licensor is AFTG s.r.o., Komenského 1081/91, Bolevec, 323 00 Plzeň, Czech Republic, IČO 03267725, VAT CZ03267725, registered in the Commercial Register kept by the Regional Court in Plzeň, file C 29968.
2. Free, and licensed rather than open
The engine is free to use. There is no charge for a licence, no tier above the one everybody gets, and no capability held back for one.
It is licensed to you, not sold, and it is not open source. What you receive today is a Swift package you can read and step through, but you receive it under a licence we issue, not under an open-source licence. Free and open are different things, and this is the first one.
Like any licence, these terms can change — see section 8, which sets the notice we owe you before a change takes effect.
3. Registration, and how a licence is issued
A licence is required even though it is free, and it is issued to a named licensee rather than granted to the world. Registration is handled by email: you write to us, we issue a licence. There is no signup form and no automated provisioning, because there is no backend yet — this step is manual, and it is manual for everyone.
Request a licence, and see what to include so one can actually be issued.
4. What the licence grants
A registered licensee may:
- embed the engine — compiled into the application binary and its keyboard extension — in applications the licensee develops and publishes under its own name;
- distribute those applications to end users through the App Store or any other channel Apple permits, with no per-install fee and no limit on the number of end users;
- configure and extend the engine through its public API: styling, layouts, suggestion providers, feedback and every switch on
KeyboardBehavior; - use the engine in internal builds, test harnesses and demo builds of those same applications.
Source access is not included as a term of the licence. The licence covers the engine in the form we distribute it; you do not receive a copy of the source, so there is nothing to modify and nothing modified to ship.
5. What the licence does not grant
A licence is not intended to permit:
- redistributing PressboardKit itself — as source, as a package, as a binary framework, or as part of a template, starter kit or code generator — to anyone other than the licensee's own developers;
- reselling the engine, or offering it in whole or in substantial part as a keyboard SDK, library or service that competes with PressboardKit;
- sublicensing or transferring the licence, except as set out in section 9;
- removing, disabling or circumventing licence checks, including the
LicenseGateseam, or the notices identifying the engine's authorship.
Building an application that happens to be a keyboard is expressly fine. Building a product whose value is that it gives other developers this engine is not. The engine being free changes neither half of that.
6. How validation works, and what it does today
A licence is issued against one application, named by its product name and bundle identifier. The engine validates it, and how it does so is part of these terms rather than an implementation detail:
- your containing app exchanges its licence key for a signed licence leasenaming that product and bundle identifier, and stores it where the keyboard extension can read it;
- the keyboard extension verifies that signature offline, against a key compiled into the engine. The keyboard extension does not open a network connection — it contains no code that could;
- what leaves your application is the licence key and the bundle identifier. No text you or your users type, no keystrokes, no device identifier and no identifier of an individual installation are sent to us, at any point, by any part of the engine;
- validation fails open. No lease, an unreadable one, a signature that does not verify, a clock that moved, or a service of ours being down — every one of them leaves a working keyboard. Nothing in this section can stop somebody typing.
That is not what ships today. There is no licence-key API. The engine carries a LicenseGate seam — a hook at the points a validating build would check — and its default unlocks every feature. Until that changes, nothing in the code stops an unregistered build from working: the obligation to register is contractual, not technical, and this page would rather say so than imply an enforcement that does not exist.
7. What happens to an app you have already shipped
An application you have already published goes on working. It keeps running, typing and installing, and we will not ask you to withdraw it. That is stated here rather than buried because it is the part that reaches past you, to people who never agreed to anything with us.
If these terms change in a way you do not accept — including a change that introduced a charge — what continues to work is the free tier, in new builds and in published applications alike, and anything outside it stops. Concretely that means English and native rendering keep working and the rest goes quiet, for the people who already installed it as well as for you.
Nothing stops mid-sentence. The licence lease the engine checks is granted for a period rather than per launch, it fails open when it cannot be reached, and it closes only on an expiry it has actually seen.
8. Changes to these terms
We reserve the right to change these terms, including what a licence costs.Where a change affects a registered licensee we write to the registration email address we hold — that is part of why registration exists at all.
Where a change would require you to start paying for something that was free, we write at least three months before it takes effect. You are not obliged to accept it; section 7 says what happens if you do not.
9. Transfer
A licence transfers with a sale. If you sell the application it covers — or your business — the licence goes with it and the buyer takes it on these terms. Tell us in writing within 30 days; our agreement is not required, because a licence that dies on acquisition is a problem we would rather you did not have to explain to a buyer.
What does not change is the scope: the licence covers the application it covered before the sale, not the buyer's other products. A buyer who wants it to reach further takes out a licence of their own, at the terms then current.
10. Updates and support
The engine follows semantic versioning, and anything public is treated as a contract: it changes additively within a major version, and every change is written down in the changelog. That describes how the project works rather than a commitment we have sold you, and no support response time is promised.
Support is best effort — no service level, no guaranteed response time. Email and the public issue tracker are the channels. We would rather say that than publish a number one person cannot hold to.
If a licence ever carries a charge, the terms of one are settled here in advance rather than written at the moment we would benefit from writing them: it would be a subscription, billed monthly or annually; a lapse would take effect 30 days after a missed paymentand not before we have actually reached you at your registration address; and section 7 would describe what you are left with. If we discontinue PressboardKit, the last version licensed to you becomes yours permanently. None of that applies today.
11. Third-party components and bundled data
The engine has no third-party runtime dependencies: its package manifest declares none, and it links only Apple's own frameworks. It does, however, ship frequency word lists used by the autocomplete module.
All 39 lists derive from one source: Hermit Dave's FrequencyWords(2018 edition), compiled from the OpenSubtitles corpus. All but one are the upstream list for the same language; the exception, Serbian in Cyrillic, is the upstream Serbian list transliterated at build time. Per-language provenance is in CREDITS.txt beside the lists.
Those lists are licensed to you under CC BY-SA 4.0, not under this licence.The upstream repository carries an MIT file covering its scripts, but its README is explicit that the data is separate: MIT License for code. CC-by-sa-4.0 for content. Our lists are adapted material — lowercased, filtered, truncated — so they travel under ShareAlike terms.
That has a consequence we would rather state than let you discover: because CC BY-SA 4.0 forbids a licensor imposing terms that block the rights it grants, section 5 does not apply to the word lists. You may extract them from the binary, copy them, adapt them and redistribute them on CC BY-SA terms. Section 5 restricts the engine; the data has always travelled under its own licence.
One question this page cannot answer: whether word counts derived from a subtitle corpus carry any right of the corpus itself. That is a lawyer's question. What can be said is that these are counts, not text, and that no OpenSubtitles content is reproduced or shipped.
12. Warranty and liability
The engine is provided as it is, with no warranty of any kind. We do not warrant that it is free of defects, that it meets your requirements, or that its behaviour matches any particular version of iOS — it reproduces Apple's keyboard as measured against specific releases, and Apple changes that whenever it likes.
We exclude liability rather than cap it. There is no figure here because there is no sum we accept: you take the engine as it is and carry the risk of using it. A cap expressed as fees paid would in any case be meaningless while the fee is zero.
That exclusion is not unlimited and cannot be. Czech law (§ 2898 of the Civil Code) disregards any agreement made in advance that excludes liability for harm caused intentionally or by gross negligence, or harm to a person's natural rights. Those survive whatever this page says, and no drafting removes them.
13. Termination
This section is about breach. A change to these terms is a different event and is dealt with in section 8 and section 7.
A licence ends if you breach it and do not put the breach right within 30 daysof us telling you about it. After that you must stop embedding the engine in new builds. Applications you have already published are not affected and we will not ask you to withdraw one.
14. Governing law
This licence is governed by the law of the Czech Republic, excluding its conflict-of-law rules and excluding the UN Convention on Contracts for the International Sale of Goods. The courts of the Czech Republic have exclusive jurisdiction over any dispute, the locally competent court being the one for the licensor's registered seat.
If you are in another EU member state, your own law may give you a forum regardless of that clause; this page says what we ask for, not what a court will necessarily allow.
15. Questions
Anything here that is unclear, or that does not fit how you intend to use the engine, is worth raising before rather than after — particularly section 7. Write to hello@pressboardkit.com.
Last updated . This is the version in force.