/astarte

Core Astarte Repository

Primary LanguageElixirApache License 2.0Apache-2.0

Astarte

codecov

Astarte is an Open Source IoT platform focused on Data management and processing written in Elixir. It is a turnkey solution which packs in everything you need for connecting a device fleet to a set of remote applications and process data as it flows through a set of built-in features.

It performs data modeling, automated data reduction, real-time events, and provides you with any feature you might expect in a modern IoT platform.

Astarte builds on top of amazing Open Source projects such as RabbitMQ and Cassandra/ScyllaDB.

Resources and Quickstart

Let's try it!

This is the master branch, which is not guaranteed to always be in a usable state.

For production purposes we recommend using the latest stable release (currently v1.0.0), this branch should be used only for 1.1 development activities.

Can't be easier. Pick your favorite machine with at least 4GB of free RAM, make sure it has Docker, and simply:

$ git clone https://github.com/astarte-platform/astarte.git && cd astarte
$ docker run -v $(pwd)/compose:/compose astarte/docker-compose-initializer:snapshot
$ docker-compose up -d

Make sure to use the latest stable release if you want a flawless experience.

You should be up and running in a matter of minutes. If you want a more thorough explanation and find out how to access your new Astarte cluster and what you can do with it, follow our "Astarte in 5 minutes" tutorial to get some fake or real devices to stream and process data while your tea gets ready.

Sweet! Let's move it to production!

Whoa, not so fast. Putting together an Astarte instance which can handle your data might be tricky, and requires some knowledge about the platform to make sure it won't break.

So, if you're serious about getting Astarte in your production environment, you might want to learn more about it first. Start by having a look at its architecture and finding out how it works. Once you feel confident, head over to the Administration Manual.

Where do I find binaries?

Astarte is designed from the ground up to be run in containers, with Kubernetes as a first-class citizen when it comes to deployment. Astarte's images can be found at Docker Hub, with every Astarte service coming with its own image.

With the help of our Kubernetes Operator and astartectl, you can deploy your Astarte instance to your favorite cloud provider in a matter of minutes.

Looks great! I want to contribute!

That's awesome! Astarte is quite young as an Open Source project, so we're still setting up bits and pieces to make contributions easier and more effective, such as a shared roadmap, a proper contributor guide. For the time being, you can head over to the repository you want to contribute to and set up a Pull Request. We're using DCO for our contributions, so you'll need to sign off all commit messages before submitting a Pull Request.

You can also join us on #astarte slack channel on Elixir Slack and on #astarte IRC channel on freenode.

We accept all kind of quality contributions, as long as they adhere with the project goals and philosophy, and have some tests.

Any chance I can get a hosted and managed instance?

Yup, stay tuned :) or get in touch with us.

I need some help with my installation! Where can I get commercial support?

Glad you asked. Astarte is developed by Ispirata, who fuels its development thanks to the generosity of many customers running it in production. Besides consultancy, installation, maintenance, long-term support and customizations, Ispirata also commercializes Astarte Enterprise, an Astarte variant packing in some additional goodies and features.

Get in touch to find out how we can help you in getting Astarte in its best possible shape for your specific needs.

License

Astarte source code is released under the Apache 2 License.

Check the LICENSE file for more information.