2010-05-25 00:00:00 +0100 by Alex R. Young

Akshell is a web application hosting service that uses an MVC framework built on V8 JavaScript, PostgreSQL, and
Python. It can be used to build JavaScript applications completely
inside a browser. There's also a command-line
that can ease
Akshell into a traditional local development workflow.

Akshell is attempting to create an ecosystem of apps that can be used to
build larger apps. It's a bit like the unix way of thinking -- creating
simple, almost atomic tools that can be networked together. Despite the
obvious Google App Engine and Heroku comparisons, the consistent push of
this philosophy makes Akshell slightly different.


Akshell uses simple permissions and Spots to facilitate collaboration.
Developers can work on non-release "spots", then the administrator can
deploy. Spots are like branches.

Building Apps

To try Akshell, sign up on the site
then create an application by filling out the fields:

Next, navigate to Code then select main.js in the file editor. Paste
in this code:

require('ak', '0.2').setup();

function fibonacci(n) {
  if (n == 0) return 0;
  if (n == 1) return 1;

  var n1 = 0,
      n2 = 1,
      result = 0,

  for (i = 2; i <= n; ++i) {
    result = n1 + n2;
    n1 = n2;
    n2 = result;

  return result;

var IndexHandler = Handler.subclass({
    get: function (request) {
      var n = request.get.n || 10;
      return render(
        'index.html', {
          header: 'The Fibonacci Sequence',
          count: n,
          result: fibonacci(n)

exports.root = new URLMap(
  IndexHandler, 'index'

This generates Fibonacci numbers. If a get parameter is present, n,
the app will use it to generate numbers from the Fibonacci sequence.

Make sure to save main.js. Navigate to templates then
index.html and paste this into the existing block:

  {{ "{{ header " }}}}
  Fibonacci up to: {{ "{{ count " }}}}
  Result: {{ "{{ result " }}}}

Save, then click the arrow that appears when mousing over the debug
spot and select Release from the menu. The Release spot also has a
menu with Show which will display your app.

Finding Documentation

When I built the small example above, I read through the User Guide
and Reference documents here: Akshell
. Familiarity with
projects like Rails, Sinatra and Express will translate directly into
Akshell's APIs.


Akshell's about page makes it look like Anton Korenyushkin singlehandedly developed the product. If so, he's
clearly a maverick genius. He definitely seems like a programmer's
programmer, which I'm cool with -- Akshell is easy to learn, fast, and
fun to play with. However, that does mean the overall design isn't
kick-ass, and the text on the site could do with some copywriting.

Given these minor limitations, it's also worth being aware that apps
must be released open source under the BSD or MIT licenses. I don't
think this is a massive problem, but it makes me wonder why Akshell's
core isn't open source. If it's just because Anton wants to get feedback
and prepare commercialisation through optionally closed paid apps,
that's OK by me.

Right now, Akshell is off to a promising start. Continued development,
commercialisation, and user interface improvements could make it take
off in a bigger way.