Skip to main content
Inkwell is a self-contained code-plus-content plugin for Unreal Engine 5.5, 5.6, 5.7 and 5.8 — Fab lists a separate download per engine, so install the one matching your project. Its runtime module depends on engine modules plus Enhanced Input — the engine’s own input plugin, enabled in every UE5 project by default — and on nothing else: no other plugins, no third-party libraries, so installing it never pulls anything unexpected into your project.

Install from Fab

  1. Acquire Inkwell on Fab.
  2. Open the Epic Games Launcher → Library, find Inkwell in your Fab library, and choose Install to Engine, picking the engine version your project uses.
  3. Restart the Unreal Editor if it was open. The plugin is now installed for every project on that engine version.
Copy the Inkwell folder into your project’s Plugins/ directory (create it if it does not exist) so the structure reads YourProject/Plugins/Inkwell/Inkwell.uplugin, then restart the editor. This is what teams that vendor their plugins in source control do.A project plugin installed from source has no prebuilt binaries — see C++ and Blueprint-only projects below.

Enable it — per project

Installing is not enabling. Inkwell is not enabled by default, so every project that uses it turns it on once:
  1. Open Edit → Plugins and search for Inkwell (it is under the Content category).
  2. Check Enabled, and restart the editor when prompted.
Inkwell declares a dependency on the Enhanced Input plugin, so the engine enables that alongside it. Enhanced Input ships with the engine and is already on in every UE5 project, so in practice this changes nothing — it is only worth knowing if your project explicitly disabled it.

C++ and Blueprint-only projects

Everything in the runtime module is Blueprint-callable — components, the page actor, the UMG widget, the document API, even the settings accessors. A Blueprint-only project can use 100% of Inkwell without writing a line of C++ and without being converted to a C++ project. Adding Inkwell does not force a project to become a C++ project either way — the plugin compiles as a plugin, not as project code.

Where the plugin content lives

The plugin ships content mounted at /Inkwell/. To see it in the Content Browser — including the showroom map — enable Settings → Show Plugin Content; it then appears under Plugins → Inkwell Content. Nothing in your project has to reference these paths. Every asset Inkwell loads resolves through project settings, so any of them can be repointed at your own content.

Check that it worked

Four things should be true after enabling the plugin and restarting:
1

The toolbar entry

A Page Editor dropdown button appears in the Level Editor toolbar. It lists your recent documents and every Page Document in the project, can create a new one, and has a Documentation entry that opens this site.
2

The Tools menu

Tools → Inkwell appears in the main menu, with the same entries — this is the route to use if your project’s toolbar is customized or crowded.
3

The asset type

Right-clicking in the Content Browser offers Inkwell → Page Document, and creating one gives you an asset that opens in the Inkwell Page Editor window on double-click.
4

The plugin content

With Show Plugin Content on, Plugins → Inkwell Content is browsable, the five font families are in /Inkwell/Fonts/, and opening /Inkwell/Maps/L_InkwellShowroom and pressing Play puts you in the demo room. That is the whole plugin exercised end to end — the quickstart starts there.
Either the plugin is not enabled (Edit → Plugins, category Content), or Project Settings → Plugins → Inkwell → Show Toolbar Button has been turned off — that setting takes effect only after an editor restart.With the button hidden, the Page Editor is still reachable by double-clicking a Page Document, from Tools → Inkwell, and from the console command Inkwell.OpenPageEditor <PageDocumentObjectPath> (with no argument it logs every document in the project).

Settings that matter on day one

Everything lives under Project Settings → Plugins → Inkwell (UInkwellSettings). The settings are defaultconfig, so changes are written to your project’s Config/DefaultGame.ini and travel with source control. Most of them can be left alone forever; these are the ones worth a look before you author your first real document. Two more you will not touch on day one but should know exist: Page Ink Material and Page Sheet Mesh. Repointing the first lets you draw pages with your own material (a lit parchment shader, say) as long as it exposes the parameters listed under Material Parameters; the second swaps the default sheet mesh. The full table of every setting is in the settings reference.
If a required setting is cleared or its asset fails to load, Inkwell logs one warning per session on LogInkwell naming the exact setting to fix — for example “Set ‘Project Settings > Plugins > Inkwell > Page Ink Material’” — rather than failing silently. When something does not appear, the Output Log filtered to LogInkwell is the first place to look.

Before you package

Inkwell ships two modules. Inkwell is a Runtime module loaded at PreDefault and contains everything the game needs, baking included. InkwellEditor is an Editor module — the Page Editor window, the asset definition and factory, the menus and the font import tooling — and is never included in a packaged build.
Rich-text markup stores fonts as string paths, which the cooker cannot see. Each Page Document carries a Font References array of hard references, rebuilt by the Page Editor’s Save Document button. You never edit it by hand — but do save documents from that button, and do not delete the array.
The setting defaults live in plugin content and cook with it. If you point a setting at a project asset that nothing else references, confirm it is included in the cook — for example through Additional Asset Directories to Cook.
Two bundled conveniences bind ordinary runtime keys, not editor-only ones. The demo Ink Page Interactor’s Enable Default Input binds its Interact / Put Back / page-turn keys (E, Q, Left, Right by default, plus the mouse wheel), and the production Ink Page Reader’s Bind Flip Key binds F. If you use either component, turn the option off once you bind your own input — or those keys stay live in the shipped game. The interactor itself, along with the reader character, game mode, exhibit component and prompt widget, is a demo/reference piece and not recommended for production use in the first place.

Next

Quickstart

Press Play in the showroom, author a document, and wire reading into your own interaction system.

Settings reference

Every entry under Project Settings → Plugins → Inkwell, with real defaults.

Fonts

The five bundled families, and importing a folder of TTFs as a family of your own.

Example content

What ships in the showroom and /Inkwell/Examples/, and how each piece is wired.