Front end for an iOS web app using Django Rest API - html

I ve recently been asked to work in the front-end of a new app which will be written with Django for back end.(They said it will be for iOS).
Even though I have experience working with front-end I never wrote any code for iOS or Django REST API. What are the differences? Is it html/css ?
In another words lets assume that someone has a code in Django which asks user a question and stores the answer. The response will be in JSON(I think.) He wants me to write front end. Should I write it in html?
One more question: What will determine that our app will be working in iOS and will not work in android. They said the app will be for iOS at first but since it uses REST API what is the reason it cannot be available at the same time for android?

The usual process of using django rest framework is to have interactions with your backend exclusively using json.(most of the time, some people might use xml). So in general, all the information (requests and responses) will be JSON. Once you have that part setup, there are a number of technologies that will help you create user interfaces. You can use angularjs or JQuery to send JSON requests and responses to the endpoints and display the information obtained.(the whole interface is modified with javascript.)
Now, for your mobile apps. There are two approaches you either create what people call a native app using Java(for android apps) or Swift(for apple devices).
If you decide to use that approach you will have to mantain both apps in different languages. The other way of doing things would be to create an interface using something like angularjs and use a tool like ionic to convert that app into an android/apple app. Using that approach you will only have to mantain 1 application.
Here is a small diagram to represent the interaction.
(Django rest framework) <=JSON=> (front end app.)
I would suggest to start with django templates, it might just do the trick.

Related

Xamarin: how to create views / UI of an app dynamically from a Json

Have you already developed a Xamarin app whose views are generated from a Json recovered when launching the application?
I met a client with this kind of need:
they are developing a web app to prototype the screens by adding and positioning some controls (TextBox, Label, ...)
this generates a Json that must be interpreted by the Xamarin app: this will build the different views dynamically
in a first version, the user's data would be stored locally (through a file or SQLite) and synchronized "manually" when the device is connected to a computer
the app will work on Android only in a first time, and then on WPF
The client has not yet decided between Xamarin.Forms or Xamarin native, but it's probably more interesting to do it through Xamarin.Forms, even if iOS is not required: this should make porting on WPF easier.
Have worked on similar cases? Have you some recommendations? Are there plugins or patterns that could be used to simplify this development?
I've found this one, but it doesn't seem to be the same use.
There is also this article on iOS, but there is not the same thing on Android.
This would in theory be possible using a massive code behind builder for a page but should NOT be done for a production app. Mobile apps have very specific requirements that need to be thought of before attempting.
Xamarin is great for simplifying code reuse, and if you use Xamarin Forms you can reuse the UI components for Enterprise apps.(the less fancy and pixel perfect the layouts need to be the better. )
Your client would be better served by making it a mobile compatible web page instead from the details you have shared.

tvOS: any ready-made REST API component?

Before i start exploring the deep ends of tvOS, I'd rather turn to the community and get expert advice...
I am planning to write afwo-headed app :
First leg would run from FileMaker Go SDK given the simplicity to f development and straightforward database management.
Second leg would need to be an Apple tv component which only needs to display formatted text on screen, which is sent from the mobile bit described earlier.
Based on technologies i know so far my idea is to use FileMaker go ability to make http get/post requests to a RESTful service. Hence the question: is there anyway to run any such REST service from tvOS which will eventually display formatted text on screen based on requests pushed by mobile app ?
Does that even make any sense or, is there any more 'native' ways to achieve such stuff ?
Thanks
Cool project. Have a look at https://developer.apple.com/reference/tvmljs or search for TVML and TVJS.
Have you tried atvjs framework for building TVML apps? It lets you build and quickly prototype apps without much noise, abstracting the underlying hassles and complexities of a conventional TVML app.

How to do a JSON webservice

I need to create a webservice that will be used in iOS, Windows Phone and Android apps.
I've found many tutorials on the Internet but no one uses real JSON files.
I have an example of what I mean:
https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=tiste&count=2
Is it better to use a web service like Twitter or can we use only headers in PHP?
If it's the first, how can I do it?
Finally, is JSON the most suitable option for web service communication?
Most contemporary web apps are built around an api - they are called api-centric. Twitter is one of them. You are not the only one who needs to create a web frontend and apps for mobile platforms. Having an api for all those platforms is going to save you a lot of time.
This field is developing rapidly now. There are many frameworks(both client and server side) to choose from. Since you are not telling us which technology/programming language you are going to use, i can only suggest you to google an api-centric or a rest framework. If you extend your question, i'll give a more specific answer.
Meanwhile you can read the following general articles...
http://net.tutsplus.com/tutorials/php/creating-an-api-centric-web-application/
http://en.wikipedia.org/wiki/REST
http://en.wikipedia.org/wiki/OAuth
http://blog.programmableweb.com/2011/09/23/short-list-of-restful-api-frameworks-for-php/

Web application architecture design - HTML/CSS/JS frontend + REST Backend

I have some experience developing websites, but none with proper web applications.
But this time I'm creating more of a web application, my server will surely handle API calls from a mobile app (iPhone/Android/MeeGo (...or not)) or even from third party clients.
So I'm thinking, is it really necessary that the "website" --the frontend part of my application using HTML (5)/CSS (3) and JS--interacts with my backend in a different way than my other "frontends"?
Am I thinking wrong? I think this is a common problem, and I need some experimented advices on that. Thank you for your help.
Actually No. You're thinking it the right way. You can Javascript to interact with your Rest API, so you can focus only on writing a scalable API, and the UI.
That's the approach taken by Twitter. Their web site, is a Rails application that uses the twitter API, written mostly in Scala, and uses by the hundreds of twitter clients out there, whether mobile or desktop app.

Web Application Framework - HTML5 with mobile devices JavaScript support

I searched for Java based web application frameworks the last few days. I have to build a Java EE backend and a HTML5/CSS3/JavaScript frontend which can be accessed with multi-touch capable devices. So I will need modern JavaScript frameworks like Sencha Touch.
My backend should be built upon with Java EE, Hibernate and MySQL. I have two kinds of data transfer: AJAX / JSON so the page does not need to be reloaded and pages and normal pages which reload the page by sending a form with POST (or do you think to have more the feeling as a application I should do all stuff with AJAX/JSON?).
I found several web application frameworks:
JavaSever Faces
Apache Wicket
Spring MVC
handle it only with jar files for JSON (and REST)
Google Web Toolkit
What do you think will fit best? Perhaps you can exclude one of them, that would also be great, so I can take a closer look at the remaining technologies.
Best Regards, Tim.
Interesting question.
Concerning exclusion: If you use a JS framework like Sencha Touch in the frontend I don't see the sense in using something like GWT which is for frontend-code generation.
I would probably stick with a more lightweight framework like http://www.playframework.org/.
You get your data from the backend and then hand it via JSON over to your frontend code i.e. sencha, sproutcore, cappuccino, gwt or what you choose to use.
Let me know what you choose :-)