https://github.com/skylarkjs/skylark
An unified framework for building modern html5 applications across web and desktop.
https://github.com/skylarkjs/skylark
cross-web-and-desktop framework frontend html5 javascript single-page-app skylark skylarkjs slax
Last synced: about 1 month ago
JSON representation
An unified framework for building modern html5 applications across web and desktop.
- Host: GitHub
- URL: https://github.com/skylarkjs/skylark
- Owner: skylarkjs
- License: mit
- Created: 2017-08-26T11:45:04.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-08-14T22:02:55.000Z (over 1 year ago)
- Last Synced: 2026-02-03T02:17:51.447Z (about 2 months ago)
- Topics: cross-web-and-desktop, framework, frontend, html5, javascript, single-page-app, skylark, skylarkjs, slax
- Language: JavaScript
- Homepage: http://www.skylarkjs.org
- Size: 6.04 MB
- Stars: 24
- Watchers: 2
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# skylark.js
An unified framework for building modern html5 applications across web and desktop. http://www.skylarkjs.org
## Introduction
Skylark.js is an unified framework for building modern html5 applications across web and desktop, including the runtime library and many development tools.
### summary
- Concise
Skylark.js framework is very simple and powerful, the code is only 7k (core library,gzip) or 22k (including a powerful utility library), and easy to read and easy to debug.
- Anywhere
Skyalrk.js application is archived a single .slax file. The slax archive can be deployed to web server, and you can also run it directly on the local desktop.
- Integratable
Skylark.js core framework focus functional structure of an application, easy to integrate with jquery, backbone, vue, react and other popular UI framework.
- Unified
Skylark.js is easy to unify other framework resources. Using skylark-jquery, jquery plugins and applications can run directly on skylarkjs without jquery.
In addition, there are skylark-backbone, skylark-vue (in developping) and so on.
- Configable
All constituent elements of the application (such as paths, plugins, dependents, and so on) are configed in slax-config.json file.
- Modular
Highly modular with very little opinion of how things should be done, removing bloat and unecessary overhead.
### browser compatibility
Skylark.js supports all browsers that are ES5-compliant (IE8 and below are not supported).
## Ecosystem
| Project | Description | Integration |
|---------|--------|-------------|
| [skylark-langx](https://github.com/skylarkjs/skylark-langx) | javaScript language extension library| built-in on skylarkjs runtime|
| [skylark-router](https://github.com/skylarkjs/skylark-router) |frontend routing framework| built-in on skylarkjs runtime|
| [skylark-spa](https://github.com/skylarkjs/skylark-spa) |html5 single page application framework| built-in on skylarkjs runtime|
| [skylark-utils](https://github.com/skylarkjs/skylark-utils) |javascript dom utility library| built-in on skylarkjs runtime(full build version)|
| [skylark-slax-browser](https://github.com/skylarkjs/skylark-slax-browser)|official desktop browser for running skylark slax application|built-in on skylarkjs development tools|
| [skylark-slax-nodeserver](https://github.com/skylarkjs/skylark-slax-nodeserver)|official node server for running the skylark slax application|built-in on skylarkjs development tools|
| [skylark-jquery](https://github.com/skylarkjs/skylark-jquery)|an extension library fully compatible with jquery api|optional, installed by the developer as needed|
| [skylark-backbone](https://github.com/skylarkjs/skylark-backbone)|an extension library fully compatible with backbone api|optional, installed by the developer as needed|
## Runtime
### architecture

### different builds
| | build | Description |
|---------|--------|-------------|
| full | skylarkjs.js | included skylark-utils |
| core | skylarkjs-core.js | not included skylark-utils |
| full (development) | uncompressed/skylarkjs.js | included skylark-utils |
| core (development)| uncompressed/skylarkjs-core.js | not included skylark-utils |
### installation
There are multiple ways to install the skylark-router library.
- cdn
http://registry.skylarkjs.org/packages/skylarkjs/v0.9.6/skylarkjs.js or
http://registry.skylarkjs.org/packages/skylarkjs/v0.9.6/uncompressed/skylarkjs.js
- bower
bower install skylarkjs
- skylark.js development tool
### usage
- Using the skylarkjs library for a AMD module.
```js
require(["skylarkjs"],funciton(skylarkjs){
skylarkjs.xxx();
});
```
## Developping
### installation
Skylark.js sdk is released as npm package, so first make sure the nodejs and npm have been installed.
```js
npm install skylarkjs -g
```
China:
```js
ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/ npm install skylarkjs -g --verbose
```
### quick start
- enter into the workspace root directory
- create skylark slax application skeleton
```js
sjs create slaxApp1 --routes home:/,view1:/view1,view2:/view2
```
- build application
```js
npm run build
```
- deploy application
```js
npm run deploy
```
- run the application as desktop application
```js
npm run browse
```

- start server to run the slax application
```js
npm run serve
```

## Documentation
- [Guide](http://skylarkjs.org/guide)
- [API](http://skylarkjs.org/api)
## Stay In Touch
- [Twitter](https://twitter.com/jsskylark)
- QQ
418640032
## Bugs and feature requests
Have a bug or a feature request? Please first search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/skylarkjs/skylark/issues/new).
## License
The code is released under the [MIT License](https://github.com/skylarkjs/skylark/blob/master/LICENSE).