How to

Developing and publishing

To get a new app published, you would need to go through the following steps:

  1. Fork our repository.
  2. Clone the repo to your local machine
  3. Checkout a new branch locally
  4. Initialize your project
  5. Make changes
  6. Initialize manifest file
  7. Submit a PR on our community repository
  8. Wait for our team to review
  9. Merge PR
  10. See it on our mobile app

Forking our repo

Fork our community repo.

Initializing your project

To initialize your project, after cloning your fork and checking out a branch, simply run

$ cd community/app
$ krate init <name of app>

See example.

The name of the directory should be a single word in small caps and represent the name of your app. This name will be displayed on our mobile app.

Start developing with the initialized files.

Manifest file

This file contains information about your app that will be displayed on our platform/mobile app. Before submitting your PR, run the following in your project root:

$ krate publish

Follow the prompts and enter your answers accordingly.

Example
Summary (max 40 chars): displays a random activity to do when bored 
Description (max 150 chars): fetches a random activity to do every 10 minutes from the bored API public endpoint
Author (max 20 chars): J. Smith 
Configs (yes/no): no 

See demo.

PR review process

After submitting a Pull Request (PR) on our community repo, there may be some back and forth changes and comments where we will suggest improvements during the review. Ultimately, however, you as the contributor will own the direction of your app. Anyone from our community is also welcome to make suggestions to your PR.

Once approved, please go ahead and merge your PR to our main branch. If we don’t hear back from you after a week, we will go ahead and merge your PR.

What to include

Your PR should include a brief background of what your app does and what is required to use the app, and other information of note.

The title of your PR should have the applicable prefix:

PrefixPR Type
New appNew app submission
FixBug fix to existing code
UpdateUpdate to existing code

Example:

New app: display random activity to do

Include this in your PR description:

## Summary 

[The brief description of your app for ease of reference for PR review purposes only]

## Requirements

[What is required for the app to work. Eg. Wi-Fi, user access key to 3rd party account]

## Demo

[Include a photo or video of how it looks like on your kublet]

## Icon

[Include a 1024x1024 pixel image in SVG format]

See example PR.

You can download an svg template here.

Criteria for acceptance

Apps that are published on our platform need to meet minimum standards, ie. your app:

  • is stable
  • cannot intrude on data privacy
  • respects API rate limits
  • has a reasonably broad use case
  • is not distasteful

It is our sole discretion whether we accept any apps for our platform. Once published, we reserve the right to remove your app from our platform in our sole discretion at any time.

After acceptance

After your PR is merged, we will make additions and changes to your code accordingly for it to work with our platform. The core content of your code will not change.

Bugs

If there are bugs, we inform you and/or will make changes to your code without waiting for your review, depending on the severity.