node package manager
Loosely couple your services. Use Orgs to version and reuse your code. Create a free org »

miniwiki

miniwiki v0.1.0

Mini-Wikipedia API and Website

Features

  • Written in CoffeeScript for Node.js
  • Clusters enable utilization of all cores
  • Promises avoid blocking while recursively calculating fibonacci(34)
  • Cassandra used as persistent storage via DataStax driver
  • HTML Page caching using Jade templates
  • Docker containerizes apps for portability

Roadmap

  • Will implement Closure Compiler to compile CoffeeScript into minified JavaScript for efficiency and speed
  • Will implement Nginx for load balancing between servers and clusters
  • Will implement apicache for caching API responses
  • Will implement Kafka to handle caching when updating articles
  • Will implement Unit and Benchmark Testing via Mocha and StrongLoop

Prerequisites

Installation

Use npm to install miniwiki:

npm install miniwiki

Running

Run from miniwiki directory:

docker build .

Usage

miniwiki is made up of 2 apps: api and web. Each has its own endpoints:

Retrieving Latest_plane_crash article from Web:

curl http://127.0.0.1:8000/wiki/Latest_plane_crash

Updating Latest_plane_crash article from API:

curl --request PATCH http://127.0.0.1:3000/v1/articles/Latest_plane_crash?summary=Latest+plane+crashes