Blog
Wax Show ‘n’ Tell
Hindawi Limited & Coko Announce Partnership
Coko & eLife partner on first PubSweet fueled journals submission & peer-review platform
Seeding a New Ecosystem: open infrastructure
Take Editoria for a spin
Making decisions in a small team and keeping it fun
A look at the future of journals with xpub
Editoria 1.1: Meet the Automagic Book Builder
A sneak peak at what’s next for PubSweet
Travel the long and winding road to PubSweet
Ink 1.0 is here!
Baby steps to user-centric open source development
Why we’re all in open source now
Getting Started with Coko
Editoria 1.0 preview
Preprints won’t just publish themselves: Why we need centralized services for preprints
INK – the file conversion engine
How we’re building the ‘mountain chalet’ of complex conversions
Sowing the seeds for change in scholarly publishing
Open Source Alliance for Open Science
Editoria Newsletter Out Now!
INK client upgrade
All About INK (explained with cake)
Track Changes (Request for Comments)
Book on Open Source Product Development Method Released!
Italics, Buenos Aires and Coko?
Editoria Update
Where we are with File Conversion
A Typescript for the Web
Coko Celebrates Year One
Editoria – Scholarly Monograph Platform
Adam Hyde’s Blog
Introducing Christos
Introducing Yannis
New PubSweet release
Attribution in Open Source Projects
Open Source for Open Access
Reimagining Preprints: a new generation of early sharing
Introducing Stencila and Nokome Bentley
Reimagining Publishing
Introducing Charlie
PubSweet 1.0 “Science Blogger” alpha 2
PubSweet 1.0 “Science Blogger” alpha, INK 1.0 alpha RELEASES!!!
Collaborative Product Development
Publishing for reproducibility: collaborative input and networked output
Substance Consortium
UCP & CDL Announcement
Release 0.2.0 is here!
CKF receives funding from the Gordon and Betty Moore Foundation to transform research communication
Technology Slows Down Science
[tech post] CSS and Drop Caps
Vote for the pubsweet logo!
Introducing Substance
Digging Collaboration and Cooperation: Code for a New Era
Coko 2015
PubSweet 0.1 Release
Coko Resources
Making science writing smarter
What I Have Learned About Building Community
Introducing the Tech Team
Knowledge and Communication
PKP and CKF Strategic Alliance
CKF Launches
July 17, 2017

Ink 1.0 is here!

The Collaborative Knowledge Foundation is pleased to announce the release of INK 1.0.

It’s an exciting milestone for us: After almost a year of development, INK has grown from a scribble on a bit of paper to a fully fledged, production-ready framework ready to automate some of the tricky and time-consuming aspects of document and content processing in publishing.

INK 1.0 allows users to assemble reusable custom-built document pipelines. It’s an extensible, modular, customizable open-source framework.


By facilitating the building of custom automated processes, INK enables smaller publishers and authors to leverage functionality generally only available to specialist vendors or larger publishers.

The next phase of INK development is where we really show off what it can do — file conversion is really only the beginning of highlighting INK’s capabilities. In the future, INK create some steps to directly address some of the challenges seen by our partners and collaborators in the publishing industry to directly automate some of their most time-consuming production processes. You can check out INK 1.0 here.

For the technically minded readers, here are some details on the release.

The full feature set of INK 1.0

These were all added since the last update:
  • INK automatically picks up step classes and makes them available to users of the system to use in recipes
  • A JSON file manifest is included with output files, which includes a checksum and semantically tagged as “new”, “modified”, or “existing”
  • A user can create a recipe with recipe steps with execution parameters as part of the step
  • A user can execute a recipe with one-off execution parameters (these parameters will take priority over parameters with the same name specified by the recipe step)
Recipe step parameters are a really exciting feature. They allow the same step to be customized many different ways depending on the needs of the user without having to write many step classes that all do something similar. For example, a user can specify options when doing a Pandoc file conversion. That Pandoc step could therefore be re-used for many different uses, rather than requireing a different step class for every possible permutation of Pandoc options (and are a lot of them!).

  • A user can create recipes with any steps they like, in any order.
  • A recipe can be public or private – private recipes can only be viewed and executed by the account who created it.
  • A user can change a recipe
  • A user can execute a recipe with any number and size of files (limited only by system resources and the web server settings)
  • A user can see a recipe being executed step by step (the client they use would subscribe to events)
  • A user can download the logs from any step of an execution
  • A Service (associated with an account) can perform executions
An INK administrator can:
  • See the status of essential INK dependencies (e.g. Sidekiq) to quickly determine something that isn’t working or “up” that INK needs to execute recipes
  • See the list of accounts on that INK instance
  • See which step classes are available to execute on that INK instance (sorted by the step gem they appear in)
  • See which step gems are outdated (have an available version upgrade)
  • Monitor the asynchronous processes and check for failed processes
  • Add any combination of step gems to their INK instance
For everyone who’s been following INK since it was merely a scribble, thanks for your continued support and enthusiasm for the project. We’ve been able to create a flexible, extensible, customizable, modular framework for processing documents. INK is useful on its own as well as a workhorse for projects of all types.

Getting started with INK is now made easier thanks to the Docker image provided by Vasilis Kefallinos.

charlie@coko.foundation