Package Exports
- @hapiness/core
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@hapiness/core) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Web and services application framework
Hapiness is a web framework based on HapiJS and enhanced with Dependency Injection, strong modularisation and decorators.
It provides a real enhancement for building web servers and it enables to build modules, services, etc. quickly.
It has a stable and tested dependency injection system thanks to Angular.
Better development experience with typings, maintainability, improvement of productivity and a common project structure.
Everything in a single uniform framework.
Table of contents
- Technologies
- Using Hapiness to create a web server and services
- Contributing
- Change History
- Maintainers
- License
Technologies
- HapiJS
Hapi
enables developers to focus on writing reusable application logic instead of spending time building infrastructure.
- Joi
- Object schema description language and validator for JavaScript objects.
- Boom
- HTTP-friendly error objects
- Good
Good
is aHapi
plugin to monitor and report on a variety ofHapi
server events as well as ops information from the host machine.
- Typescript
TypeScript
is a typed superset of JavaScript that compiles to plain JavaScript.
- RxJS
RxJS
is a set of libraries for composing asynchronous and event-based programs using observable sequences and fluent query operators.
All those technologies are Typescript
ready. It will help to build web servers and maintain them easier.
Using Hapiness to create a web server and services
yarn
or npm
it in your package.json
$ npm install --save @hapiness/core rxjs
or
$ yarn add @hapiness/core rxjs
"dependencies": {
"@hapiness/core": "^1.5.0",
//...
}
//...
Use Hapiness API
Actually, we're in : v1.5.0
See API Reference to know what's already implemented.
Contributing
To set up your development environment:
- clone the repo to your workspace,
- in the shell
cd
to the main folder, - hit
npm or yarn install
, - run
npm or yarn run test
.- It will lint the code and execute all tests.
- The test coverage report can be viewed from
./coverage/lcov-report/index.html
.
Change History
- v1.6.0 (2018-11-27)
- Request in DI: Add request reference inside route DI
- v1.5.5 (2018-10-15)
- Boostrap fix: Exit the process if it fails
- v1.5.4 (2018-06-19)
- WebSocketServer: add sec-websocket-protocol in response
- v1.5.3 (2018-05-29)
- HttpRequestInfo types
- Add credentials
- v1.5.2 (2018-05-09)
- Shutdown all extensions if one failed in bootstrap
- v1.5.1 (2018-04-06)
- Allow to import many time the same modules if it has no routes inside
- v1.5.0 (2018-03-27)
- EventManager Extension
- Documentation
- v1.4.0 (2018-03-26)
- Extensions: add timeout
- Extensions: shutdown
- Latest packages' versions
- Documentation
- v1.3.1 (2018-02-27)
- Keep request in the Socket instance
- Update dependencies
- v1.3.0 (2017-11-30)
- Option that allow WS Server Ext to share Http Server Ext port
- Handle HapiJS connections system to listen multiple ports
- Documentation
- v1.2.2 (2017-11-20)
- Export
createDecorator()
,extractMetadata()
,extractMetadataByDecorator
,errorHandler()
methods andDependencyInjection
class - Documentation
- Export
- v1.2.0 (2017-11-18)
- Http Handler, Observable can set headers
- Use
injection-js
fromnpm
- Change build system
- Latest packages' versions
- Fix tests related to latest
mocha
version - Documentation
- v1.1.1 (2017-10-22)
- Build in
commonjs
- Latest packages' versions
- Documentation
- Build in
- v1.1.0 (2017-10-16)
Websocket
Server: Secure configuration- Documentation
- v1.0.0 (2017-10-05)
- Publish all features of API
- First stable version
Maintainers
Julien Fauville | Antoine Gomez | Sébastien Ritz | Nicolas Jessel | Tara Lerias |
License
Copyright (c) 2017 Hapiness Licensed under the MIT license.