fragments v1.0.0-beta.10
fragments
fragments has beta status. it's been in production use for over a year. things are quite settled now. i aim for release in fall/winter 2015. expect some breakage until then but not much. i won't support any but the newest version.
the documentation in this readme is work in progress and currently unfinished !
fragments structures web applications with (request time) dependency injection
hello-world.js is a minimal fragments app contained
in a single file with only around 50 lines of code.
when called with ./hello-world.js serve
it starts a http server
on the port that is set in the environment variable PORT
.
that server responds to http GET
requests
to path /hello-world
with ContentType
text/plain
and body Hello world
.
it responds with status code 404 Not Found
to all other requests.
var factories = {
server: function(
commonMiddlewarePrelude,
sequenz,
actionHelloWorld,
notFound
) {
return sequenz([
commonMiddlewarePrelude,
actionHelloWorld,
notFound
]);
},
notFound: function(
MIDDLEWARE
) {
return MIDDLEWARE(function(
endNotFound
) {
endNotFound();
});
},
endHelloWorld: function(
end200Text
) {
end200Text('Hello world');
},
actionHelloWorld: function(
GET
) {
return GET('/hello-world', function(
endHelloWorld
) {
endHelloWorld();
})
}
};
// thats it for the application code !
// below is just configuration boilerplate.
// it's needed only once per app.
var fragments = require('fragments');
var hinoki = require('hinoki');
var source = hinoki.source([
factories,
fragments.source,
fragments.umgebung
]);
var source = hinoki.decorateSourceToAlsoLookupWithPrefix(source, 'fragments_');
var app = fragments(source);
app.runCommand();
expect a detailed walkthrough soon.
see the example app as well.
entry point is example/app.
there are integration tests for the example app.
fragments builds on top of hinoki: effective yet simple dependency injection and more for Node.js and browsers
license: MIT
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago