Skip to content

Commit

Permalink
Merge pull request #273 from AxonFramework/move_old_docs_2_library
Browse files Browse the repository at this point in the history
Move old docs 2 library
  • Loading branch information
dgomezg authored Jul 3, 2024
2 parents c341357 + 4a0f8e0 commit bc8d957
Show file tree
Hide file tree
Showing 9 changed files with 521 additions and 5 deletions.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,19 @@ For more information on anything Axon, please visit our website, [http://axoniq.

## Getting started

The [reference guide](https://docs.axoniq.io) contains a separate chapter for all the extensions.
The Reactor extension description can be found [here](https://docs.axoniq.io/reference-guide/extensions/reactor).
The [AxonIQ Library](https://library.axoniq.io) contains a section for the guides of all the Axon Framework extensions.
The Reactor extension guide can be found [here](https://library.axoniq.io/home/guides/axon-framework.html).

## Receiving help

Are you having trouble using the extension?
We'd like to help you out the best we can!
There are a couple of things to consider when you're traversing anything Axon:

* Checking the [reference guide](https://docs.axoniq.io/reference-guide/extensions/reactor) should be your first stop,
as the majority of possible scenarios you might encounter when using Axon should be covered there.
* Checking the [reference guide](https://library.axoniq.io/axon_framework_old_ref/) should be your first stop,
as the majority of possible scenarios you might encounter when using Axon should be covered there.
* If the Reference Guide does not cover a specific topic you would've expected,
we'd appreciate if you could file an [issue](https://github.com/AxonIQ/reference-guide/issues) about it for us.
we'd appreciate if you could post a [new thread/topic on our library fourms describing the problem](https://discuss.axoniq.io/c/26).
* There is a [forum](https://discuss.axoniq.io/) to support you in the case the reference guide did not sufficiently answer your question.
Axon Framework and Server developers will help out on a best effort basis.
Know that any support from contributors on posted question is very much appreciated on the forum.
Expand Down
5 changes: 5 additions & 0 deletions docs/_playbook/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
build
node_modules
.vscode
vale
package-lock.json
24 changes: 24 additions & 0 deletions docs/_playbook/.vale.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
StylesPath = vale

MinAlertLevel = suggestion

Packages = http://github.com/AxonIQ/axoniq-vale-package/releases/latest/download/axoniq-vale-package.zip

Vocab = general, AxonIQ, Java, Names_Terms, misc

[*.{adoc,html}]
BasedOnStyles = AxonIQ, proselint, Google

Google.Headings = NO # Diasable in favor od AxonIQ one
Google.Parens = NO # Disable warning about using parens
Google.Quotes = NO # Diasable "commas and periods go inside quotation marks"
Google.WordList = NO # Disable Google's word list
Google.Passive = NO # Allow the use of Passive voice
Google.Colons = NO # Allow the use of Colons
Google.Will = NO # Allow use will
Google.Contractions = NO
Google.We = NO


AxonIQ.AcronymCase = NO
AxonIQ.HeadingTitle = NO
11 changes: 11 additions & 0 deletions docs/_playbook/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"devDependencies": {
"@antora/atlas-extension": "^1.0.0-alpha.2",
"@antora/cli": "^3.2.0-alpha.2",
"@antora/lunr-extension": "^1.0.0-alpha.8",
"@antora/site-generator": "^3.2.0-alpha.2",
"@asciidoctor/tabs": "^1.0.0-beta.6",
"@axoniq/antora-vale-extension": "^0.1.1",
"asciidoctor-kroki": "^0.17.0"
}
}
42 changes: 42 additions & 0 deletions docs/_playbook/playbook.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
site:
title: Reactor Extension docs PREVIEW
start_page: reactor_extension_old_ref::index.adoc

content:
sources:
- url: ../..
start_paths: ['docs/*', '!docs/_*']

asciidoc:
attributes:
experimental: true
page-pagination: true
kroki-fetch-diagram: true
# primary-site-manifest-url: https://library.axoniq.io/site-manifest.json
extensions:
- asciidoctor-kroki
- '@asciidoctor/tabs'

antora:
extensions:
- id: prose-linting
require: '@axoniq/antora-vale-extension'
enabled: true
vale_config: .vale.ini
update_styles: true
- id: lunr
require: '@antora/lunr-extension'
enabled: true
index_latest_only: true
- id: atlas
require: '@antora/atlas-extension'

runtime:
fetch: true # fetch remote repos
log:
level: info
failure_level: error

ui:
bundle:
url: https://github.com/AxonIQ/axoniq-library-ui/releases/download/v.0.1.10/ui-bundle.zip
14 changes: 14 additions & 0 deletions docs/old-reference-guide/antora.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: reactor_extension_old_ref
title: Reactor Extension Guide
version: true
prerelease: true
start_page: ROOT:index.adoc

asciidoc:
attributes:
component_description: The Reactor Extension guide from the former reference guide
type: guide
group: axon-framework

nav:
- modules/nav.adoc
14 changes: 14 additions & 0 deletions docs/old-reference-guide/modules/ROOT/pages/index.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
:navtitle: Reactor Extension
= Reactor

Overlooking Axon Frameworks architecture, you can notice that in general systems using the framework are "Message Driven", "Responsive", "Resilient" and "Elastic". According to link:https://www.reactivemanifesto.org/[Reactive Manifesto,window=_blank,role=external], the same holds for Reactive Systems in general.

Although we can state that Axon Framework is a type of reactive system, we can't say that it is fully reactive.

NOTE: Reactive programming is an approach to writing software that embraces asynchronous I/O. Asynchronous I/O is a small idea that portends big changes for software. The idea is simple: alleviate inefficient resource utilization by reclaiming resources that would otherwise be idle, as they waited for I/O activity. Asynchronous I/O inverts the normal design I/O processing: the clients are notified of new data instead of asking for it, which frees the client to do other work while waiting for these notifications.

By their nature, a reactive API and Axon are a great fit, as most of framework's operations are async and non-blocking. Providing a dedicated extension for this was thus a logical step to take. To that end, we chose to use Pivotal’s link:https://projectreactor.io/[Project Reactor,window=_blank,role=external] to build this extension. Reactor builds on top of the link:https://www.reactive-streams.org/[Reactive Streams specification,window=_blank,role=external] and is the de-facto standard for Java enterprise and Spring applications. As such, we feel it to be a great fit to provide an extension in, making Axon more reactive.

NOTE: Not all Axon components offer a reactive API, yet. We will incrementally introduce more "reactiveness" to this extension, giving priority to components where users can benefit the most.

To use the link:https://github.com/AxonFramework/extension-reactor[Axon Reactor Extension,window=_blank,role=external], make sure that `axon-reactor` module is available on the classpath.
Loading

0 comments on commit bc8d957

Please sign in to comment.