wolkenkit
wolkenkit is an open-source CQRS and event-sourcing framework for JavaScript and Node.js that perfectly matches DDD.
wolkenkit is a CQRS and event-sourcing framework for JavaScript and Node.js. wolkenkit uses an event-driven model based on DDD to setup an API for your business in no time. This way, wolkenkit bridges the language gap between your domain and technology.
Table of contents
Installation
$ npm install -g wolkenkit
Quick start
First, have a look at the documentation, and its getting started guides. You should also learn about why to use wolkenkit.
There is a variety of blog posts and articles that help you get started. Also, you are welcome to join us on Slack, and have a look at the previously asked questions at Stack Overflow.
If you are curious on what's next, have a look at the roadmap.
Sample applications
There are a number of sample applications available:
- wolkenkit-boards is a team collaboration application.
- wolkenkit-geocaching is a geocaching application.
- wolkenkit-nevercompletedgame is a mystery game.
- wolkenkit-template-chat is a simple messaging application.
- wolkenkit-todomvc is a todo list application.
Getting help
If you need any help with wolkenkit, consider the following options. Also, you are welcome to join us on Slack.
Reporting an issue
If you have found an issue please first have a look at the previously reported issues to verify whether the issue has already been reported.
If not, report a new issue and provide any steps required to reproduce the issue, as well as the expected and the actual result. Additionally provide the versions of wolkenkit and Docker, and the type and architecture of the operating system you are using.
Ideally you can also include a short but complete code sample to reproduce the issue. Anyway, depending on the issue, we know that this is not always possible.
Although wolkenkit is developed using multiple repositories, please report any issues to the thenativeweb/wolkenkit repository, as this is the primary contact point.
Asking a question
If you want to ask a question please first have a look at the previously asked questions at Stack Overflow to verify whether your question has already been asked.
If not, ask a new question and tag it with wolkenkit
.
Getting support
If you need help by the original authors of wolkenkit, e.g. to address issues specific to your environment or project, you may be interested in a paid support plan. For that, feel free to contact the native web.
Finding the code
Since wolkenkit is a distributed application, its code is spread across various repositories. For an overview of the architecture and a list of the repositories, see the wolkenkit documentation.
Additionally, you may want to have a look at these repositories that contain the most important supporting modules:
Running the build
To build this module use roboter.
$ npx roboter
Additionally to the unit tests, there are so-called story tests. To run them, use the following command:
$ npx roboter test-stories
FAQ
Why do I get an Error loading extension section V3_ca message when running the story tests?
If you get the error Error loading extension section V3_ca when running the story tests, you have to edit your local OpenSSL configuration. You can find the configuration at /private/etc/ssl/openssl.cnf
. In this file you have to add the following lines:
[ v3_ca ]
basicConstraints = critical,CA:TRUE
License
Copyright (c) 2014-2018 the native web.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see GNU Licenses.