ethan

Jasonette Cross Platform - Make iOS and Android apps with just a single JSON

by

Add a comment

Replies

Best
vu huynh
Awesome solution :D Anybody thinks about Jasonette and Firebase?
ethan
@vukidrock here's a very primitive JSON code to post/get from firebase https://jasonbase.com/things/zn1...
Alfred Wang
Hi, this is exciting! If I want to build a simple forum app which has user system, post system, etc. What is the requirement of the server and how to build up the backend on the server? Any example/tutorial? Thank you AW
ethan
@alfred_wang Great question! Because the beauty of using JSON is that it's a web standard, and you don't need to do anything server side. You can directly plug in jasonette to your existing forum or API as long as it's HTTP JSON based (which is like 100%). This is a design decision I take very seriously because I've been personally super frustrated with how all the past app development tools went out of business and took down the developer ecosystem with them because they were all based on proprietary server technologies. Jasonette was designed so that even if I die tomorrow or suddenly disappear, you would still be able to use it because it's all HTTP/JSON technology. If you scroll to the bottom of the homepage you'll see this: ----------- Anyway, as for examples, you can check out a lot of them here: https://github.com/Jasonette and https://github.com/gliechtenstein Hope this helps! Feel free to join our slack channel and we can chat! https://jasonette.now.sh/
mihir
@gliechtenstein Cool. here, I have two points to know. 1. Can we manage background processes like location tracking or anything? 2. Does Jasonette support all css?
ethan
@mhrnik Re: styling => Jasonette was extracted out from actual production apps with all kinds of different UIs so it covers most of what you would need on mobile context. The styling attributes were designed to mimic a lot of CSS attributes so that it's easy to get started but does not implement all of them and it was intentional. At one point I thought about going all out and really replicating the entire CSS spec, but soon realized a lot of CSS features don't make sense or are needlessly complex in the mobile context. That said, Jasonette was built to be extensible https://jasonette.github.io/docu... so anything is possible and any effort to improve is super encouraged and will probably be merged in in most cases where it makes sense. Re: background processing => The current version of Jasonette doesn't include background features except for push notifications, because I wanted to start from simple and get it out there, so the community can make the design decisions as a whole. There already have been significant improvements to how the code is modularized since the iOS version was released a month ago. Actually there already is an ongoing discussion on how to implement this https://github.com/Jasonette/JAS... so we should be able to get it working soon in the future. Would appreciate contribution if you're interested. Hope this makes sense!
mihir
@gliechtenstein Thanks. I will check all the links you have shared.
Maarten Belmans
This is awesome! I'm playing with it now and thinking of useful apps I could make. If I want to show a Google Map on the screen, how would I go about this? 2 years ago, I set out to do the same for web pages (output a page from JSON) and I abandoned it because there are a myriad of page builders out there already. Guess I should have sticked to it ^^
ethan
@poehah currently the iOS version supports "Map" component https://jasonette.github.io/docu... which is a native apple maps component. (Android should be implemented in the near future as well) But you can always write your own component extension very easily without waiting https://jasonette.github.io/docu...
Vamsi
While I feel that it's xml / html reinvented all over again, but this just opens up mobile dev to backend devs without much learning curve. Thanks for Open-sourcring it !
ethan
@vkbdev Thanks! Yes the HTML/XML question is one of the most frequent comments I get. It's partly because Jasonette was intentionally designed to be familiar to anyone who's touched HTML before, but also because the fundamentals are the same. It's a proven technology. That said, I am very certain that JSON is the future. We are not just talking about mobile apps. If you think about what HTML is, it was a markup language designed for a single device (desktop computers) and was brought onto mobile devices as an afterthought. There will be tons of new types of devices in the future and there's no reason to stick to a piece of technology that was built for a single device. In that sense I think JSON is the prefect fit since most new/small/interesting devices already are powered by JSON, and all future devices will be as well. Hope this makes sense!
The Lloydinator
This is so genius. Wow! Great work!
ethan
@lloydmiller thanks! looking forward to seeing what people build. If you ever get to making an app with Jasonette, feel free to share with the community, you can find us on the forum or the slack channel :)
Sylvain Saurel
Promising tool
oty
genius , you're making App dev much easier & simple !!
Oded Harniv
Brilliant! Saves so much app maintenance time. How do I access the OS resources like NFC and ibeacon?
ethan
@oded_harniv currently Jasonette supports most frequently used native features https://jasonette.github.io/docu... but not all (Jasonette iOS is one month old and Android is one day old! :) ) , but we really encourage contribution and there are very easy ways to write extensions https://jasonette.github.io/docu... so please feel free to jump in, or join us on github issues thread :)
Saoud Rizwan
This is actually very cool, watch this talk:
Spotify pretty much uses the same idea -> converting JSON into native app components. The real challenge is supporting all the different technologies iOS and 3rd party libraries have to offer. However, using JSON to create static/basic apps is the first step in the right direction. Ultimately it seems like programming will become close to obsolete and will be replaced by WYSIWYG models for "product makers" to use instead of learning how to code. Not saying this is bad, but will invite more ideas into reality. I commend your hard work @gliechtenstein
Saoud Rizwan
@gliechtenstein also what is your profile picture of? I know I remember that anime bear from somewhere!
ethan
@sdrzn Yup like you said, the real challenge was in comkng up with a way to represent everything else in JSON (not just the layout, because just being able to express layout would mean you still need to write native code, just like what Spotify does. Otherwise you just have a non-interactive mockup). For example you can write a native function call chain using https://jasonette.github.io/docu... and you can write a client-side JSON templating using https://jasonette.github.io/docu... etc. Thanks for the encouragement! p.s. the character is Kon from bleach :)