Skip to content
This repository
branch: dev

This branch is 2 commits ahead and 8 commits behind master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 base
Octocat-spinner-32 collections
Octocat-spinner-32 logging
Octocat-spinner-32 testing
Octocat-spinner-32 webapp


Coffeemint is a micro-framework that offers a diverse range of utilities and functionalities to facilitate the development of a wide range of types of applications that are written in JavaScript and CoffeeScript.

One of the main goals that Coffeemint strives to achieve is to eliminate the barriers between application developments on various platforms, by providing a rich set of functionalities through the same interfaces that can be used on the backend side, in web browsers and mobile platforms that support JavaScript runtimes.

The majority of the functionalities provided by Coffeemint for the current version are meant to be run on server sides (i.e. MVC application framework under webapp/), and much of that are depended on Node.js. Other parts of the framework, for example, containers under collections/, can generally be used on any platforms regardless of the presence of Node.js or other dependencies. In future versions, the boundaries between platforms and dependencies will be more distinct and compatibilities with existing JavaScript frameworks on different platforms will continue to improve and converge.

Coffeemint was designed and written following a more object-oriented approach compared to other JavaScript libraries and frameworks. While this approach does have its pros and cons, it will make continuous improvements and extensions of the framework easier.


The structure of the framework is illustrated below.

Click on each link to view more detailed documentations.

  • coffeemint
    • \- base # basic utilities
    • \- testing # assertions and unit testing
    • \- collections # general containers
    • \- logging # logging utilities
    • \- webapp # server-side MVC application
Something went wrong with that request. Please try again.