Chrome Apps UX guidelines - google-cast

In the Google Cast SDK Overview video published on YouTube by Google, the presenter says
There are design implications that are driven from the Design Checklist so in addition to the platform specific guidelines for Android, iOS and Chrome, it is important to do a thorough review of the Google Cast Design Checklist.
The sentence reads like legal-speak, but more importantly, it mentions existence of platform specific design guidelines for Chrome. I never knew that there is anything like that. I attempted googling around, I could find guidelines for Android, iOS, but nothing for Chrome. Does anybody know where the Chrome guidelines can be found?

The design checklist is here: https://developers.google.com/cast/docs/design_checklist
The starting point for Chromecast developer doc is here: https://developers.google.com/cast/

There is an unified design guide for both Android and Web Apps that was announced on June 25 2014 at the Google I/O keynote. It is available at the https://www.google.com/design/ site. Regarding Google endorsed UI frameworks, there are two. Polymer Paper and Google Web Starter Kit. Additionally, there are stylesheets on GitHub from various people that aim to replicate the look and feel of the Chrome Settings page as well as various widely-used opinionated Responsive CSS Frameworks that can provide design clues, most notably Twitter Bootstrap and Foundation.
Polymer Paper
Polymer Paper is a set of Polymer Web Components which implements the unified mobile and web UI concept called Material Design. Some of the distinctive characteristics is the use of drop shadows and animated transitions to hide latency and give feeling of responsiveness. The components are built with the Polymer framework on top of web components, so it works best in cutting edge browsers.
Google Web Starter Kit
Together with the Google Web Fundamentals developer guide the Starter Kit provides a starting point regarding look and feel for your web app (a style guide with UI elements, e.g. sandwich sidebar), as well as preconfigured selection of helper tools to better manage your CSS styles, minify resources, keep performance considerations in mind and so on. The Starter Kit employs production ready tools and procedures that can be used today.

There is nothing like that, the presenter probably just misspoke. The Thinking in Web Apps page on Google Developers could give you some hints, but it feels outdated in many aspects.ยจ
Just some more general advice on that:
People tend to gravitate towards Twitter Bootstrap these days, so base your design on that and you will play well with others.
Watch the trends and adopt what the big players are using. For example, the sliding drawer on the side seems to be big now.
Regarding the ongoing effort by Google to allow easy porting of Chrome Apps to mobile phones, looking at the Android and iOS guides may help. Most importantly try to optimize your app for touch, avoiding hover, right clicking and minimize the need to type.

Related

XPages for iPhone6: Which controls or framework do you use?

Just got a request for a fresh XPages project where an existing traditional Domino Web application should be modernized and mobilified (iPhone 6 being the target).
I'm comfortable with Boostrap, especially Mark Leuksinks add-on, and that is my first gut feeling.
On the other hand I'm aware of specific Mobile Controls, both from IBM and from Teamstudio, and was wondering if there is a 'best way' you would recommend.
I can pretty much control everything on the server. I'm aiming for quickest effect for minimum effort.
TeamStudio tools are good if you want offline or do other development that does offline (XControls can also be used online, so could give consistent look and feel and development experience).
XPages Mobile Controls require a single XPage in order to get transitions. So if it's a large application, that can make the XPage quite cumbersome. You need to become comfortable with the settings on each mobile page, to know when to refresh and when not to.
If you're familiar with Bootstrap and can "encourage" the end users towards your preference, then as a developer, that would make sense to me (leveraging existing skills means quicker development).
If you're comfortable with Bootstrap and responsive design, we'd certainly encourage going down that route. I take it you are aware that Bootstrap is now part of the XPages Extension Library on OpenNTF ? It was first released there in Nov 2014 and has been continuously updated since. And it will migrate to the core XPages runtime as part of the next GA release
I would use the DAS components and let Domino read/write JSON and implement the frontend using the IONIC framework. It uses AngularJS as JS framework, is conceptually not that different from Bootstrap l, but has all the hooks (using Cordova) to use native phone features.

Where is the source of Google design guidelines | Material Design

I have learned the Google design guidelines.
I have a good look at http://www.google.com/design/spec/material-design/introduction.html.
In the github source of web-starter-kit.
But, Will there somewhere source of http://www.google.com/design/spec/material-design/introduction.html?
Polymer is a great library for implementing Google Material Design into your app: https://www.polymer-project.org/0.5/.
Also, if your are build in Angular.JS the guys at Google have created their own NPM module called Angular Material: https://material.angularjs.org. It has a number of installation methods available.
There is also another library that has incorporated Google Material Design with Bootstrap: Just search for "Bootstrap Material Design" or go here. This wonderful library is made by FezVrasta.
Material Design is great thing brought by Google. Here are some of the frameworks that can be really useful to you.
Materialize: It's a great thing to start off with. Just CSS, no JavaScript.
Material UI: This is the library that I always use in my projects, but the problem that you may face is that this library is dependent on react.js.
Leaf BETA: Still in beta, it has extensive list of components such as buttons, cards, sliders, menu, tabs etc. It includes icons by Icomoon, instead of the original Material design icons.
Polymer Paper Elements: Polymer has so many things. Nearly all. It is brought by Google so you may not have any problems using that.
MUI CSS Framework: This is library that I use for man small projects just because it is the only library that I found having best documentation.
AngularJS Material Design: This is the framework that you might know. Still a lots of bugs around there.
Bootstrap Material Design: Last but not the least, this will be extremely helpful to you if you prefer bootstrap for web designing.
As the things are changing, there might be some other framework very soon to compete with these all.

MonoTouch - cross-platform API abstraction layer?

I understand that with MonoTouch and MonoDroid that you develop against the native UI layer, which is a good thing. However, I was wondering if there were any cross platform Mono API layers for features such as camera, location, storage, notifications etc... ?
PhoneGap supplies a JavaScript a abstraction layer that does just this. Is there a Mono equivalent?
There is an official monomobile api project from xamarin - that provides camera, contacts and gps abstractions, plus there are discussions (but not firm roadmaps) about extending this further. See http://blog.xamarin.com/2011/11/22/introducing-the-xamarin-mobile-api/ for an intro
Beyond that:
some api's exist cross platform from the start - eg isolated storage can be used on all platforms.
I've seen a few other GitHub projects started - eg chrisntr's mono extensions
I've written a few abstractions (e.g. File, gps, camera) in http://GitHub.com/slodge/mvvmcross
I recently came across MonoDroid.Dialog. I have yet to use it, but if it is as easy as MonoTouch.Dialog to do tables then I will be very happy with it.

Which technology for business web application?

I am pondering on building a CRM for consulting business and am looking for best technology to build on. It will be web based with maybe a plugin that integrates with Outlook. What I don't want is to spend a lot of time doing HTML-fu and CSS-fu just to get basic grids, data entries and so on up. I don't mind picking up a new language. Preference goes to FLOSS projects. If it works with Python + 50 points :)
Projects on my mind:
Google's GWT - great ecosystem. Pity that it is in old-fashioned Java, but there's Pyjamas too!
Django - has all the nice widgets for web, but requires maintaining essentially a dual code base - backend language and front-end. Does not work with JS challenged browsers :(
Any suggestions how to quickly build and maintain web based business app are welcome.
My vote is with Adobe Flex. Some high-level advantages of flex:
Browser compatibility: any browser with a flash player will run the site (currently over 90% I believe). No need to fudge with html/css.
Data binding: the flex framework's strongest suit is dynamic scalable data binding.
Server-side technology: Flex can couple with any server-side technology for back-end operations (Java, PHP, RESTful web services, and Coldfusion to name a few)
Open source: flex is open source (however, buying the eclipse-based Flash Builder is usually a good idea)
Customization: every flex component is completely customizable and skinnable. Nice for business apps that do not want to simply look the same as everyone else.
Desktop: Using Adobe AIR Desktop Environment users can interact with the OS.

3D visualization in browser

I am looking for solutions for 3D visualizations in web browsers.
For now I just need to do research about this topic, i.e. I need to know how many solutions exist and which of these are good and why?
Thanks
Brief overview of 3D on the web:
VRML. An HTML-style markup language for 3D models that was supposed to be the amazing cyberspace future of the web, back when we still thought what the web needed to be popular was just to totally change everything about it. We were idiots. VRML is all but dead.
Java. JVMs from 1.3 can run the Java3D engine in applets. With the decline in prevalence of desktop Java I have yet to see this in the wild.
Flash. 3D-primitive support in Flash 10; libraries that hack it in earlier Flash versions, and provide higher-level engine features. (Papervision, Sandy et al.) This is how the majority of in-browser 3D is done today.
CSS. WebKit provides a perspective transform feature to CSS, which has been proposed for standardisation. Won't offer anything like full 3D engine features of course, but the capability to integrate with HTML content in the page is interesting.
O3D. Google's experimental 3D engine browser plugin.
WebGL. Proposed binding of standard OpenGL to JavaScript and HTML5 canvas. Of interest in that you can use it in plain JavaScript with no plugins, but it's pretty low-level. Currently only available in in-development browser snapshots.
Others. There are gaming 3D engines that have been packaged into a plugin, eg. Unity, and a few sundry proprietary-format model viewer plugins.
Open standard webgl,
if you are prepared to download a plugin - lots and lots
Nothing immediately leaps out for maps, a good place to start is opensourcegis,
Unity3D is a game engine that is (relatively) easy to use and builds to multiple platforms including the web (provided you install a plugin).
http://unity3d.com/
X3DOM is plug-in free, supports a lot of X3D (not prototypes) and is written in web browser javascript (where you can do all the prototype stuff you like). Cobweb is an ES6 JavaScript library which supports VRML2 (except collisions last I checked). Cobweb is plug-in free and runs in firefox. Both of these tools are written in WebGL. You may have to convert your event code to X3D. In x3dom, you may have to call x3dom.reload() if you load elements (X3D and Scene) programmatically.

Resources