Posts

Showing posts from October, 2010

Publishing Flash Apps and Games to the Chrome Web Store

Any web app that runs inside of Chrome can be published to the Chrome Web Store, and this means Flash apps are more than welcome to the party. The Chrome Web Store, launching before the end of 2010, is a publishing, distribution, and monetization marketplace for web apps. We welcome great Flash apps and games to publish and sell via the store.

This post is a Quick Start guide for getting your Flash apps into the store in the quickest was possible. Give us 20 minutes and you'll have your Flash app in the Chrome Web Store.

(Don't have a Flash app, just have an HTML or HTML5 web app? We have a Quick Start Guide for Publishing HTML5 Web Apps into the Chrome Web Store as well.)

Assumptions
You have a Flash .swf file ready to go.You have a Google account.Don't have one?  Go get one, it doesn't even have to be a GMail account.You have a credit card handy or you have a credit card added to your Google Checkout account.Two ways to do this
Sorry, I know you want to get to the g…

Publishing your Web App to the Chrome Web Store Screencast

Image
A quick screencast showing how easy it is to publishing your web app into the Chrome Web Store. You may also be interested in the Chrome Web Store Quick-start.

Ruby, OAuth, and Chrome Web Store

The Chrome Web Store, launching by the end of 2010, integrates a streamlined payment system, powered by Google Checkout. Your apps can opt-in to use this payment system for quick and easy payments. You can check if a user has paid for the application with a call to the Chrome Web Store License API.

The License API is a REST service which returns a simple JSON format, indicating if a user (identified by a Google Federated OpenID URL) can access your web app.

For Ruby developers, a new OAuth library, Signet, has recently been released which makes signing your OAuth request to the License API very easy.

The first step is to publish a paid web app to the Chrome Web Store. I've written a Quick Start Guide for the Chrome Web Store that will make this fast and easy. Once you configure your app as paid, either via a one time payment or a monthly or yearly subscription, you will be provided with an OAuth Token and Token Secret.

The second step is to install the Signet gem, as simple as…

Rails, Ruby, Rack, and Google OpenID via OmniAuth

A great new OpenID library for Ruby web apps (Rails, Sinatra, Rack, etc) has recently hit the scene.  The OmniAuth library supports a plethora of authentication systems, including Twitter, Facebook, Google Apps, and OpenID.  OmniAuth is Rack based, and it's easy to slip right into your web app.

While it does support OpenID, OmniAuth requires just a bit of manual configuration to support Google's OpenID endpoint.

You can use Google OpenID with OmniAuth and your Rails 3 web app:

For your Gemfile:

gem 'omniauth'

For your config/initializers/omniauth.rb:

Rails.application.config.middleware.use OmniAuth::Builder do provider :openid, nil, :name => 'google', :identifier => 'https://www.google.com/accounts/o8/id' end
What's up with the nil? That tells the OpenID gem to use the memory store, which is the default. You can use any OpenID Store that you wish (complete list of OpenID stores).

Direct your users to /auth/google

For the rest of the opti…

Proposal to enhance HTML5 App Cache for Better Performance

Disclaimer: this is a very initial idea, comments most welcome.

Background
The HTML5 Application Cache is a mechanism which allows a web app to operate offline.  A web app may create an App Cache manifest file which declares a set of static resources, such as images, stylesheets, scripts, etc.  These resources are then cached locally by the user agent (eg a browser) and are not updated nor retrieved from the web server until the App Cache manifest file itself is updated.  Learn more about the basics of the App Cache.  The App Cache allows for web apps to operate even when not connected to the internet, and web apps can start quicker as they can pull assets from local cache instead of the original web server.


An example App Cache manifest:






CACHE MANIFEST index.html stylesheet.css images/logo.png scripts/main.js
Problem


While the App Cache mechanism is generally helpful for the web and its users, there is still one scenario that is less than ideal.  When the App Cache manifest file is updated…