About the project
Jasonette is a different way of making native apps.
Instead of programming an app on the device, you simply write a JSON file hosted on a server, and the Jasonette apps fetch and use it to build themselves on-demand whenever you open the app.
Before we jump in, here's where you can stay in touch with the project community:
■ Follow the project
Blog | |
---|---|
@jasonclient |
Blog |
Github iOS | Github Android |
JASONETTE-iOS |
JASONETTE-Android |
■ Join the community
Slack | Forum |
---|---|
Ask questions and share tips.https://forum.jasonette.com |
Quickstart
1. Download Jasonette for iOS or Android
2. Write and host a JSON recipe that defines your app
3. Add the JSON URL to Jasonette to turn it into your app
Step 1. Download
Go download and come back, we'll wait.
iOS | Android |
---|---|
iOS Setup |
Android Setup |
Step 2. Learn
Watch the 2 videos below and you'll have learned everything you need to know to get started.
The videos were shot using an iPhone, but it works exactly the same for Android.
A. Do you know JSON?
Before we dive in, do you know JSON? If not, just check out this tutorial, takes 2 minutes.
B. Get a JSON server
You'll be serving your entire app from a server, so you will need somewhere to host JSON, just like you need somewhere to host websites. There are many ways to do this:
1. Jasonbase.com (https://www.jasonbase.com)
[Recommended] A JSON hosting service created by @gliechtenstein while building Jasonette because there was no easy way to host, edit, and serve JSON online instantly. This is the site used in the tutorial videos. Feel free to use this for your Jasonette apps. It's FREE.2. Code hosting or pastebin sites
You can also use Github or Pastebin. Not really recommended for development because these sites are NOT built for this type of usage. They actually discourage you from using them as API endpoint. Furthermore, their content is cached so you'll often keep getting old responses whenever you update your JSON content, which is a pain. However, you can use them AFTER you've finished editing, or use it for open sourcing though. Here's an example.3. Plug into your existing server
You can skip all this and set up your own web app with a JSON endpoint, or just plug into your existing web app.C. Learn the basics
This video walks you through the basics of Jasonette, such as how it works, how to get started, etc. It was shot using iOS but it basically works the same for Android.
D. Learn JASON syntax
This video teaches you how to actually write a JSON markup to build sophisticated interactive layouts.
Step 3. Learn more (Reference)
Anatomy of a Jason view
Learn the basic structure of a JASON view
Just like HTML has basic tags such as body, div, span, li, etc, Jasonette has JSON based tags to describe the structure of a view.
Components
Learn component syntax
Components are the most basic units of user interface, such as image, label, textarea, button, slider, etc.
Layout
Learn layouts
In many cases we combine multiple components to construct a unit. We use layouts to do this.
Link multiple views
Learn linking
Above three sections are all you need to know to display content in a view. But what if we want multiple views? We can link them using href
.
Actions
Learn actions
Actions define a task or a sequence of tasks you wish to run, such as network request, audio play, camera access, geolocation, displaying banners, etc.
Templates
Learn templates
You can use templates to dynamically render data, such as remote network content, local data, and user input.
Examples
Actual JSON examples you can try out with Jasonette: