From 9217ace0afabdcbbd36dd91b7d69441298398f18 Mon Sep 17 00:00:00 2001
From: Janis Hutz <development@janishutz.com>
Date: Mon, 6 Jan 2025 17:52:57 +0100
Subject: [PATCH] Set up helpers, mostly okay. Some changes yet to come

---
 all.tex                 |  3 ++
 barebones.tex           |  2 +
 config/config.tex       | 26 +++++++++++
 docs/letters/docs.tex   |  0
 docs/main/docs.tex      |  0
 extra/bib.tex           | 19 ++++++++
 extra/glossary.tex      | 17 ++++++++
 extra/minted.tex        |  0
 letter.tex              | 32 ++++++++++++++
 main/core.tex           | 96 +++++++++++++++++++++++++++++++++++++++++
 main/cs.tex             | 17 ++++++++
 main/index.tex          | 21 +++++++++
 main/math.tex           | 33 ++++++++++++++
 main/style/common.tex   | 37 ++++++++++++++++
 main/style/counters.tex | 75 ++++++++++++++++++++++++++++++++
 main/style/cs.tex       |  0
 main/style/language.tex | 10 +++++
 main/style/math.tex     | 15 +++++++
 main/style/style.tex    | 91 ++++++++++++++++++++++++++++++++++++++
 main/tables.tex         | 29 +++++++++++++
 most.tex                |  9 ++++
 recommended.tex         |  2 +
 22 files changed, 534 insertions(+)
 create mode 100644 all.tex
 create mode 100644 barebones.tex
 create mode 100644 config/config.tex
 create mode 100644 docs/letters/docs.tex
 create mode 100644 docs/main/docs.tex
 create mode 100644 extra/bib.tex
 create mode 100644 extra/glossary.tex
 create mode 100644 extra/minted.tex
 create mode 100644 letter.tex
 create mode 100644 main/core.tex
 create mode 100644 main/cs.tex
 create mode 100644 main/index.tex
 create mode 100644 main/math.tex
 create mode 100644 main/style/common.tex
 create mode 100644 main/style/counters.tex
 create mode 100644 main/style/cs.tex
 create mode 100644 main/style/language.tex
 create mode 100644 main/style/math.tex
 create mode 100644 main/style/style.tex
 create mode 100644 main/tables.tex
 create mode 100644 most.tex
 create mode 100644 recommended.tex

diff --git a/all.tex b/all.tex
new file mode 100644
index 0000000..c4e5893
--- /dev/null
+++ b/all.tex
@@ -0,0 +1,3 @@
+\include{./most.tex}
+\include{./extra/bib.tex}
+\include{./extra/minted.tex}
diff --git a/barebones.tex b/barebones.tex
new file mode 100644
index 0000000..c20e82d
--- /dev/null
+++ b/barebones.tex
@@ -0,0 +1,2 @@
+\include{./main/core.tex}
+\include{./config/config.tex}
diff --git a/config/config.tex b/config/config.tex
new file mode 100644
index 0000000..f8729a8
--- /dev/null
+++ b/config/config.tex
@@ -0,0 +1,26 @@
+%  ___                 ___         
+% (  _ \             / ___)_       
+% | ( (_)  _    ___ | (__ (_)  __  
+% | |  _ / _ \/  _  \  __)| |/ _  \
+% | (_( ) (_) ) ( ) | |   | | (_) |
+% (____/ \___/(_) (_)_)   (_)\__  |
+%                           ( )_) |
+%                            \___/ 
+
+
+% Configure your author name here
+\newcommand{\authorTitle}{Janis Hutz\\\url{https://janishutz.com}}
+\newcommand{\authorHeaders}{Janis Hutz}
+
+% Configure your address here
+\newcommand{\name}{Janis Hutz}
+\newcommand{\street}{}
+\newcommand{\city}{}
+\newcommand{\countrycode}{CH}
+
+
+% Configure definition, lemma, theorem, etc numbering behaviour. 1 = Individual, 2 = Combined (apart from Definition), 3 = Combined
+\setcounter{numberingConfig}{1}
+
+% Set the default language. 1 = English, 2 = German
+\setcounter{lang}{1}
diff --git a/docs/letters/docs.tex b/docs/letters/docs.tex
new file mode 100644
index 0000000..e69de29
diff --git a/docs/main/docs.tex b/docs/main/docs.tex
new file mode 100644
index 0000000..e69de29
diff --git a/extra/bib.tex b/extra/bib.tex
new file mode 100644
index 0000000..f3fc03e
--- /dev/null
+++ b/extra/bib.tex
@@ -0,0 +1,19 @@
+%  ___     _     _____       _    _ 
+% (  _ \ _( )   (_   _)     ( )  ( )
+% | (_) )_) |_    | |    __  \ \/ / 
+% |  _ (| |  _ \  | |  / __ \ )  (  
+% | (_) ) | |_) ) | | (  ___// /\ \ 
+% (____/(_)_ __/  (_)  \____)_)  (_)
+                                  
+% Configs if you want to use BibTeX. Not included in any default configs.
+
+\newcommand{\setupBibtex}[1]{
+    \usepackage{biblatex}
+    \usepackage[nottoc, numbib]{tocbibind}
+    \addbibresource{#1}
+}
+
+\newcommand{\printbib}{
+    \addcontentsline{toc}{section}{Sources}
+    \printbibliography[title=Sources]
+}
diff --git a/extra/glossary.tex b/extra/glossary.tex
new file mode 100644
index 0000000..3e61fb2
--- /dev/null
+++ b/extra/glossary.tex
@@ -0,0 +1,17 @@
+
+%░▒█▀▀█░█░░▄▀▀▄░█▀▀░█▀▀░█▀▀▄░█▀▀▄░█░░█
+%░▒█░▄▄░█░░█░░█░▀▀▄░▀▀▄░█▄▄█░█▄▄▀░█▄▄█
+%░▒█▄▄▀░▀▀░░▀▀░░▀▀▀░▀▀▀░▀░░▀░▀░▀▀░▄▄▄▀
+
+% Add glossaries functionality
+
+\newcommand{\setupGlossary}{
+    \usepackage[nonumberlist, toc]{glossaries}
+    \usepackage[nottoc, numbib]{tocbibind}
+    \makenoidxglossaries
+}
+
+\newcommand{\printGlossary}{
+    \glsaddall
+    \printnoidxglossaries
+}
diff --git a/extra/minted.tex b/extra/minted.tex
new file mode 100644
index 0000000..e69de29
diff --git a/letter.tex b/letter.tex
new file mode 100644
index 0000000..d3a1955
--- /dev/null
+++ b/letter.tex
@@ -0,0 +1,32 @@
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+
+\setkomavar{date}{\city, \today}
+
+\newkomavar{fromplace} % a few koma vars
+\setkomavar{fromname}{\name}
+\setkomavar{fromaddress}{\street}
+\setkomavar{fromplace}{\countrycode -\city}
+
+\KOMAoptions{foldmarks=off,fromrule=false}
+\setkomavar{backaddress}{}
+
+\makeatletter % indention of the address fields
+\setplength{toaddrhpos}{27mm}
+\setplength{toaddrwidth}{92mm}
+\setplength{sigindent}{0mm}
+\makeatother
+
+\renewcommand*{\raggedsignature}{\raggedright}
+
+% Define new letter header
+\setkomavar{firsthead}{
+    \null\hfill
+    \parbox[t][\headheight][t]{4cm}{%
+        \vspace*{2cm}
+
+        \usekomavar{fromname} \newline 
+        \usekomavar{fromaddress}  \newline 
+        \usekomavar{fromplace}
+    }
+}%
diff --git a/main/core.tex b/main/core.tex
new file mode 100644
index 0000000..25b7fec
--- /dev/null
+++ b/main/core.tex
@@ -0,0 +1,96 @@
+                                    
+%   ▄▄█▀▀▀█▄█                         
+% ▄██▀     ▀█                         
+% ██▀       ▀ ▄██▀██▄▀███▄███  ▄▄█▀██ 
+% ██         ██▀   ▀██ ██▀ ▀▀ ▄█▀   ██
+% ██▄        ██     ██ ██     ██▀▀▀▀▀▀
+% ▀██▄     ▄▀██▄   ▄██ ██     ██▄    ▄
+%   ▀▀█████▀  ▀█████▀▄████▄    ▀█████▀
+                                    
+% This file contains all necessary dependencies for the document to compile (at all) and some core macros
+
+% Imports %
+\usepackage[table, dvipsnames]{xcolor}
+\usepackage{amsmath}
+\usepackage{graphicx}
+\usepackage{subcaption}
+\usepackage[export]{adjustbox}
+\usepackage[most]{tcolorbox}
+\usepackage{cancel}
+\usepackage{dsfont}
+\usepackage{amssymb}
+\usepackage{mathrsfs}
+\usepackage{lipsum}
+\usepackage{ulem}
+\usepackage{soul}
+\usepackage{parskip}
+\usepackage{fancyhdr}
+\usepackage{lastpage}
+\usepackage{tocloft}
+\usepackage{wasysym}
+\usepackage{wrapfig}
+\usepackage{multicol}
+\usepackage{ifthen}
+\usepackage[hidelinks]{hyperref}
+\usepackage{enumitem}
+\usepackage{booktabs}
+\usepackage{tabulary}
+
+% Language Switching. Currently only English and German are supported
+% See docs for how to use
+\newcounter{lang}
+
+% Create config counters / variables. See the config file for changing them
+\newcounter{numberingConfig}
+
+% Set up the latex document, configure author, title (as first argument), as well as headers and footers
+\newcommand{\setup}[1]{
+    \usepackage[a4paper,textwidth=17.5cm,textheight=25cm,includehead]{geometry}
+    \title{\Huge \textbf{#1}}
+    \author{\authorTitle}
+    \makeatletter
+    \makeatother
+    \fancyhead{}
+    \fancyhead[L]{#1}
+    \fancyhead[R]{\authorHeaders}
+    \fancyfoot{}
+    \fancyfoot[L]{\today}
+    \fancyfoot[R]{\thepage\ /\ \pageref{LastPage}}
+    \fancypagestyle{plain}{%
+        \fancyhead{}
+        \fancyhead[L]{#1}
+        \fancyhead[R]{\authorHeaders}
+        \fancyfoot{}
+        \fancyfoot[L]{\today}
+        \fancyfoot[R]{\thepage\ /\ \pageref{LastPage}}
+    }
+}
+
+% Start document command (required)
+\newcommand{\startDocument}{
+    \maketitle
+    \pagestyle{fancy}
+    \thispagestyle{fancy}
+    \include{./style/style.tex}
+    \include{./style/common.tex}
+}
+
+% Set up the latex document, only configuring the author, title and page size
+\newcommand{\setupbarebones}[1]{
+    \usepackage[a4paper,textwidth=17.5cm,textheight=25cm,includehead]{geometry}
+    \title{\Huge \textbf{#1}}
+    \author{\authorTitle}
+}
+
+% Set up the latex document for exam summaries (Extra wide body, small margins, no header)
+\newcommand{\setupexams}[1]{
+    \usepackage[a4paper,textwidth=20cm,textheight=28cm,includehead]{geometry}
+    \title{#1}
+    \author{\authorTitle}
+}
+
+
+% translate the document between two languages
+\newcommand{\translate}[2]{
+    \ifnum\value{lang}<2{#1}\else {#2}\fi
+}
diff --git a/main/cs.tex b/main/cs.tex
new file mode 100644
index 0000000..33b5f91
--- /dev/null
+++ b/main/cs.tex
@@ -0,0 +1,17 @@
+
+% ░▒█▀▀▄░▄▀▀▄░█▀▄▀█░▄▀▀▄░█░▒█░▀█▀░█▀▀░█▀▀▄░░░▒█▀▀▀█░█▀▄░░▀░░█▀▀░█▀▀▄░█▀▄░█▀▀
+% ░▒█░░░░█░░█░█░▀░█░█▄▄█░█░▒█░░█░░█▀▀░█▄▄▀░░░░▀▀▀▄▄░█░░░░█▀░█▀▀░█░▒█░█░░░█▀▀
+% ░▒█▄▄▀░░▀▀░░▀░░▒▀░█░░░░░▀▀▀░░▀░░▀▀▀░▀░▀▀░░░▒█▄▄▄█░▀▀▀░▀▀▀░▀▀▀░▀░░▀░▀▀▀░▀▀▀
+
+% Extra imports
+\usepackage{stmaryrd}
+\usepackage{algorithm}
+\usepackage{algpseudocodex}
+\usepackage{setspace}
+
+
+\newcommand{\timecomplexity}{\fhlc{orange}{\ifnum\value{lang}<2{Time complexity}\else {Laufzeit}\fi} \hspace{0.5em}}
+\newcommand{\tc}[1]{\timecomplexity $\Theta (#1)$}
+\newcommand{\tct}[1]{$\Theta (#1)$}
+\newcommand{\tco}[1]{$O(#1)$}
+\newcommand{\tcl}[1]{$\Omega(#1)$}
diff --git a/main/index.tex b/main/index.tex
new file mode 100644
index 0000000..a35b20f
--- /dev/null
+++ b/main/index.tex
@@ -0,0 +1,21 @@
+%                         ▄▄                    
+% ▀████▀                ▀███                    
+%   ██                    ██                    
+%   ██ ▀████████▄    ▄█▀▀███   ▄▄█▀██▀██▀   ▀██▀
+%   ██   ██    ██  ▄██    ██  ▄█▀   ██ ▀██ ▄█▀  
+%   ██   ██    ██  ███    ██  ██▀▀▀▀▀▀   ███    
+%   ██   ██    ██  ▀██    ██  ██▄    ▄ ▄█▀ ██▄  
+% ▄████▄████  ████▄ ▀████▀███▄ ▀█████▀██▄   ▄██▄
+                                              
+
+% For using index package
+\newcommand{\prepareIndex}{
+    \usepackage[T1]{fontenc}
+    \usepackage{imakeidx}
+    \makeindex
+}
+
+\newcommand{\addIndex}[1]{
+    \textbf{\index{\MakeLowercase{#1}} #1}
+}
+
diff --git a/main/math.tex b/main/math.tex
new file mode 100644
index 0000000..0c8c651
--- /dev/null
+++ b/main/math.tex
@@ -0,0 +1,33 @@
+%                              ▄▄        
+% ▀████▄     ▄███▀         ██  ███        
+%   ████    ████           ██   ██        
+%   █ ██   ▄█ ██  ▄█▀██▄ ██████ ███████▄  
+%   █  ██  █▀ ██ ██   ██   ██   ██    ██  
+%   █  ██▄█▀  ██  ▄█████   ██   ██    ██  
+%   █  ▀██▀   ██ ██   ██   ██   ██    ██  
+% ▄███▄ ▀▀  ▄████▄████▀██▄ ▀███████  ████▄
+                                        
+
+\renewcommand{\vec}[1]{\overrightarrow{#1}}
+\renewcommand{\hat}[1]{\widehat{#1}}
+\renewcommand{\tilde}[1]{\widetilde{#1}}
+\newcommand{\R}{\mathbb{R}}
+\newcommand{\N}{\mathbb{N}}
+\newcommand{\C}{\mathbb{C}}
+\newcommand{\Q}{\mathbb{Q}}
+\newcommand{\Z}{\mathbb{Z}}
+\newcommand{\8}{\infty}
+\newcommand{\dx}{\mbox{d}}
+\newcommand{\floor}[1]{\left\lfloor #1 \right\rfloor}
+\newcommand{\ceil}[1]{\left\lceil #1 \right\rceil}
+\newcommand{\hastoeq}{\overset{!}{=}}
+\newcommand{\Leftrightarrowequiv}{\overset{\cdot}{\Leftrightarrow}}
+\newcommand{\Longleftrightarrowequiv}{\overset{\cdot}{\Longleftrightarrow}}
+\newcommand{\Rightarrowequiv}{\overset{\cdot}{\Rightarrow}}
+\newcommand{\Leftarrowequiv}{\overset{\cdot}{\Leftarrow}}
+\newcommand{\defAs}{\overset{\text{def}}{=}}
+\newcommand{\defEquiv}{\overset{\text{def}}{\Leftrightarrow}}
+\newcommand{\defImplies}{\overset{\text{def}}{\Rightarrow}}
+\newcommand{\divides}{\hspace{0.25em}|\hspace{0.25em}}
+\newcommand{\mbeq}{\overset{!}{=}}
+\newcommand{\lcm}{\text{lcm}}
diff --git a/main/style/common.tex b/main/style/common.tex
new file mode 100644
index 0000000..40eac57
--- /dev/null
+++ b/main/style/common.tex
@@ -0,0 +1,37 @@
+
+\newtcolorbox{recall}[2][]{mainboxstyle,colback=yellow!5!white,colframe=yellow!75!black,colbacktitle=yellow!75!black,title={\large #2},
+overlay={\node[draw=yellow!75!black,,fill=yellow!75!black] at (frame.north east) {\large \translate{Recall }{Repetition }};},#1}
+
+\newtcolorbox{remarks}[2][]{mainboxstyle,colback=green!5!white,colframe=green!75!black,colbacktitle=green!75!black,title={\large #2},
+overlay={\node[draw=green!75!black,,fill=green!75!black] at (frame.north east) {\large \translate{Remarks }{Bemerkungen }};},#1}
+
+\newtcolorbox{guides}[3][]{mainboxstyle,colback=red!5!white,colframe=red!75!black,colbacktitle=red!75!black,title={\large #2},
+overlay={\node[draw=red!75!black,,fill=red!75!black] at (frame.north east) {\large #3};},#1}
+
+
+\newtcolorbox{properties}[2][]{mainboxstyle,colback=purple!5!white,colframe=purple!75!black,colbacktitle=purple!75!black,title={\large #2},
+overlay={\node[draw=purple!75!black,,fill=purple!75!black] at (frame.north east) {\large \translate{Properties }{Eigenschaften }};},#1}
+
+\newtcolorbox{restrictions}[2][]{mainboxstyle,colback=purple!5!white,colframe=purple!75!black,colbacktitle=purple!75!black,title={\large #2},
+overlay={\node[draw=purple!75!black,,fill=purple!75!black] at (frame.north east) {\large \translate{Restrictions }{Einschränkungen }};},#1}
+
+\newtcolorbox{limitations}[2][]{mainboxstyle,colback=purple!5!white,colframe=purple!75!black,colbacktitle=purple!75!black,title={\large #2},
+overlay={\node[draw=purple!75!black,,fill=purple!75!black] at (frame.north east) {\large \translate{Limitations }{Limitierungen }};},#1}
+
+
+% Terms and notation
+\newtcolorbox{terms}[2][]{mainboxstyle,colback=orange!5!white,colframe=orange!75!black,colbacktitle=orange!75!black,title={\large #2},
+overlay={\node[draw=orange!75!black,,fill=orange!75!black] at (frame.north east) {\large \translate{Terms }{Begriffe }};},#1}
+
+\newtcolorbox{notation}[2][]{mainboxstyle,colback=Peach!5!white,colframe=Peach!75!black,colbacktitle=Peach!75!black,title={\large #2},
+overlay={\node[draw=Peach!75!black,,fill=Peach!75!black] at (frame.north east) {\large Notation};},#1}
+
+
+\newtcolorbox{usage}[2][]{mainboxstyle,colback=green!5!white,colframe=green!75!black,colbacktitle=green!75!black,title={\large #2},
+overlay={\node[draw=green!75!black,,fill=green!75!black] at (frame.north east) {\large \translate{Usage }{Nutzung }};},#1}
+
+
+
+% General
+\newtcolorbox{general}[4][]{mainboxstyle,colback=#4!5!white,colframe=#4!75!black,colbacktitle=#4!75!black,title={\large #2},
+overlay={\node[draw=#4!75!black,,fill=#4!75!black] at (frame.north east) {\large #3};},#1}
diff --git a/main/style/counters.tex b/main/style/counters.tex
new file mode 100644
index 0000000..b6c2bdd
--- /dev/null
+++ b/main/style/counters.tex
@@ -0,0 +1,75 @@
+
+%  ▄▄·       ▄• ▄▌ ▐ ▄ ▄▄▄▄▄▄▄▄ .▄▄▄  
+% ▐█ ▌▪ ▄█▀▄ █▪██▌•█▌▐█•██  ▀▄.▀·▀▄ █·
+% ██ ▄▄▐█▌.▐▌█▌▐█▌▐█▐▐▌ ▐█.▪▐▀▀▪▄▐▀▀▄ 
+% ▐███▌▐█▌.▐▌▐█▄█▌██▐█▌ ▐█▌·▐█▄▄▌▐█•█▌
+% ·▀▀▀  ▀█▄▀▪ ▀▀▀ ▀▀ █▪ ▀▀▀  ▀▀▀ .▀  ▀
+
+% tcolorbox and other stylistic elements (i.e. inline versions of them) that have counters
+\newcounter{lemmas}
+\newcounter{definitions}
+\newcounter{corollaries}
+\newcounter{theorems}
+\newcounter{axioms}
+\newcounter{examples}
+\newcounter{all}
+
+\newcommand{\usenumberArabic}[1]{
+    \arabic{section}.\ifnum{numberingConfig}<3{
+        \ifnum{numberingConfig}<2{\arabic{#1}\stepcounter{#1}}\else{
+            \ifx#1definitions
+                \arabic{#1}\stepcounter{#1}
+            \else
+                \arabic{all}\stepcounter{all}
+            \fi
+        }\fi
+    }\else{\arabic{all}\stepcounter{all}}\fi
+}
+
+
+% Reset definition, lemma, etc counters, add a new page
+\newcommand{\newsection}{
+    \newpage
+    \newsectionNoPB
+}
+
+% Reset definitions, lemma, etc counters, do not add new page
+\newcommand{\newsectionNoPB}{
+    \setcounter{lemmaCount}{1}
+    \setcounter{definitionCount}{1}
+    \setcounter{corollaryCount}{1}
+    \setcounter{theoremCount}{1}
+    \setcounter{axiomCount}{1}
+    \setcounter{exampleCount}{1}
+}
+\newsectionNoPB
+
+
+% Definitions
+\newtcolorbox{definition}[2][]{mainboxstyle,colback=blue!5!white,colframe=blue!75!black,colbacktitle=blue!75!black,title={\large #2},overlay={\node[overlaystyle,draw=blue!75!black,fill=blue!75!black] at (frame.north east) {\large Definition \usenumberArabic{definitions}};},#1}
+
+% Theorems
+\newtcolorbox{theorem}[2][]{mainboxstyle,colback=ForestGreen!5!white,colframe=ForestGreen!75!black,colbacktitle=ForestGreen!75!black,title={\large #2},
+overlay={\node[draw=ForestGreen!75!black,fill=ForestGreen!75!black] at (frame.north east) {\large Theorem \usenumberArabic{theorems}};},#1}
+
+\newtcolorbox{lemma}[2][]{mainboxstyle,colback=Aquamarine!5!white,colframe=Aquamarine!75!black,colbacktitle=Aquamarine!75!black,title={\large #2},
+overlay={\node[draw=Aquamarine!75!black,fill=Aquamarine!75!black] at (frame.north east) {\large Lemma \usenumberArabic{lemmas}};},#1}
+
+\newtcolorbox{corollary}[2][]{mainboxstyle,colback=teal!5!white,colframe=teal!75!black,colbacktitle=teal!75!black,title={\large #2},
+overlay={\node[draw=teal!75!black,fill=teal!75!black] at (frame.north east) {\large \translate{Corollary}{Korollar} \usenumberArabic{corollaries}};},#1}
+
+\newtcolorbox{axiom}[2][]{mainboxstyle,colback=JungleGreen!5!white,colframe=JungleGreen!75!black,colbacktitle=JungleGreen!75!black,title={\large #2},
+overlay={\node[draw=JungleGreen!75!black,fill=JungleGreen!75!black] at (frame.north east) {\large Axiom \usenumberArabic{axioms}};},#1}
+
+\newtcolorbox{example}[2][]{mainboxstyle,colback=gray!5!white,colframe=gray!75!black,colbacktitle=gray!75!black,title={\large #2},
+overlay={\node[draw=gray!75!black,fill=gray!75!black] at (frame.north east) {\large \translate{Example }{Beispiel } \usenumberArabic{examples}};},#1}
+
+
+% Shortened environments (inline)
+\newcommand{\inlineex}{\textbf{\translate{Example }{Beispiel } \hspace{0mm} \usenumberArabic{examples}}}
+\newcommand{\inlinedef}{\backdrop{Definition \hspace{0mm} \usenumberArabic{definitions}:} }
+\newcommand{\inlinelemma}{\backdrop{Lemma \hspace{0mm} \usenumberArabic{lemmas}:} }
+\newcommand{\inlinetheorem}{\backdrop{Theorem \hspace{0mm} \usenumberArabic{theorems}:} }
+\newcommand{\inlineaxiom}{\backdrop{Axiom \hspace{0mm} \usenumberArabic{axioms}:} }
+\newcommand{\inlinecorollary}{\backdrop{\translate{Corollary}{Korollar} \hspace{0mm} \usenumberArabic{corollaries}}:}
+\newcommand{\inlineproof}{\backdrop{\ifnum\value{lang}<2{Proof}\else {Beweis}\fi \hspace{0mm}:} }
diff --git a/main/style/cs.tex b/main/style/cs.tex
new file mode 100644
index 0000000..e69de29
diff --git a/main/style/language.tex b/main/style/language.tex
new file mode 100644
index 0000000..cd8c51d
--- /dev/null
+++ b/main/style/language.tex
@@ -0,0 +1,10 @@
+
+% ░█▒░▒▄▀▄░█▄░█░▄▀▒░█▒█▒▄▀▄░▄▀▒▒██▀░░░▄▀▀░▀█▀░▀▄▀░█▒░▒██▀
+% ▒█▄▄░█▀█░█▒▀█░▀▄█░▀▄█░█▀█░▀▄█░█▄▄▒░▒▄██░▒█▒░▒█▒▒█▄▄░█▄▄
+
+% Specific styles for language summaries and docs
+\newtcolorbox{conjugation}[2][]{mainboxstyle,colback=blue!5!white,colframe=blue!75!black,colbacktitle=blue!75!black,title={\large #2},
+overlay={\node[draw=blue!75!black,fill=blue!75!black] at (frame.north east) {\large \translate{Conjugation}{Konjugation}};},#1}
+
+\newtcolorbox{forms}[2][]{mainboxstyle,colback=red!5!white,colframe=red!75!black,colbacktitle=red!75!black,title={\large #2},
+overlay={\node[draw=red!75!black,fill=red!75!black] at (frame.north east) {\large \translate{Forms}{Formen}};},#1}
diff --git a/main/style/math.tex b/main/style/math.tex
new file mode 100644
index 0000000..d01f488
--- /dev/null
+++ b/main/style/math.tex
@@ -0,0 +1,15 @@
+% • ▌ ▄ ·.  ▄▄▄· ▄▄▄▄▄ ▄ .▄  .▄▄ · ▄▄▄▄▄ ▄· ▄▌▄▄▌  ▄▄▄ .
+% ·██ ▐███▪▐█ ▀█ •██  ██▪▐█  ▐█ ▀. •██  ▐█▪██▌██•  ▀▄.▀·
+% ▐█ ▌▐▌▐█·▄█▀▀█  ▐█.▪██▀▀█  ▄▀▀▀█▄ ▐█.▪▐█▌▐█▪██ ▪ ▐▀▀▪▄
+% ██ ██▌▐█▌▐█▪ ▐▌ ▐█▌·██▌▐▀  ▐█▄▪▐█ ▐█▌· ▐█▀·.▐█▌ ▄▐█▄▄▌
+% ▀▀  █▪▀▀▀ ▀  ▀  ▀▀▀ ▀▀▀ ·   ▀▀▀▀  ▀▀▀   ▀ • .▀▀▀  ▀▀▀ 
+
+% Math specific tcolorboxes
+\newtcolorbox{formula}[2][]{mainboxstyle,colback=red!5!white,colframe=red!75!black,colbacktitle=red!75!black,title={\large #2},
+overlay={\node[overlaystyle,draw=red!75!black,fill=red!75!black] at (frame.north east) {\large \ifnum\value{lang}<2{Formula}\else {Formel}\fi};},#1}
+
+
+\newtcolorbox{proof}[2][]{arc=3mm,colback=magenta!5!white,colframe=magenta!75!black,colbacktitle=magenta!75!black,fonttitle=\bfseries,
+enhanced,attach boxed title to top left={yshift=-2mm,xshift=5mm},title={\large #2},breakable,top=0.4cm,
+overlay={\node[draw=magenta!75!black,thick,fill=magenta!75!black,left,anchor=east,text=white,rounded corners=1mm,font=\bfseries,
+xshift=-5mm,yshift=1mm,inner xsep=3mm,inner ysep=1.5mm] at (frame.north east) {\large \ifnum\value{lang}<2{Proof}\else {Beweis}\fi};},#1}
diff --git a/main/style/style.tex b/main/style/style.tex
new file mode 100644
index 0000000..c4c6a99
--- /dev/null
+++ b/main/style/style.tex
@@ -0,0 +1,91 @@
+%░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
+%░░░      ░░░░░   ░░░░░░░░░░░░░   ░░░░░░░░░░░
+%▒   ▒▒▒▒   ▒▒▒   ▒▒▒▒▒▒▒▒▒▒▒▒▒   ▒▒▒▒▒▒▒▒▒▒▒
+%▒▒   ▒▒▒▒▒▒▒    ▒  ▒   ▒▒▒   ▒   ▒▒▒▒   ▒▒▒▒
+%▓▓▓▓   ▓▓▓▓▓▓▓   ▓▓▓▓   ▓   ▓▓   ▓▓  ▓▓▓   ▓
+%▓▓▓▓▓▓▓   ▓▓▓▓   ▓▓▓▓▓▓    ▓▓▓   ▓         ▓
+%▓   ▓▓▓▓   ▓▓▓   ▓ ▓▓▓▓▓   ▓▓▓   ▓  ▓▓▓▓▓▓▓▓
+%███      ██████   █████   ████   ███     ███
+%██████████████████████   ███████████████████
+
+% Global style configs for tcolorbox (to reduce bloat)
+\newcommand{\usetcolorboxes}{
+    \tcbset{
+        mainboxstyle/.style={
+            arc=3mm,
+            colback=red!5!white,
+            colframe=red!75!black,
+            colbacktitle=red!75!black,
+            fonttitle=\bfseries,
+            enhanced,
+            attach boxed title to top left={yshift=-2mm,xshift=5mm},
+            breakable,
+            top=0.4cm,
+        }
+    }
+    \tikzset{
+        overlaystyle/.style={
+            draw=red!75!black,
+            thick,
+            fill=red!75!black,
+            left,
+            anchor=east,
+            text=white,
+            rounded corners=1mm,
+            font=\bfseries,
+            xshift=-5mm,
+            yshift=1mm,
+            inner xsep=3mm,
+            inner ysep=1.5mm
+        }
+    }
+}
+
+% -------------------- %
+% Small style elements %
+% -------------------- %
+\renewcommand{\footrulewidth}{0.4pt}
+\newcommand{\TODO}{\color{red} \hl{TODO:} \color{black}}
+
+% Add a color shade (similar to \fhlc, but nicer boxes)
+\newcommand{\shade}[2]{
+    \tcbox[on line, 
+        boxsep=3pt, 
+        left=0pt,
+        right=0pt,
+        top=0pt,
+        bottom=0pt,
+        colframe=white,
+        colback=#1!20!white,
+        highlight math style={enhanced}
+    ] {\textbf{#2}}
+}
+
+% Add a gray backdrop
+\newcommand{\backdrop}[1]{
+    \shade{black}{#1}
+}
+
+
+% Fancy highlighting (Bold, underlined, colorbox behind it. Shorthand for \fhlc{white}{#1}
+\newcommand{\fhl}[1]{\fhlc{white}{#1}}
+
+% Add a colorbox around your text with the color specified. Text is bold and underlined
+\newcommand{\fhlc}[2]{\textbf{\underline{\colorbox{#1}{#2}}}}
+
+
+% ----------------- %
+% Table of contents %
+% ----------------- %
+
+% Print a table of contents as a tcolorbox
+\newcommand{\printtoc}[1]{
+    \renewcommand{\cfttoctitlefont}{}
+    \renewcommand{\cftaftertoctitle}{\vspace{-0.75cm}}
+    \renewcommand{\contentsname}{}
+    \begin{tcolorbox}[colback=black!5!white,colbacktitle=#1!75!black,coltitle=black,enhanced,attach boxed title to top center={yshift=-2mm},
+        title={\Large \ifnum\value{lang}<2{Contents}\else {Inhaltsverzeichnis}\fi},fonttitle=\bfseries,breakable]
+        \hspace{1cm}
+        \tableofcontents
+    \end{tcolorbox}
+}
diff --git a/main/tables.tex b/main/tables.tex
new file mode 100644
index 0000000..729eafd
--- /dev/null
+++ b/main/tables.tex
@@ -0,0 +1,29 @@
+%  _____       _     _              
+% (_   _)     ( )   (_ )            
+%   | |    _ _| |_   | |   __   ___ 
+%   | |  / _  )  _ \ | | / __ \  __)
+%   | | ( (_| | |_) )| |(  ___/__  \
+%   (_)  \__ _)_ __/(___)\____)____/
+                                  
+                                  
+% Create new table. #1 Layout, #2 title row
+\newenvironment{tab}[2]{
+    \begin{center}
+        \begin{tabular}{#1}
+            \toprule
+            #2\\
+            \midrule
+}{  
+            \bottomrule
+        \end{center}
+    \end{tabular}
+}
+
+% Create new table in table env. #1 layout, #2 title row, #3 caption
+\newenvironment{fullTable}[3]{
+    \begin{table}[h!]
+        \begin{tab}{#1}{#2}
+}{
+        \caption{#3}
+    \end{table}
+}
diff --git a/most.tex b/most.tex
new file mode 100644
index 0000000..eab893a
--- /dev/null
+++ b/most.tex
@@ -0,0 +1,9 @@
+\input{./barebones.tex}
+\input{./main/math.tex}
+\input{./main/cs.tex}
+\input{./main/index.tex}
+\input{./main/tables.tex}
+\input{./main/style/counters.tex}
+\input{./main/style/cs.tex}
+\input{./main/style/math.tex}
+\input{./main/style/language.tex}
diff --git a/recommended.tex b/recommended.tex
new file mode 100644
index 0000000..e2190b3
--- /dev/null
+++ b/recommended.tex
@@ -0,0 +1,2 @@
+\include{./most.tex}
+\include{./extra/bib.tex}