About this Guide
Welcome to the developer's guide for Wallaroo. This document is available in a variety of formats including:
You can open issues and submit pull requests against our GitHub repo.
This document is has been written to take an application developer from zero knowledge about Wallaroo to being able to develop streaming Wallaroo applications in a local development environment in Python. (For other languages such as GoLang and C++, and for long-running data jobs such as large-scale analysis or model training, please contact us. Support and documentation are coming soon.)
Please contact us at firstname.lastname@example.org about how we can help you with your particular data processing applications.
We designed this document for programmers that want to jump right in and get started using Wallaroo. Starting with installing all of the necessary components required for Wallaroo and launching an example application in a local development environment.
Although not required, you will get the most out of this tutorial if you have previous experience with Python. Additionally, experience with stream processing and distributed computing systems and concepts would be helpful.
Supported development environments
It is currently possible to develop Wallaroo applications on MacOS and Linux. This guide has installation instructions for MacOS, and Ubuntu Linux. It's assumed if you are using a different Linux distribution that you are able to translate the Ubuntu instructions to your distribution of choice.
What to Expect
This document is organized into a number of sections. We recommend that you start in a linear fashion through this book. To that end, please consider reading in order:
- "What is Wallaroo"
- "Core Concepts"
- "Developing with Wallaroo"
Once you have finished the "Developing with Wallaroo" section, you can then jump to documentation for the language you will be developing with.
Covers the concepts you'll need to understand in order to build a Wallaroo application. As much as possible, we will avoid being language specific and try to keep it generic, but from time to time we will have some examples in Pony.
Developing with Wallaroo
The "Setting Up Your Environment for Wallaroo" describes setting up your development environment and then compiling and running a Wallaroo application. The tools you will install then are useful when developing a Wallaroo application.
By the time you are done with this, you will have touched many of the tools you'll use with Wallaroo as well has having run a Wallaroo application locally and shaken out any issues related to getting one setup.
Wallaroo Python API
How to develop Wallaroo applications using Python.
The Wallaroo Examples section has examples for each of the languages currently supported by Wallaroo.
Additional Wallaroo support documentation including detailed information about command-line options.
Terms and conditions for Wallaroo's use.