product.tex\newcommand\objA{{a}} \newcommand\objB{{b}} \newcommand\objAB{{a \times b}} \newcommand\objX{{x}}
\newcommand\arrsP{{\pi}}
\newcommand\arrF{{f}} \newcommand\arrG{{g}} \newcommand\arrUni{{(f,g)}}
\begin{tikzcd}[ampersand replacement=\&,row sep=large]
\& \objX \arrow[ld,"\arrF"'] \arrow[d,dashed, "\arrUni"description] \arrow[rd,"\arrG"]\\
\objA \& \objAB \arrow[l,"\arrsP_\objA"]\arrow[r,"\arrsP_\objB"'] \& \objB
\end{tikzcd}
coprod.tex\newcommand\objA{{a}} \newcommand\objB{{b}} \newcommand\objAB{{a \amalg b}} \newcommand\objX{{x}}
\newcommand\arrsP{{\mu}}
\newcommand\arrF{{f}} \newcommand\arrG{{g}} \newcommand\arrUni{{[f,g]}}
\begin{tikzcd}[ampersand replacement=\&,row sep=large]
\objA\arrow[rd,"\arrF"']\arrow[r,"\arrsP _\objA"] \& \objAB \arrow[d, dashed, "\arrUni"description] \& \objB \arrow[l,"\arrsP _\objB"']\arrow[ld,"\arrG"] \\
\& \objX \&
\end{tikzcd}
equalizer.tex\newcommand\objA{{a}} \newcommand\objB{{b}} \newcommand\objC{{c}} \newcommand\objX{{x}}
\newcommand\arrF{{f}} \newcommand\arrG{{g}} \newcommand\arrE{{e}}
\newcommand\arrArb{{\forall}} \newcommand\arrUni{{\exists !}}
\begin{tikzcd}[ampersand replacement=\&]
\objX\arrow[d, dashed, "\arrUni"']\arrow[rd,"\arrArb"] \& \& \\
\objC\arrow[r,"\arrE"'] \&\objA \arrow[r,yshift=2pt,"\arrF"]\arrow[r,yshift=-2pt,"\arrG"'] \&\objB
\end{tikzcd}
coequalizer.tex\newcommand\objA{{a}} \newcommand\objB{{b}} \newcommand\objC{{c}} \newcommand\objX{{x}}
\newcommand\arrF{{f}} \newcommand\arrG{{g}} \newcommand\arrE{{e}}
\newcommand\arrArb{{\forall}} \newcommand\arrUni{{\exists !}}
\begin{tikzcd}[ampersand replacement=\&]
\objA \arrow[r,yshift=2pt,"\arrF"]\arrow[r,yshift=-2pt,"\arrG"'] \&\objB \arrow[r,"\arrE"] \arrow[rd,"\arrArb"'] \&\objC\arrow[d, dashed, "\arrUni"]\\
\& \&\objX
\end{tikzcd}
lim1.tex\begin{tikzcd}[row sep=small]
& &a.T\arrow[dd, "f.T"] \\
x\arrow[r, dotted, "\exists !"]\arrow[rru, bend left, "\theta_a"']\arrow[rrd, bend right, "\theta_b"] &\lim T\arrow[ru, "\pi_a"']\arrow[rd,"\pi_b"]&\\
& &b.T
\end{tikzcd}
lim2.tex\begin{tikzcd}
1 \arrow[rd,"\lim T"]\arrow[r,phantom,""'name=U] & \ \\
J\arrow[u,"!"]\arrow[r,"T"'name=D] & C \arrow[shorten <=20pt,shorten >=4pt,pos=0.7,Rightarrow,from=U,to=D,"\pi"']
\end{tikzcd}
colim1.tex\begin{tikzcd}[row sep=small]
a.T\arrow[dd, "f.T"']\arrow[rd, "\mu_a"']\arrow[rrd, bend left, "\theta_a"'] & & \\
&{\colim T}\arrow[r, dotted, "\exists !"] &x\\
b.T\arrow[ru, "\mu_b"]\arrow[rru, bend right, "\theta_b"] & &
\end{tikzcd}
colim2.tex\begin{tikzcd}
1 \arrow[rd,"\mathrm{colim} T"]\arrow[r,phantom,""'name=U] & \ \\
J \arrow[u,"!"]\arrow[r,"T"'name=D] & C \arrow[shorten <=20pt,shorten >=4pt,pos=0.75,Leftarrow,from=U,to=D,"\mu"']
\end{tikzcd}
adjoint1.tex\begin{tikzcd}[column sep=small]
C \arrow[rd,"L"']\arrow[rr,equal,"C^\circ"]& \arrow[d,shorten >=4pt,Rightarrow,pos=0.4,"\eta"] & C\\
& D \arrow[ru,"R"']
\end{tikzcd}
adjoint2.tex\begin{tikzcd}[column sep=small]
& C \arrow[rd,"L"] \arrow[d,shorten >=4pt,shorten <=4pt,Rightarrow,"\varepsilon"] & \\
D \arrow[ru,"R"] \arrow[rr,equal,"D^\circ"']& \ & D
\end{tikzcd}
algebra.tex\begin{tikzcd}
s.F \arrow[r,yshift=2pt,"l"]\arrow[r,yshift=-2pt,"r"'] &g.F\arrow[r,"e"]\arrow[rd,"\forall"'] &a\arrow[d, dashed, "\exists !"]\\
& &x
\end{tikzcd}