jekyll-theme-endless 0.20.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/jekyll-theme-endless/version.rb +1 -1
- data/pages_examples/showroom-asciidoc.adoc +511 -62
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da9e8d00d36b95d47ff769418db0639bea2afe705d243e13479950bd71a14f1d
|
4
|
+
data.tar.gz: 85b1892b611410592eac1342cab6f7d4e220b1783e77cc2144c5002325bdd90b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d8329f8520f988b8bd17eb09dcd60317562a578502dfe718aa36916707727b9d007f245fba0020edfa20879176dad6f3f3f789fafff000a6796ade45934fd9df
|
7
|
+
data.tar.gz: 8554d4b79fea958c877dbd9b5ec741d060de7ddf4876fcc00fe618da8b6a5fc0b9afb5964311dd7756b04b64b53606d06c83a809f328946c24466324b04556ba
|
@@ -568,12 +568,55 @@ This makes them *ideal for automated workflows* and consistent documentation acr
|
|
568
568
|
Asciidoctor Diagram supports a https://docs.asciidoctor.org/diagram-extension/latest/[wide range of text-based diagram types]
|
569
569
|
making it a versatile choice for creating diagrams directly within documentation.
|
570
570
|
|
571
|
+
The Docker image provided by jekyll-theme-endless currently ships with the software preinstalled to support the following diagram types:
|
572
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/a2s/[ASCIIToSVG],
|
573
|
+
// BlockDiag (
|
574
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/actdiag/[ActDiag],
|
575
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/blockdiag/[BlockDiag],
|
576
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/nwdiag/[NwDiag / RackDiag / PacketDiag],
|
577
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/seqdiag/[SeqDiag]
|
578
|
+
// ),
|
579
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/bytefield/[Bytefield-SVG],
|
580
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/dbml/[DBML],
|
581
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/ditaa/[Ditaa],
|
582
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/dpic/[Dpic],
|
583
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/erd/[Erd],
|
584
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/gnuplot/[Gnuplot],
|
585
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/graphviz/[Graphviz],
|
586
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/lilypond/[LilyPond],
|
587
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/mermaid/[Mermaid],
|
588
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/msc/[MscGen],
|
589
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/nomnoml/[Nomnoml],
|
590
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/penrose/[Penrose],
|
591
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/pikchr/[Pikchr],
|
592
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/pintora/[Pintora],
|
593
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/plantuml/[PlantUML],
|
594
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/shaape/[Shaape],
|
595
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/smcat/[State Machine Cat],
|
596
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/structurizr/[Structurizr],
|
597
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/svgbob/[SvgBob],
|
598
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/symbolator/[Symbolator],
|
599
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/syntrax/[Syntrax / JSyntrax],
|
600
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/umlet/[UMLet],
|
601
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/vega/[Vega / Vega-Lite],
|
602
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/wavedrom/[WaveDrom],
|
603
|
+
//
|
604
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/barcode/[Barcodes and QR codes],
|
605
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/bpmn/[BPMN],
|
606
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/d2/[D2],
|
607
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/diagrams/[Diagrams],
|
608
|
+
// https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/meme/[Meme],
|
609
|
+
https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/tikz/[TikZ].
|
610
|
+
|
611
|
+
|
612
|
+
|
571
613
|
|
572
614
|
|
573
615
|
=== Ditaa
|
574
616
|
|
575
617
|
Ideal for converting ASCII art into diagrams, especially useful for quick sketches and block diagrams.
|
576
618
|
|
619
|
+
|
577
620
|
.Example of a Ditaa diagram illustrating the flow of processing in Asciidoctor Diagram, where a text document is converted through Asciidoctor with Ditaa to produce a PNG output, showcasing the transformation from plain text to visually structured output.
|
578
621
|
[ditaa,, svg]
|
579
622
|
....
|
@@ -619,68 +662,88 @@ This is a unique feature of Ditaa.
|
|
619
662
|
|
620
663
|
|
621
664
|
|
622
|
-
=== PlantUML
|
623
665
|
|
624
|
-
Great for creating UML diagrams like class diagrams, sequence diagrams, and activity diagrams.
|
625
666
|
|
626
|
-
|
627
|
-
|
667
|
+
[[dpic]]
|
668
|
+
=== Dpic
|
669
|
+
Dpic is an implementation of the https://en.wikipedia.org/wiki/PIC_(markup_language)[Pic-DSL] (Pic Domain-Specific Language) and is especially well-suited for generating precise diagrams, graphs, and technical illustrations directly from text-based descriptions.
|
670
|
+
|
671
|
+
.This diagram demonstrates a polar coordinate system rendered with the Pic graphics language.
|
672
|
+
[dpic,, svg]
|
628
673
|
....
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
class PlantUmlBlock
|
674
|
+
# Polar coordinate system with variables for better maintainability
|
675
|
+
# Degrees-to-radians conversion factor (π/180)
|
676
|
+
dtor = atan2(0,-1)/180
|
633
677
|
|
634
|
-
|
635
|
-
|
636
|
-
|
678
|
+
# Axis length (10% longer than unit circle radius)
|
679
|
+
axis_len = 1 + 0.2
|
680
|
+
|
681
|
+
# Scaling factor for radial lines and axes
|
682
|
+
sf = 1.5
|
683
|
+
|
684
|
+
# Concentric circles
|
685
|
+
circle at (0,0) radius sf*1.0 colored "lightblue"
|
686
|
+
circle at (0,0) radius sf*0.5
|
687
|
+
|
688
|
+
# Radial lines (every 5 degrees)
|
689
|
+
for d = 0 to 360 by 5 do {
|
690
|
+
# Radial line length (scaled by sf)
|
691
|
+
rf = d / 360 * sf
|
692
|
+
line from (0,0) to (rf*cos(d*dtor), rf*sin(d*dtor))
|
693
|
+
}
|
694
|
+
|
695
|
+
# "X"-axis (scaled by sf)
|
696
|
+
line from (-axis_len*sf, 0) to (axis_len*sf, 0)
|
697
|
+
|
698
|
+
# "Y"-axis (scaled by sf)
|
699
|
+
line from (0, -axis_len*sf) to (0, axis_len*sf)
|
700
|
+
|
701
|
+
# Axis labels
|
702
|
+
"0°" at (axis_len*sf - 0.1, -0.2)
|
703
|
+
"90°" at (0.2, axis_len*sf - 0.1)
|
704
|
+
"180°" at (-axis_len*sf + 0.2, -0.2)
|
705
|
+
"270°" at (0.2, -axis_len*sf + 0.1)
|
706
|
+
....
|
707
|
+
|
708
|
+
|
709
|
+
.This diagram illustrates the 'Magic Triangle of Cost, Time and Quality' created with simple pic code. Lines between the circles are colored and habe a different value for the `thickness`.
|
710
|
+
[dpic,, svg]
|
711
|
+
....
|
712
|
+
circle rad 0.35 "quality"
|
713
|
+
circle rad 0.35 "cost" at 1st circle - (0.7, 1.15)
|
714
|
+
circle rad 0.35 "time" at 1st circle + (0.7, -1.15)
|
715
|
+
|
716
|
+
line color "red" thickness 3.1 from 1st circle to 2nd circle chop 0.35
|
717
|
+
line color "blue" thickness 6.2 from 2nd circle to 3rd circle chop 0.35
|
718
|
+
line color "green" thickness 9.3 from 3rd circle to 1st circle chop 0.35
|
719
|
+
....
|
720
|
+
|
721
|
+
|
722
|
+
|
723
|
+
|
724
|
+
|
725
|
+
[[gnuplot]]
|
726
|
+
=== Gnuplot
|
727
|
+
|
728
|
+
Gnuplot is a powerful plotting utility that allows users to create a wide variety of 2D and 3D plots from data and mathematical functions.
|
729
|
+
This makes it ideal for visualizing scientific data, mathematical functions, and statistical information.
|
730
|
+
|
731
|
+
.Example of a simple parabola plotted using Gnuplot, demonstrating the function y = x² over the range from -10 to 10, with labeled axes and a title.
|
732
|
+
[gnuplot,, svg]
|
733
|
+
....
|
734
|
+
set xlabel 'x'
|
735
|
+
set ylabel 'y'
|
736
|
+
set title '{/Arial:BoldItalic Simple Parabola: y = x²}' font ',17'
|
737
|
+
set grid
|
738
|
+
|
739
|
+
# Define the function
|
740
|
+
f(x) = x**2
|
741
|
+
|
742
|
+
# Plot the function in the range from -10 to 10
|
743
|
+
plot f(x) with lines linewidth 2 linecolor rgb 'blue' title 'y = x²'
|
637
744
|
....
|
638
745
|
|
639
|
-
.Example of a sequence diagram in PlantUML, showing an interaction where Bob greets Alice with 'hello,' and Alice responds with 'hi.'
|
640
|
-
[plantuml,, format="svg", id="myDiagram", width="200px"]
|
641
|
-
----
|
642
|
-
Bob->Alice : hello
|
643
|
-
Alice --> Bob : hi
|
644
|
-
----
|
645
746
|
|
646
|
-
[[mindmap-example]]
|
647
|
-
.Example of a mind map illustrating concepts in the field of Artificial Intelligence (AI) and Machine Learning (ML).
|
648
|
-
[plantuml, format=svg]
|
649
|
-
----
|
650
|
-
@startmindmap
|
651
|
-
* Artificial Intelligence (AI)
|
652
|
-
** Symbolic AI
|
653
|
-
*** Logic / Knowledge Representation
|
654
|
-
*** Expert Systems
|
655
|
-
** Machine Learning (ML)
|
656
|
-
*** Supervised Learning
|
657
|
-
**** Classification
|
658
|
-
***** Decision Trees
|
659
|
-
***** Neural Networks
|
660
|
-
***** Support Vector Machines (SVM)
|
661
|
-
**** Regression
|
662
|
-
***** Linear Regression
|
663
|
-
***** Logistic Regression
|
664
|
-
*** Unsupervised Learning
|
665
|
-
**** Clustering
|
666
|
-
***** K-Means
|
667
|
-
***** DBSCAN
|
668
|
-
**** Dimensionality Reduction
|
669
|
-
***** PCA (Principal Component Analysis)
|
670
|
-
***** t-SNE / UMAP
|
671
|
-
*** Reinforcement Learning
|
672
|
-
**** Q-Learning
|
673
|
-
**** Deep Q-Networks (DQN)
|
674
|
-
**** Policy Gradient Methods
|
675
|
-
*** Deep Learning
|
676
|
-
**** CNN (Convolutional Neural Networks)
|
677
|
-
**** RNN (Recurrent Neural Networks)
|
678
|
-
**** LSTM / GRU
|
679
|
-
**** Transformer
|
680
|
-
***** BERT
|
681
|
-
***** GPT
|
682
|
-
@endmindmap
|
683
|
-
----
|
684
747
|
|
685
748
|
|
686
749
|
|
@@ -688,6 +751,7 @@ Alice --> Bob : hi
|
|
688
751
|
|
689
752
|
Useful for directed and undirected graphs, including flowcharts, state diagrams, and dependency graphs.
|
690
753
|
|
754
|
+
|
691
755
|
.Example of a directed graph in Graphviz, illustrating nodes with connections, including a self-loop on node b and cyclical paths between nodes.
|
692
756
|
[graphviz,,svg]
|
693
757
|
....
|
@@ -703,11 +767,31 @@ digraph g {
|
|
703
767
|
|
704
768
|
|
705
769
|
|
770
|
+
|
771
|
+
|
772
|
+
=== Lilypond
|
773
|
+
|
774
|
+
LilyPond is a music engraving program that enables users to create beautifully typeset sheet music through a text-based input system, focusing on producing high-quality, professional-looking scores suitable for publication.
|
775
|
+
|
776
|
+
|
777
|
+
// The output format SVG is not supported by LilyPond.
|
778
|
+
.Example of a melody in LilyPond notation, demonstrating a simple sequence of notes with pitches relative to the starting note c'.
|
779
|
+
[lilypond]
|
780
|
+
....
|
781
|
+
\version "2.22.1"
|
782
|
+
\relative c' { f d f a d f e d cis a cis e a g f e }
|
783
|
+
....
|
784
|
+
|
785
|
+
|
786
|
+
|
787
|
+
|
788
|
+
|
706
789
|
[[mermaid]]
|
707
790
|
=== Mermaid
|
708
791
|
|
709
792
|
https://mermaid.js.org/[mermaid.js] is ideal for creating flowcharts, sequence diagrams, Gantt charts, and more.
|
710
793
|
|
794
|
+
|
711
795
|
.Example of a Sankey diagram that shows the distribution of construction costs across different trades, as well as the material and labor costs.
|
712
796
|
[mermaid, format=svg, background="FFFF0000"]
|
713
797
|
----
|
@@ -729,6 +813,7 @@ Tiler,Material costs,10000
|
|
729
813
|
Tiler,Labor costs,10000
|
730
814
|
----
|
731
815
|
|
816
|
+
|
732
817
|
.Example of a flowchart in Mermaid, demonstrating a simple decision tree with two options.
|
733
818
|
[mermaid, format=svg]
|
734
819
|
----
|
@@ -740,6 +825,7 @@ graph TD;
|
|
740
825
|
D --> E;
|
741
826
|
----
|
742
827
|
|
828
|
+
|
743
829
|
.Example of a pie chart in Mermaid, showing the popularity of different types of cuisine worldwide. Additionally, the use of the background attribute in Mermaid is demonstrated, with the color set to FFEEDD.
|
744
830
|
// This example also demonstrates how to:
|
745
831
|
// - Use the general "format" attribute of Asciidoctor Diagram.
|
@@ -763,16 +849,377 @@ pie title Popular Cuisines Around the World
|
|
763
849
|
|
764
850
|
|
765
851
|
|
766
|
-
===
|
852
|
+
=== MscGen
|
767
853
|
|
768
|
-
|
854
|
+
https://www.mcternan.me.uk/mscgen/[MscGen] is a tool for creating message sequence charts (*MSC*s), ideal for visualizing interactions between entities (Systems, Actors, etc.) over time.
|
769
855
|
|
770
|
-
|
771
|
-
.Example of a melody in LilyPond notation, demonstrating a simple sequence of notes with pitches relative to the starting note c'.
|
772
|
-
[lilypond]
|
856
|
+
[msc,, svg]
|
773
857
|
....
|
774
|
-
|
775
|
-
|
858
|
+
msc {
|
859
|
+
|
860
|
+
# The entities
|
861
|
+
A, B, C, D;
|
862
|
+
|
863
|
+
# Small gap before the boxes
|
864
|
+
|||;
|
865
|
+
|
866
|
+
# Next four on same line due to ','
|
867
|
+
A box A [label="box"],
|
868
|
+
B rbox B [label="rbox"],
|
869
|
+
C abox C [label="abox"],
|
870
|
+
D note D [label="note"];
|
871
|
+
|
872
|
+
# Small gap between the examples
|
873
|
+
|||;
|
874
|
+
|
875
|
+
# Example of the boxes with filled backgrounds
|
876
|
+
A abox B [label="abox from A to B", textbgcolour="#ff7f7f"];
|
877
|
+
B rbox C [label="rbox from B to C", textbgcolour="#7fff7f"];
|
878
|
+
C note D [label="note from C to D", textbgcolour="#7f7fff"];
|
879
|
+
|
880
|
+
# Small gap between the examples
|
881
|
+
|||;
|
882
|
+
|
883
|
+
# Example with arrows
|
884
|
+
--- [label = "Examples with arrows:"];
|
885
|
+
A->B [ label = "Message from A to B" ] ;
|
886
|
+
B=>C [ label = "Function call from B to C"];
|
887
|
+
C=>C [ label = "Loop" ];
|
888
|
+
|
889
|
+
}
|
890
|
+
....
|
891
|
+
|
892
|
+
|
893
|
+
|
894
|
+
|
895
|
+
|
896
|
+
[[nomnoml]]
|
897
|
+
=== Nomnoml
|
898
|
+
|
899
|
+
https://nomnoml.com/[Nomnoml] is a simple and intuitive tool for creating UML diagrams.
|
900
|
+
|
901
|
+
.A flowchart in Nomnoml, illustrating a decision-making process for troubleshooting a non-working lamp, including states, decisions, and actions.
|
902
|
+
[nomnoml,, svg]
|
903
|
+
....
|
904
|
+
#direction: down
|
905
|
+
[<start>start] -> [<state>Lamp doesn't work] -> [<choice>Lamp plugged in?] yes -> [<choice>Bulb burned out?] no -> [<state>Repair lamp] -> [<end>end]
|
906
|
+
[Lamp plugged in?] no ->[<state>Plug in lamp]
|
907
|
+
[Bulb burned out?] yes ->[<state>Replace bulb]
|
908
|
+
....
|
909
|
+
|
910
|
+
|
911
|
+
|
912
|
+
|
913
|
+
|
914
|
+
[[pintora]]
|
915
|
+
=== Pintora
|
916
|
+
|
917
|
+
https://pintorajs.vercel.app/docs/intro/[Pintora] is a versatile diagramming tool that supports various types of diagrams, including activity diagrams, sequence diagrams, and class diagrams.
|
918
|
+
|
919
|
+
|
920
|
+
.Example of a mind map created with Pintora, illustrating the categorization of UML diagrams into behavior and structural diagrams, along with specific types under each category. The diagram uses a left-to-right layout and custom colors for different levels of nodes.
|
921
|
+
[pintora,, svg]
|
922
|
+
....
|
923
|
+
mindmap
|
924
|
+
@param layoutDirection LR
|
925
|
+
@param {
|
926
|
+
l1NodeBgColor #287a5c
|
927
|
+
l1NodeTextColor #fff
|
928
|
+
l2NodeBgColor #21966b
|
929
|
+
l2NodeTextColor #fff
|
930
|
+
nodeBgColor #62b999
|
931
|
+
textColor #fff
|
932
|
+
}
|
933
|
+
+ UML Diagrams
|
934
|
+
++ Behavior Diagrams
|
935
|
+
+++ Activity diagram
|
936
|
+
+++ Communication diagram
|
937
|
+
+++ Interaction overview diagram
|
938
|
+
+++ Sequence diagram
|
939
|
+
+++ State diagram
|
940
|
+
+++ Timing diagram
|
941
|
+
+++ Use case diagram
|
942
|
+
++ Structural Diagrams
|
943
|
+
+++ Class Diagram
|
944
|
+
+++ Component Diagram
|
945
|
+
+++ Composite structure diagram
|
946
|
+
+++ Deployment diagram
|
947
|
+
+++ Object diagram
|
948
|
+
+++ Package diagram
|
949
|
+
+++ Profile diagram
|
950
|
+
....
|
951
|
+
|
952
|
+
|
953
|
+
.Example of a Gantt chart created with Pintora, outlining a software project plan with various phases, tasks, and dependencies. The chart includes parameters for font color, bar gap, bar height, and grid line padding, as well as markers for the project start date and current date.
|
954
|
+
[pintora,, svg]
|
955
|
+
....
|
956
|
+
gantt
|
957
|
+
@param {
|
958
|
+
fontColor blue
|
959
|
+
barGap 11
|
960
|
+
barHeight 31
|
961
|
+
gridLineStartPadding 20
|
962
|
+
}
|
963
|
+
|
964
|
+
title Software Project — Project Plan
|
965
|
+
dateFormat YYYY-MM-DD
|
966
|
+
axisFormat MM-DD
|
967
|
+
axisInterval 1M
|
968
|
+
|
969
|
+
section Project Preparation
|
970
|
+
"Gather Requirements" : p1, 2025-09-01, 14d
|
971
|
+
"Feasibility Analysis" : p2, after p1, 10d
|
972
|
+
"Project Planning & Kick-off" : p3, after p2, 7d
|
973
|
+
|
974
|
+
section Architecture & Design
|
975
|
+
"Design System Architecture" : d1, after p3, 20d
|
976
|
+
"UI/UX Design" : d2, after p3, 14d
|
977
|
+
"API Interfaces" : d4, after d2, 20d
|
978
|
+
"Define Technology Stack" : d3, after d2, 7d
|
979
|
+
|
980
|
+
section Implementation
|
981
|
+
"Backend Development" : i1, after d3, 40d
|
982
|
+
"Frontend Development" : i2, after d3, 35d
|
983
|
+
"Frontend-Backend Integration" : i4, after i2, 15d
|
984
|
+
|
985
|
+
section Quality Assurance
|
986
|
+
"Documentation of QA Strategy" : q0, after d1, 20d
|
987
|
+
"Unit Tests & Code Review" : q1, after q0, 30d
|
988
|
+
"Integration Tests" : q2, after i4, 14d
|
989
|
+
"System Tests" : q3, after q2, 14d
|
990
|
+
"User Acceptance Test (UAT)" : q4, after q3, 10d
|
991
|
+
|
992
|
+
section Deployment & Closure
|
993
|
+
"Training Deployment" : r1, after q4, 5d
|
994
|
+
"Training & Documentation" : r2, after q4, 7d
|
995
|
+
"Production Deployment" : r4, after r1, 5d
|
996
|
+
"Project Closure & Review" : r3, after r4, 3d
|
997
|
+
|
998
|
+
%% Mark project start
|
999
|
+
markDate 2025-09-01
|
1000
|
+
%% Mark current date
|
1001
|
+
markDate 2025-09-17
|
1002
|
+
....
|
1003
|
+
|
1004
|
+
|
1005
|
+
|
1006
|
+
|
1007
|
+
|
1008
|
+
[[plantuml]]
|
1009
|
+
=== PlantUML
|
1010
|
+
|
1011
|
+
Great for creating UML diagrams like class diagrams, sequence diagrams, and activity diagrams.
|
1012
|
+
|
1013
|
+
|
1014
|
+
.Example of a class diagram in PlantUML, depicting a hierarchy where `DiagramBlock` and `BlockProcessor` classes are related, with `DiagramBlock` having subclasses `DitaaBlock` and `PlantUmlBlock`.
|
1015
|
+
[plantuml, , svg]
|
1016
|
+
....
|
1017
|
+
class BlockProcessor
|
1018
|
+
class DiagramBlock
|
1019
|
+
class DitaaBlock
|
1020
|
+
class PlantUmlBlock
|
1021
|
+
|
1022
|
+
BlockProcessor <|-- DiagramBlock
|
1023
|
+
DiagramBlock <|-- DitaaBlock
|
1024
|
+
DiagramBlock <|-- PlantUmlBlock
|
1025
|
+
....
|
1026
|
+
|
1027
|
+
|
1028
|
+
.Example of a sequence diagram in PlantUML, showing an interaction where Bob greets Alice with 'hello,' and Alice responds with 'hi.'
|
1029
|
+
[plantuml,, format="svg", id="myDiagram", width="200px"]
|
1030
|
+
----
|
1031
|
+
Bob->Alice : hello
|
1032
|
+
Alice --> Bob : hi
|
1033
|
+
----
|
1034
|
+
|
1035
|
+
|
1036
|
+
[[mindmap-example]]
|
1037
|
+
.Example of a mind map illustrating concepts in the field of Artificial Intelligence (AI) and Machine Learning (ML).
|
1038
|
+
[plantuml, format=svg]
|
1039
|
+
----
|
1040
|
+
@startmindmap
|
1041
|
+
* Artificial Intelligence (AI)
|
1042
|
+
** Symbolic AI
|
1043
|
+
*** Logic / Knowledge Representation
|
1044
|
+
*** Expert Systems
|
1045
|
+
** Machine Learning (ML)
|
1046
|
+
*** Supervised Learning
|
1047
|
+
**** Classification
|
1048
|
+
***** Decision Trees
|
1049
|
+
***** Neural Networks
|
1050
|
+
***** Support Vector Machines (SVM)
|
1051
|
+
**** Regression
|
1052
|
+
***** Linear Regression
|
1053
|
+
***** Logistic Regression
|
1054
|
+
*** Unsupervised Learning
|
1055
|
+
**** Clustering
|
1056
|
+
***** K-Means
|
1057
|
+
***** DBSCAN
|
1058
|
+
**** Dimensionality Reduction
|
1059
|
+
***** PCA (Principal Component Analysis)
|
1060
|
+
***** t-SNE / UMAP
|
1061
|
+
*** Reinforcement Learning
|
1062
|
+
**** Q-Learning
|
1063
|
+
**** Deep Q-Networks (DQN)
|
1064
|
+
**** Policy Gradient Methods
|
1065
|
+
*** Deep Learning
|
1066
|
+
**** CNN (Convolutional Neural Networks)
|
1067
|
+
**** RNN (Recurrent Neural Networks)
|
1068
|
+
**** LSTM / GRU
|
1069
|
+
**** Transformer
|
1070
|
+
***** BERT
|
1071
|
+
***** GPT
|
1072
|
+
@endmindmap
|
1073
|
+
----
|
1074
|
+
|
1075
|
+
|
1076
|
+
|
1077
|
+
|
1078
|
+
|
1079
|
+
[[smcat]]
|
1080
|
+
=== State Machine Cat
|
1081
|
+
|
1082
|
+
https://github.com/sverweij/state-machine-cat[State Machine Cat] (smcat) is a tool for creating state machine diagrams.
|
1083
|
+
|
1084
|
+
.Example footnote:[Source: https://github.com/sverweij/state-machine-cat?tab=readme-ov-file#colors-and-line-width[Example for colors and line widths in the documentation of State Machine Cat on GitHub]] of a state machine diagram created with State Machine Cat, illustrating the behavior of a cat. The diagram demonstrates the use of colors and different line widths to enhance the visual representation of states and transitions. The diagram is laid out from left to right using the "circo" engine.
|
1085
|
+
[smcat,, svg, direction="left-right", engine="circo"]
|
1086
|
+
----
|
1087
|
+
sleep [color="blue" active],
|
1088
|
+
eat [color="#008800"],
|
1089
|
+
meow [color="red"],
|
1090
|
+
play [color="purple"];
|
1091
|
+
|
1092
|
+
sleep -> meow [color="red"] : wake up;
|
1093
|
+
meow -> meow [color="red"] : no response from human;
|
1094
|
+
meow -> eat [color="#008800"] : human gives food;
|
1095
|
+
meow -> play [color="purple"] : human gives toy;
|
1096
|
+
play -> sleep [color="blue"] : tired or bored;
|
1097
|
+
eat -> sleep [color="blue" width=3.5] : belly full;
|
1098
|
+
----
|
1099
|
+
|
1100
|
+
|
1101
|
+
|
1102
|
+
|
1103
|
+
|
1104
|
+
[[tikz]]
|
1105
|
+
=== TikZ
|
1106
|
+
https://github.com/pgf-tikz/pgf[TikZ] is a powerful and user-friendly syntax layer built upon the PGF (Portable Graphic Format) package for creating high-quality graphics programmatically within LaTeX documents.
|
1107
|
+
|
1108
|
+
|
1109
|
+
.Example of a simple diagram created with TikZ, demonstrating the drawing of a grid, coordinates, and arrows between points. The diagram includes a red arrow to highlight a specific direction. The diagram is scaled by a factor of 2.3 and uses ultra thick lines for better visibility.
|
1110
|
+
[tikz]
|
1111
|
+
....
|
1112
|
+
\begin{tikzpicture}[scale=2.3, ultra thick]
|
1113
|
+
\draw [help lines] (0,0) grid (3,3);
|
1114
|
+
\coordinate (a) at (1,0);
|
1115
|
+
\coordinate (b) at (3,2);
|
1116
|
+
|
1117
|
+
\draw[->] (a) -- (b);
|
1118
|
+
\coordinate (c) at (2,2);
|
1119
|
+
\draw[->,red] (a) -- (c);
|
1120
|
+
|
1121
|
+
\end{tikzpicture}
|
1122
|
+
....
|
1123
|
+
|
1124
|
+
|
1125
|
+
.Example footnote:[Source: https://docs.asciidoctor.org/diagram-extension/latest/diagram_types/tikz/#example[Example for a TikZ diagram taken from the AsciiDoctor-Diagram documentation]] of a more complex 3D diagram created with TikZ, illustrating a tetrahedron inscribed within a parallelepiped. The diagram uses perspective angles and colors to enhance the visual representation of the shapes and their vertices.
|
1126
|
+
[tikz]
|
1127
|
+
....
|
1128
|
+
\begin{tikzpicture}[font=\LARGE]
|
1129
|
+
|
1130
|
+
% Figure parameters (tta and k needs to have the same sign)
|
1131
|
+
% They can be modified at will
|
1132
|
+
\def \tta{ -10.00000000000000 } % Defines the first angle of perspective
|
1133
|
+
\def \k{ -3.00000000000000 } % Factor for second angle of perspective
|
1134
|
+
\def \l{ 6.00000000000000 } % Defines the width of the parallelepiped
|
1135
|
+
\def \d{ 5.00000000000000 } % Defines the depth of the parallelepiped
|
1136
|
+
\def \h{ 7.00000000000000 } % Defines the heigth of the parallelepiped
|
1137
|
+
|
1138
|
+
% The vertices A,B,C,D define the reference plan (vertical)
|
1139
|
+
\coordinate (A) at (0,0);
|
1140
|
+
\coordinate (B) at ({-\h*sin(\tta)},{\h*cos(\tta)});
|
1141
|
+
\coordinate (C) at ({-\h*sin(\tta)-\d*sin(\k*\tta)},
|
1142
|
+
{\h*cos(\tta)+\d*cos(\k*\tta)});
|
1143
|
+
\coordinate (D) at ({-\d*sin(\k*\tta)},{\d*cos(\k*\tta)});
|
1144
|
+
|
1145
|
+
% The vertices Ap,Bp,Cp,Dp define a plane translated from the
|
1146
|
+
% reference plane by the width of the parallelepiped
|
1147
|
+
\coordinate (Ap) at (\l,0);
|
1148
|
+
\coordinate (Bp) at ({\l-\h*sin(\tta)},{\h*cos(\tta)});
|
1149
|
+
\coordinate (Cp) at ({\l-\h*sin(\tta)-\d*sin(\k*\tta)},
|
1150
|
+
{\h*cos(\tta)+\d*cos(\k*\tta)});
|
1151
|
+
\coordinate (Dp) at ({\l-\d*sin(\k*\tta)},{\d*cos(\k*\tta)});
|
1152
|
+
|
1153
|
+
% Marking the vertices of the tetrahedron (red)
|
1154
|
+
% and of the parallelepiped (black)
|
1155
|
+
\fill[black] (A) circle [radius=2pt];
|
1156
|
+
\fill[red] (B) circle [radius=2pt];
|
1157
|
+
\fill[black] (C) circle [radius=2pt];
|
1158
|
+
\fill[red] (D) circle [radius=2pt];
|
1159
|
+
\fill[red] (Ap) circle [radius=2pt];
|
1160
|
+
\fill[black] (Bp) circle [radius=2pt];
|
1161
|
+
\fill[red] (Cp) circle [radius=2pt];
|
1162
|
+
\fill[black] (Dp) circle [radius=2pt];
|
1163
|
+
|
1164
|
+
% painting first the three visible faces of the tetrahedron
|
1165
|
+
\filldraw[draw=red,bottom color=red!50!black, top color=cyan!50]
|
1166
|
+
(B) -- (Cp) -- (D);
|
1167
|
+
\filldraw[draw=red,bottom color=red!50!black, top color=cyan!50]
|
1168
|
+
(B) -- (D) -- (Ap);
|
1169
|
+
\filldraw[draw=red,bottom color=red!50!black, top color=cyan!50]
|
1170
|
+
(B) -- (Cp) -- (Ap);
|
1171
|
+
|
1172
|
+
% Draw the edges of the tetrahedron
|
1173
|
+
\draw[red,-,very thick] (Ap) -- (D)
|
1174
|
+
(Ap) -- (B)
|
1175
|
+
(Ap) -- (Cp)
|
1176
|
+
(B) -- (D)
|
1177
|
+
(Cp) -- (D)
|
1178
|
+
(B) -- (Cp);
|
1179
|
+
|
1180
|
+
% Draw the visible edges of the parallelepiped
|
1181
|
+
\draw [-,thin] (B) -- (A)
|
1182
|
+
(Ap) -- (Bp)
|
1183
|
+
(B) -- (C)
|
1184
|
+
(D) -- (C)
|
1185
|
+
(A) -- (D)
|
1186
|
+
(Ap) -- (A)
|
1187
|
+
(Cp) -- (C)
|
1188
|
+
(Bp) -- (B)
|
1189
|
+
(Bp) -- (Cp);
|
1190
|
+
|
1191
|
+
% Draw the hidden edges of the parallelepiped
|
1192
|
+
\draw [gray,-,thin] (Dp) -- (Cp);
|
1193
|
+
(Dp) -- (D);
|
1194
|
+
(Ap) -- (Dp);
|
1195
|
+
|
1196
|
+
% Name the vertices (the names are not consistent
|
1197
|
+
% with the node name, but it makes the programming easier)
|
1198
|
+
\draw (Ap) node [right] {$A$}
|
1199
|
+
(Bp) node [right, gray] {$F$}
|
1200
|
+
(Cp) node [right] {$D$}
|
1201
|
+
(C) node [left,gray] {$E$}
|
1202
|
+
(D) node [left] {$B$}
|
1203
|
+
(A) node [left,gray] {$G$}
|
1204
|
+
(B) node [above left=+5pt] {$C$}
|
1205
|
+
(Dp) node [right,gray] {$H$};
|
1206
|
+
|
1207
|
+
% Drawing again vertex $C$, node (B) because it disappeared behind the edges.
|
1208
|
+
% Drawing again vertex $H$, node (Dp) because it disappeared behind the edges.
|
1209
|
+
\fill[red] (B) circle [radius=2pt];
|
1210
|
+
\fill[gray] (Dp) circle [radius=2pt];
|
1211
|
+
|
1212
|
+
% From the reference and this example one can easily draw
|
1213
|
+
% the twin tetrahedron jointly to this one.
|
1214
|
+
% Drawing the edges of the twin tetrahedron
|
1215
|
+
% switching the p_s: A <-> Ap, etc...
|
1216
|
+
\draw[red,-,dashed, thin] (A) -- (Dp)
|
1217
|
+
(A) -- (Bp)
|
1218
|
+
(A) -- (C)
|
1219
|
+
(Bp) -- (Dp)
|
1220
|
+
(C) -- (Dp)
|
1221
|
+
(Bp) -- (C);
|
1222
|
+
\end{tikzpicture}
|
776
1223
|
....
|
777
1224
|
|
778
1225
|
|
@@ -786,6 +1233,7 @@ For details on how to use the QR code and barcode features, see the https://docs
|
|
786
1233
|
|
787
1234
|
==== Block version of QR Codes (PNG and SVG)
|
788
1235
|
|
1236
|
+
|
789
1237
|
// Barcode block
|
790
1238
|
.QR code in SVG format using a code block and a specified x-dimension (value of `7`).
|
791
1239
|
[qrcode, format="svg", xdim=7]
|
@@ -793,6 +1241,7 @@ For details on how to use the QR code and barcode features, see the https://docs
|
|
793
1241
|
This QR code is generated with Asciidoctor Diagram and presented in SVG format using a barcode block.
|
794
1242
|
....
|
795
1243
|
|
1244
|
+
|
796
1245
|
// Barcode block macro
|
797
1246
|
.QR code in PNG format using a block macro and a specified x-dimension (value of `5`).
|
798
1247
|
qrcode::This QR code is generated with Asciidoctor Diagram and presented in PNG format using the barcode block macro.[format="png", xdim=5]
|