Skip to content

xillio/definitive-guide

Repository files navigation

Xill Plugins: The Definitive Guide

Birds fly, matches burn, wind blows and content grows. There's little you can do about it. It seems like the longer we work with a certain system the faster its data starts to grow. This is all fine until we reach the point where the current system no longer fits our needs and we have to replace it. This is where the complex migration projects start.

Back in 2010 Ernst van Rheenen started a mission to make these migration projects run as smooth and risk-free as possible. He did this by developing the first version of a scripting language. This language allows programmers to perform any operation on their content. Later this prototype evolved into a tool for Xillio's consultants. They used it to perform custom content migrations. The language was able to withstand the full force of the content thrown at it. That is when, in 2014, development started on the public third iteration of what we now know as Xill. This iteration is now available to everyone as an open source project.

Xill is not about providing a standard boxed solution for every content related project out there. It is about making content integration simple. We want to achieve this by making Java developers and content consultants work together. This is what we aim to do with Xill.

Who Should Read This Guide

This guide is for anyone who wishes to extend the functionality of Xill from the Java point of view. It will help you get started with a plugin for Xill as well as provide some solutions for more advanced problems down the line.

This guide is suitable for starting Java developers and Java seniors alike. We expect you to have a programming background. We will not discuss the basics of Java software development. But, yet, it should be possible to understand most of the code examples in this guide for any programmer.

Why Did We Write This Guide

After the development of the Xill core stabilized we started building plugins like there was no tomorrow. We set out to simplify Xill plugin development as much as we could and decided to document in detail how to build these plugins. To do this, we took the initiative to start writing this comprehensive guide. The reason we choose for this format is because we can publish it to different platforms and have it always available.

Conventions Used in This Guide

The we use following conventions in this guide:

constant width text identifies program units. These are method names, classes, parameters, variables and any other elements used in programming.

Italic text indicates emphasis, terms or concepts.

Best Practice: This block signifies a convention we would like to pursue

Tip: This block signifies a tip or suggestion.

Note: This block signifies a more valuable piece of information.

Warning: This block signifies caution.

/**
 * Formatted code blocks are used to identify source code.
 */
public class Conventions {

}

Contributing

We invite and encourage everyone to join the conversation at xill.io and voice their opinions.

To contribute to Xill you can:

  • Report bugs
  • Provide feedback on Xill or this guide
  • Use it in your projects

Any help is welcome and if you need anything don't hesitate to contact us.

About

The Definitive Guide on Writing Xill Plugins

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published