Skip to content

semprebon/NimbuslyMiniWiki

Repository files navigation

Overview

MiniWiki is a very simple wiki designed for mobile access. It is a demonstration project I developed to
learn a bit more about the technologies involved.

Architecture

Unlike a traditional web application where html pages are dynamically assembled server side, MiniWiki uses a client/server architecture where the client side does all the heavy lifting, and the server just serves up either static files, or acts as a simple json database.

MiniWiki architecture includes:

  • HTML Local Storage
  • coffeescript for client side code
  • Pure Javascript view generation (all pages are plain html, with all interaction done via Javascript/AJAX)
  • JSON-only RESTful server (implemented in Python on Google App Engine)
  • Offline operation and synchronization

This architecture, where the server serves up only static content (HTML, JavaScript, CSS) and simple REST-based
database calls, is, I think, where the future of web development is. As Javascript engines get faster, it no
longer makes sense to laboriously build up pages on the server. For one thing, if a javascript client is
handling things, you basically don’t have to build a separate API for your application, since the API is
what you are using. Also, it should be easier to create mobile apps, either native (using the API) or web-based (customizing the existing Javascript client or css as needed).

The app itself implements two basic models, a Wiki, identified by a URL, and Articles within the Wiki.

Example

You can try the app here

To create a new Wiki, send an http PUT request to http://nimbusly-miniwiki.appspot.com//article

If you then GET http://nimbusly-miniwiki.appspot.com/, you will see the wiki

License

Nimbusly MiniWiki Copywrite 2011 Andrew Semprebon

Nimbusly Dice Roller is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Nimbusly Dice Roller is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Nimbusly Dice Roller. If not, see <http://www.gnu.org/licenses/>.

About

Getto Wiki for Mobile Devices

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published