包详细信息

baboon

litixsoft76MIT0.6.1

Baboon Web Toolkit, modular fullstack web application framework for single-page realtime apps.

single-page, realtime app, web application framework, web toolkit

自述文件

baboon

baboon

Baboon Web Toolkit, modular fullstack web application framework for single-page realtime apps.

NPM version Build Status david-dm

Baboon is an open source web toolkit for creating Single Page Real-time applications. It combines tools, libraries, own developments as well as existing frameworks into a complete, ready for immediate use toolkit. It covers all activities necessary for the development process for the creation of a single page real-time applications.

Baboon takes care of the complete setup of an immediately usable architecture for SPAs and also provides the basic functionality of the application. In addition to simple things like LESS-based design, it also includes the complete implementation of a websocket transport for the real-time communication inside the application. Last but not least the availability of many modules makes Baboon a full SPA-framework. All that is left to you is taking care of your business logic - the rest is done by Baboon.

Install

The installation of a Baboon project is very simple. However, some preparatory work is needed.

System requirements

Baboon need only NodeJS on the respective system. In production mode on server with activated rights system following stack is desirable:

  • MongoDb 3.X.X or newer
  • NodeJs 6.X.X

Such a stack including NodeJS version management, RedisIO, MongoDb and other tools can be found here: the baboon-stack covers an easy-to-use one-click setup for Windows, Linux and Mac. The baboon-stack is suitable with the NodeJS version management also ideal for development.

NodeJS global dependencies

Without using baboon-stack, you need install Baboon's global dependencies. Skip this section when using Baboon-stack.

Linux / Mac:

$ sudo npm install -g karma bower grunt-cli yo generator-baboon

Windows:

$ npm install -g karma bower grunt-cli yo generator-baboon

Create and start your baboon project

You can simply create a Baboon project with a yeoman generator-baboon and start with grunt serve. The application starts in development mode with live reload functionality that monitors the directories for any changes. If changes are detected, a new build is created, the server is restarted if necessary, and the browser is updated.

$ mkdir my-new-project && cd $_
$ yo baboon [app-name]
$ grunt serve

Look out for more information in the sample application or check out the documentations on our web site.

Contributing

Instead of us handing out a formal style guide, simply stick to the existing programming style. Please create descriptive commit messages. We use a git hook to validate the commit messages against these rules. Easily expand Baboon with your own extensions or changes in the functionality of Baboon itself. Use this workflow:

  1. Write your functionality
  2. Write unit tests for your functionality
  3. Create an example of your functionality in the sample application (optional)
  4. Document your functionality in the documentation section of example app
  5. Write unit tests for the example
  6. Add end to end tests for the example
  7. All tests should be successful
  8. Check your test coverage (90 - 100%)
  9. Make a pull request

We will check the tests, the example and test coverage. In case your changes are useful and well tested, we will merge your requests.

Building and Testing Baboon

This section describes how to set up your development environment to build and test Baboon with the example app.

Author

Litixsoft GmbH

License

Copyright (C) 2013-2017 Litixsoft GmbH info@litixsoft.de Licensed under the MIT license.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. DEALINGS IN THE SOFTWARE.

更新日志

0.6.1 (2017-12-06)

Bug Fixes

  • Electron (Default) App Issue (df013c1)
  • node 6.x.x crypto deprecated message; baboon required now nodejs 6.x.x (61d0df6)

0.4.26 (2015-09-28)

Features

0.4.25 (2015-09-21)

Bug Fixes

  • session: change import of cookie-parser (6e6f20e)

0.4.24 (2015-07-21)

Features

0.4.23 (2015-07-17)

Features

  • add functionality to enable save Application Data in Users Homedir (124819cc)

0.4.22 (2015-07-02)

Features

  • add callback to baboon.appListen() (124819cc)

0.4.21 (2015-02-10)

Bug Fixes

  • auth: send json result when user successfully logged in (8b02d7d9)
  • transport: send json result when user has no access (243bbbe6)

0.4.20 (2014-12-08)

Features

  • add message property to ValidationError (5d48ea4f)

0.4.19 (2014-10-16)

Bug Fixes

  • do not use sslv2/sslv3 (03718e2a)
  • app crash when user was created in admin section without password (c4370105)

0.4.18 (2014-10-02)

0.4.17 (2014-10-01)

0.4.16 (2014-09-26)

Bug Fixes

  • bump mongodb to 1.4.15 since 1.4.14 contain bugs (d9acd849)

0.4.15 (2014-09-24)

Features

  • setting: add function getUserSetting() to get a single user setting by key (952f7271)

0.4.14 (2014-09-18)

Bug Fixes

  • require of 'crypto' and 'logging' in baboon changed, tests adapted (efa00b26)

0.4.13 (2014-09-16)

Bug Fixes

0.4.12 (2014-08-26)

Bug Fixes

  • update .gitignore and .npmignore to reduce size of module when installing it (4850372d)

0.4.11 (2014-08-25)

Features

0.4.10 (2014-08-25)

Features

  • replace cli-color with chalk (144b73be)

0.4.9 (2014-08-13)

Bug Fixes

  • change field token in schema of user repository to be null or string (3ba6041e)

0.4.8 (2014-07-23)

Features

  • do not create user admin by default when running grunt setup (0942135f)
  • update dependencies (857c762d)

0.4.7 (2014-07-16)

Bug Fixes

  • move grunt to dependencies so that baboon will work in production mode (npm inst (4df32e99)

0.4.6 (2014-07-16)

Bug Fixes

  • app now does not load unnecessary modules when rights system is disabled (82f35480)
  • do not load account and auth modules when rights system is disabled (83b7d35c)
  • account: input fields when changing password are now of type password (b49732ed)
  • config: add fallback to os temp folder when user has no user folder (fa1c603d)

0.4.5 (2014-07-11)

Features

  • switch from ngmin to ng-annotate (2c1329ad)
  • update setup script in example app (ee07be44)
  • account: user can now change his password (1e057635)

0.4.4 (2014-07-08)

Bug Fixes

  • correct path of ssl cert files (e79afa09)

Features

  • prepare expressjs plugins for next release (fix deprecated messages) (61215673)
  • update dependencies (43adf010)

0.4.3 (2014-06-19)

Features

  • change location of routes.js files. (77b74c1b)

Breaking Changes

  • The routes.js files, which contains all server routes for a toplevel app, are now moved from the folder client/app/[appname] to server/modules/[appname] (77b74c1b)

0.4.2 (2014-06-18)

Bug Fixes

  • angular-ui bootstrap dropdowns now work correctly (7e656a5f)

Features

0.4.1 (2014-06-13)

Features

Release History

v0.4.0