AppCenter icon

Publish on AppCenterBETA

An open, pay-what-you-want app store for indie developers

Log In with GitHub

Get Started

Get a basic app running, built, and ready for distribution with our Getting Started guide

Design

Learn about the design principles that make up apps on elementary OS.

Reference

Get more info about code style, reporting issues, and proposing design changes

Get In Front of Users

  • New apps get featured with a large, branded banner. Plus, trending and recently-updated apps are featured on the front page.
  • Define your app's keywords, categories, and subcategories to help people find it.
  • With built-in social media sharing and app URLs, users can easily share your app right from AppCenter.
Learn more about app metadata

Monetize Your Work With Familiar Tools

  • Fast, easy pay-what-you-want downloads from users of elementary OS.
  • Powered by Stripe Connect ensuring simplicity, security, and compliance.
  • No enrollment fees or subscription costs.

Learn more about monetizing your app

  • Keep issue tracking & release management where you're familiar.
  • Submit updates and see review status in AppCenter Dashboard.
  • Track review feedback with GitHub Issues.

Learn more about the submission process

Vala. A Modern, Fast, Open Source Language.

Familiar to anyone who's seen C#, but maintains API/ABI compatibility with C

Low memory requirements, native execution, and purpose-built for GObject

Signals, properties, generics, lambdas, assisted memory management, exception handling, type inference, async/yield & more

public class MyApp : Gtk.Application {

    public MyApp () {
        Object (application_id: "com.github.myteam.myapp",
        flags: ApplicationFlags.FLAGS_NONE);
    }

    protected override void activate () {
        var window = new Gtk.ApplicationWindow (this);
        window.title = "MyApp";
        window.set_default_size (1024, 768);
        window.show_all ();
    }

    public static int main (string[] args) {
        var app = new MyApp ();
        return app.run (args);
    }
}

Full API documentation available on

Valadoc

Download elementary OS 5.0 JunoBETA

Build and release your apps for the upcoming version of elementary OS with this early preview. Juno brings new APIs, improved notifications, a new location agent, new Granite CSS constants, new icons, and tons more. Build feature-full apps easier than ever with Gtk 3.22 & Vala 0.40.

Read the release notes