summaryrefslogtreecommitdiffstats
path: root/src/resume/projects.tex
blob: d321ec6625e4744d530790e19ab23e81ae865a67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
\section{Projects}

\cventry{2021--Present}{\httplink[Zone]{sr.ht/~tobyvin/zone/}}{Lightweight container management system}{}{}
{
	\begin{itemize}
		\item Management API via HTTP server
		\item Interactive terminal sessions into containers via WebSocket
		\item Written in Rust
	\end{itemize}
	Source: \url{https://sr.ht/~tobyvin/zone}
}

\cventry{2020--2021}{\httplink[SocketNews]{sr.ht/~tobyvin/socketnews/}}{Client-Server News Network}{}{}
{
	\begin{itemize}
		\item Decentralized mesh network of multithreaded servers
		\item Fully implements the \httplink[RFC 3977]{datatracker.ietf.org/doc/html/rfc3977} specification
		\item Written in Python
	\end{itemize}
	Source: \url{https://sr.ht/~tobyvin/socketnews}
}

\cventry{2017--Present}{Home Lab}{}{}{}
{
	\begin{itemize}
		\item Containerized services using Docker and Docker Compose.
		\item Run in a multi-node Docker Swarm, ensuring high availability
		\item System features:
		      \begin{itemize}
			      \item WireGuard VPN
			            \begin{itemize}
				            \item Secure remote access
				            \item Site-to-site proxy
				            \item Split-horizon DNS
			            \end{itemize}
			      \item PiHole DNS filter
			            \begin{itemize}
				            \item unbound recursive DNS server
			            \end{itemize}
			      \item Traefik reverse proxy
			            \begin{itemize}
				            \item Enable and filters public/private traffic for all services
				            \item Automated Certificates for HTTPS
			            \end{itemize}
			      \item NGINX web server
			      \item Octoprint server
			      \item Foundry VTT server
		      \end{itemize}
	\end{itemize}
}