What is Cape.JS?
Cape.JS is a lightweight JavaScript UI framework with following features:
- Full stack: You can build single-page applications (SPAs) with Cape.JS.
- Modular: You can place web widgets built by Cape.JS to your static web sites.
- Virtual DOM: Cape.JS takes advantage of virtual-dom of Matt-Esch for high performance rendering.
- Markup builder: The markup builder helps you to construct HTML DOM trees with its simple, easy to learn syntax.
- Form manipulation: You can get or set the value of form fields without jQuery .
- Data stores: Using data stores, you can build web applications with unidirectional data flow.
- Resource agents and collection agents: Using resource agents and/or collection agents, you can perform REST requests to the web resources using Fetch API .
- Router: You can define routes with a DSL (domain specific language) similar to that of Ruby on Rails.
The architecture and terminology of Cape.JS are strongly influenced by React , Riot and Ruby on Rails .
Installation
If you just want to use Cape.JS in your web site, insert the following snippet
to the <head>
section of your HTML files.
<script src="//cdn.rawgit.com/capejs/capejs/v1.5.1/dist/cape.min.js"></script>
You can get the package for npm with following command:
$ npm install capejs
You can get the package for bower with following command:
$ bower install capejs
Notes on the Promise and Fetch API
In order to take advantage of the full capabilities of Cape.JS, you may have to install pollyfills for the Promise and Fetch API , because these technologies are only supported by some modern browsers (Firefox and Chrome).
If you want to support Microsoft Edge, Internet Explorer and Safari,
you need to include these pollyfills into your application
by adding the following lines to the <head>
section of your HTML files.
<script src="//cdnjs.cloudflare.com/ajax/libs/es6-promise/3.2.2/es6-promise.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/fetch/1.0.0/fetch.min.js"></script>
FAQ
Is it “Cape.JS”, “CapeJS”, or “capejs”?
The official name is Cape.JS. Its package name for npm and bower is capejs (without the dot).
At the very initial phase of development, we called it “CapeJS”, but we don’t use it anymore.
Is it production ready?
Yes, it is. We adopt Semantic Versioning for Cape.JS, and we have released the version 1.0.0.
Which browsers are supported?
We test Cape.JS on Microsoft Edge, Internet Explorer 11, Safari (7.1+) and the latest versions of Chrome and Firefox.
Note that we have no plan to support the Internet Explorer 8, 9, and 10.
How can I contribute?
The Cape.JS is an open source project. Everyone can help. See CONTRIBUTING.md for details.
Acknowledgements
The logo of Cape.JS is created by Junya Suzuki .
Trademarks
“Cape.JS” and its logo are trademarks of Oiax Inc. All rights reserved.
License
Cape.JS is released under the MIT License .