Skip to content

A collection of ink samples, tools and a list of projects that use ink

License

Notifications You must be signed in to change notification settings

inkle/ink-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

ink Library

This is a collection of ink resources, samples, tools as well as a running list of projects that use ink. It's an attempt to catalogue everythink in one place.

We're open to pull requests, so feel free to submit any sample ink, tools that you've found useful, or a link to your own project or game.

ink Patreon

Inkle has a patreon page full of tips and tricks, please consider donating if you make use of ink!

ink samples

  • Snippets - re-useable functions, examples of techniques, etc.
  • Stories - entire playable stories written in ink.

If you want to submit a sample, please make sure to put a header comment at the top of your (main) file that gives an overview of your snippet, or an overview of your story.

Please be aware that any sample content contributed to this repo becomes MIT licensed.

ink Tools

ink Engine ports, wrappers and integration

The repositories marked with ⭐️ are compatible with the latest version of Ink. Those marked with ⚙️ includes a native compiler. Warning: the others may be incomplete or works in progress.

  • Ink-Unity-integration ⭐️⚙️ - Official integration for Unity from inkle.
  • inkjs ⭐️⚙️ – A JavaScript port of ink (runtime and compiler).
  • godot-ink ⭐️ - Official implementation integrated in Godot through mono.
  • inkgd ⭐️ – A GDScript port of ink for Godot.
  • blade-ink ⭐️ – Inkle Ink runtime implementation in Java.
  • UnrealInk ⭐️ - Integration of the Ink language into Unreal 4.
  • GMInk ⭐️ – Ink integration for Gamemaker Studio.
  • Tinta ⭐️ - Ink integration for Lua (including Love2d, Playdate and Picotron)
  • inkpot ⭐️ - A container for Ink within the Unreal Engine (v5.4 or later)
  • inkcpp - Ink runtime in C++ with an additional JSON to binary converter. At time of writing, many but not all features supported.
  • mica-ink – A Kotlin implementation of inkle's open source scripting language (ink) for writing interactive narrative.
  • inkhaxe – Ink port from C# to Haxe.
  • inkrs – A port/rewrite of inkle/ink in rust.
  • pink – An attempt to implement a subset of ink in lpeg.
  • ink-iOS – An iOS wrapper for the JavaScript port (see above) of Inkle's Ink scripting language.
  • Narrator - An Ink parser and runtime implementation in Lua. Also works with Defold.
  • Inklecate-Wasm - WASM port for in-browser and node.js compilation (last update: early 2020)
  • StreamINK - play conversational adventures in your Twitch Streams

Analysis and visualisation

  • graphink - A graphing tool for visualising ink by the creator of inkjs (deprecated)

Editors and extensions

General

  • Inky - Inky is the offical ink editor developed by inkle.
  • Borogove - Tool to write, play and share interactive fiction entirely online, with support for ink.
  • Quill – Quill is an online tool for playing and sandbox testing Ink stories.
  • Ink Language Server – A language server for inkle's Ink, that adheres to the Language Server Protocol (LSP).
  • Yarn Editor - A Pwa Desktop/Mobile 📱💻 app that can author, play and compile ink files via the inklecate wasm port and inkjs.

Atom extensions

Emacs extension

  • ink-mode – syntax highlighting, automatic indentation, snippets, play testing inside Emacs.

VS Code extensions

Frameworks, templates and command line utilities

  • ink-soaked - A template for creating hypertext fiction that acts like most Twine story formats.
  • inkjs template to work with webpack and autorebuild-on-edit
    • Another version without compatibility with Mac and Windows (without inklecate-wasm)
  • ink-vn-engine - An engine for building browser-based visual novels with ink.
  • Mutter – A framework for building bot brains.
  • Paper Engine – Paper Engine is designed to allow game writers to create (nearly) their entire (more than Text) game without ever leaving Ink.
  • Atrament – A simple interface to Inkjs, which can be used as a core engine for your game app.
  • Blotter – A front-end engine for publishing Ink stories on the web.
  • Gall – A a simple command-line tool for assembling Ink stories with Blotter.
  • PalimpsestNW – A basic template for deploying a game written in ink as a stand-alone desktop app.
  • inkphone – A sample app demonstrating how to turn a web-based Ink project into a mobile app with PhoneGap.
  • StoryBytes Android / StoryBytes Desktop – Story viewer built on top of blade-ink.
  • Ink-Fungus Gateway (source code) – A tool to connect the Ink Unity Integration Plugin with Fungus.
  • ink-proof (source code) – Conformance testing for Ink compilers and runtimes.
  • ink-tools - Wrapper around command-line ink compiler that has a watch mode for automatic re-compilation.
  • binksi - A bitsi-like tool for making small lo-fi graphical adventure games where a character explores a world and interacts with its inhabitants.

Package Management

ink games (and non-games!)

By inkle

By the community

Game jams, competitions, experiments and demos

Upcoming games

Non Games

About

A collection of ink samples, tools and a list of projects that use ink

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages