[{"data":1,"prerenderedAt":365},["ShallowReactive",2],{"projects":3},[4,57,77,97,123,142,162,182,203,223,253,272,291,310,329,347],{"_path":5,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":9,"description":10,"name":11,"date":12,"source_url":13,"demo_url":14,"img1_url":15,"skills":16,"body":17,"_type":51,"_id":52,"_source":53,"_file":54,"_stem":55,"_extension":56},"\u002Fprojects\u002F1-recipes","projects",false,"","1 Recipes","\nA web app for finding recipes that can be cooked with ingredients you already have.\n\nInteresting for students, the ecologically conscious or people in (covid-)isolation who do not want to leave the home.\n","Inverse Receipe Finder","2019","https:\u002F\u002Fgithub.com\u002FAskill\u002FInverse-Rezeptsuche","https:\u002F\u002Firs.projects.emiliamatz.de","\u002Fstatic\u002F4.png","Fullstack, Webscraping, Python, JS, PostgreSQL, Pandas, ORM, Flask, FlaskRESTful, SQLAlchemy, NLP, Data Engineering",{"type":18,"children":19,"toc":48},"root",[20,34,45],{"type":21,"tag":22,"props":23,"children":24},"element","p",{},[25,28,32],{"type":26,"value":27},"text","\nA web app for finding recipes that can be cooked with ingredients you already have.\n",{"type":21,"tag":29,"props":30,"children":31},"br",{},[],{"type":26,"value":33},"\nInteresting for students, the ecologically conscious or people in (covid-)isolation who do not want to leave the home.\n",{"type":21,"tag":22,"props":35,"children":36},{},[37,39,42],{"type":26,"value":38},"Queries are performed on a dataset of 10,000 recipes and take less than 0.5s.\n",{"type":21,"tag":29,"props":40,"children":41},{},[],{"type":21,"tag":29,"props":43,"children":44},{},[],{"type":21,"tag":29,"props":46,"children":47},{},[],{"title":8,"searchDepth":49,"depth":49,"links":50},2,[],"markdown","content:projects:1-recipes.md","content","projects\u002F1-recipes.md","projects\u002F1-recipes","md",{"_path":58,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":59,"description":60,"name":61,"date":62,"source_url":63,"video_url":64,"skills":65,"body":66,"_type":51,"_id":74,"_source":53,"_file":75,"_stem":76,"_extension":56},"\u002Fprojects\u002F2-videosynopsis","2 Videosynopsis","\nA Python based project to summarize and classify all events in the video of a static camera. The classification could be done with several classifiers one after the other or in parallel to allow for more accurate filtering.  \n","Video Synopsis","2020","https:\u002F\u002Fgithub.com\u002FAskill\u002FVideo-Synopsis","\u002Fstatic\u002Fx23.mp4","Backend, Python, Video Processing, MLP, Multiprocssing, Object Detection, OpenCV, numpy, tensorflow",{"type":18,"children":67,"toc":72},[68],{"type":21,"tag":22,"props":69,"children":70},{},[71],{"type":26,"value":60},{"title":8,"searchDepth":49,"depth":49,"links":73},[],"content:projects:2-videosynopsis.md","projects\u002F2-videosynopsis.md","projects\u002F2-videosynopsis",{"_path":78,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":79,"description":80,"name":81,"date":82,"demo_url":83,"img1_url":84,"skills":85,"body":86,"_type":51,"_id":94,"_source":53,"_file":95,"_stem":96,"_extension":56},"\u002Fprojects\u002F3-personal","3 Personal","\nMy personal website, that you are currently on. Written in NUXT, which combines NEXTjs and Vue3.\n","Personal Website","2023","https:\u002F\u002Femiliamatz.de\u002FProjects","\u002Fstatic\u002Fpersonal.png","Fullstack, JS, NUXT, Vue3, Next",{"type":18,"children":87,"toc":92},[88],{"type":21,"tag":22,"props":89,"children":90},{},[91],{"type":26,"value":80},{"title":8,"searchDepth":49,"depth":49,"links":93},[],"content:projects:3-personal.md","projects\u002F3-personal.md","projects\u002F3-personal",{"_path":98,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":99,"description":100,"name":101,"date":102,"source_url":103,"img1_url":104,"skills":105,"body":106,"_type":51,"_id":120,"_source":53,"_file":121,"_stem":122,"_extension":56},"\u002Fprojects\u002F4-ioi","4 Ioi","\nA Python and C# based HS project.\n\nEnables simultaneous monitoring of multiple video streams and control of connected devices\ndepending on whether there are people in the monitored area.\nThis project uses a CNN pre-trained by Google.\n","IoI (Interaction without Interaction)","2018","https:\u002F\u002Fgithub.com\u002FAskill\u002FUI","\u002Fstatic\u002FIoI.png","Fullstack, Python, C#, Video Processing, VideoStreaming, MLP, Object Detection, OpenCV, numpy, tensorflow",{"type":18,"children":107,"toc":118},[108],{"type":21,"tag":22,"props":109,"children":110},{},[111,113,116],{"type":26,"value":112},"\nA Python and C# based HS project.\n",{"type":21,"tag":29,"props":114,"children":115},{},[],{"type":26,"value":117},"\nEnables simultaneous monitoring of multiple video streams and control of connected devices\ndepending on whether there are people in the monitored area.\nThis project uses a CNN pre-trained by Google.\n",{"title":8,"searchDepth":49,"depth":49,"links":119},[],"content:projects:4-ioi.md","projects\u002F4-ioi.md","projects\u002F4-ioi",{"_path":124,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":125,"description":126,"name":127,"date":62,"source_url":128,"img1_url":129,"skills":130,"body":131,"_type":51,"_id":139,"_source":53,"_file":140,"_stem":141,"_extension":56},"\u002Fprojects\u002F5-facialrecognition","5 Facialrecognition","\nA web app that can be locally deployed on a low powered laptop to perform facial recognition on a live video feed and output data saved in a database for that person. The app uses SQLAlchemy and SQLite for easy deployment, however the DB could be switched out to any other by simply changing the Database URL. It was developed for my biometrics professor to demo to visiting school classes and other visitors.  \n","Facial Recognition (local) web app","https:\u002F\u002Fgithub.com\u002FAskill\u002FFacialRecognition-Demo","https:\u002F\u002Fgithub.com\u002FAskill\u002FFacialRecognition-Demo\u002Fraw\u002Fmaster\u002Fimages\u002F1.png","Fullstack, Python, JS, Facial Recognition, Video Streaming, OpenCV, ORM, SQLAlchemy, SQLite",{"type":18,"children":132,"toc":137},[133],{"type":21,"tag":22,"props":134,"children":135},{},[136],{"type":26,"value":126},{"title":8,"searchDepth":49,"depth":49,"links":138},[],"content:projects:5-facialrecognition.md","projects\u002F5-facialrecognition.md","projects\u002F5-facialrecognition",{"_path":143,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":144,"description":145,"name":146,"date":102,"source_url":147,"img2_url":148,"img1_url":149,"skills":150,"body":151,"_type":51,"_id":159,"_source":53,"_file":160,"_stem":161,"_extension":56},"\u002Fprojects\u002F8-mosaik","8 Mosaik","\nA tool to create mosaics from jpgs, by splitting a given image in x*y chunks and replacing those chunks with the closest match from a number of replacement images. It has a GUI, if you like that sort of thing.  \n","Mosaik","https:\u002F\u002Fgithub.com\u002FAskill\u002Fmosaik","https:\u002F\u002Fgithub.com\u002FAskill\u002Fmosaik\u002Fraw\u002Fmaster\u002Fmerkel.png","https:\u002F\u002Fgithub.com\u002FAskill\u002Fmosaik\u002Fraw\u002Fmaster\u002FDownload.png","Java, Image Processing, GUI",{"type":18,"children":152,"toc":157},[153],{"type":21,"tag":22,"props":154,"children":155},{},[156],{"type":26,"value":145},{"title":8,"searchDepth":49,"depth":49,"links":158},[],"content:projects:8-mosaik.md","projects\u002F8-mosaik.md","projects\u002F8-mosaik",{"_path":163,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":164,"description":165,"name":166,"date":12,"source_url":167,"img2_url":168,"img1_url":169,"skills":170,"body":171,"_type":51,"_id":179,"_source":53,"_file":180,"_stem":181,"_extension":56},"\u002Fprojects\u002F9-lines","9 Lines","\nGenerate a line relief from a picture similar to the cover of Joy Devision's \"Unknown Pleasure\". \n","Img-to-relief","https:\u002F\u002Fgithub.com\u002FAskill\u002FImg-to-relief","https:\u002F\u002Fgithub.com\u002FAskill\u002FImg-to-relief\u002Fraw\u002Fmaster\u002Fmkbhd.png","https:\u002F\u002Fgithub.com\u002FAskill\u002FImg-to-relief\u002Fraw\u002Fmaster\u002FFigure_1.png","Python, Backend",{"type":18,"children":172,"toc":177},[173],{"type":21,"tag":22,"props":174,"children":175},{},[176],{"type":26,"value":165},{"title":8,"searchDepth":49,"depth":49,"links":178},[],"content:projects:9-lines.md","projects\u002F9-lines.md","projects\u002F9-lines",{"_path":183,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":184,"description":185,"name":186,"date":187,"source_url":188,"demo_url":189,"img1_url":190,"skills":191,"body":192,"_type":51,"_id":200,"_source":53,"_file":201,"_stem":202,"_extension":56},"\u002Fprojects\u002F9b-sitemapper","9b Sitemapper","\nA Python and JS based web scraper for mapping websites and visualize them as a graph.\n","Site Mapper","2021","https:\u002F\u002Fgithub.com\u002FAskill\u002FFlask-URL-Checker","\u002Fdemos\u002Fmapper","\u002Fstatic\u002Fgoogle.png","Fullstack, Python, JS, Webscraping, Graphs",{"type":18,"children":193,"toc":198},[194],{"type":21,"tag":22,"props":195,"children":196},{},[197],{"type":26,"value":185},{"title":8,"searchDepth":49,"depth":49,"links":199},[],"content:projects:9b-sitemapper.md","projects\u002F9b-sitemapper.md","projects\u002F9b-sitemapper",{"_path":204,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":205,"description":206,"name":207,"date":12,"source_url":208,"img1_url":209,"demo_url":210,"skills":211,"body":212,"_type":51,"_id":220,"_source":53,"_file":221,"_stem":222,"_extension":56},"\u002Fprojects\u002F9bb-photowall","9bb Photowall","\nA mock-up tool for photographers with a custom JS based 2d render engine.\n","Photo Wall","https:\u002F\u002Fgithub.com\u002FAskill\u002FPhoto-Wall","https:\u002F\u002Fgithub.com\u002FAskill\u002FPhoto-Wall\u002Fblob\u002Fmaster\u002Fmock-it.png?raw=true","\u002Fdemos\u002Fphotowall","Frontend, JS, HTML, CSS, Computer Graphics",{"type":18,"children":213,"toc":218},[214],{"type":21,"tag":22,"props":215,"children":216},{},[217],{"type":26,"value":206},{"title":8,"searchDepth":49,"depth":49,"links":219},[],"content:projects:9bb-photowall.md","projects\u002F9bb-photowall.md","projects\u002F9bb-photowall",{"_path":224,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":225,"description":226,"name":227,"date":228,"source_url":229,"img1_url":230,"skills":231,"body":232,"_type":51,"_id":250,"_source":53,"_file":251,"_stem":252,"_extension":56},"\u002Fprojects\u002F11-place","11 Place","\nA go based  r\u002Fplace clone. \n","r\u002Fplace clone in Go","2022","https:\u002F\u002Fgithub.com\u002FAskill\u002Fr_place","https:\u002F\u002Fgithub.com\u002FAskill\u002Fr_place\u002Fraw\u002Fmain\u002Fimages\u002FgetAll.png","Backend, GOlang, Python, Websockets",{"type":18,"children":233,"toc":248},[234],{"type":21,"tag":22,"props":235,"children":236},{},[237,239,246],{"type":26,"value":238},"\nA go based ",{"type":21,"tag":240,"props":241,"children":243},"a",{"href":242},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FR\u002Fplace",[244],{"type":26,"value":245}," r\u002Fplace",{"type":26,"value":247}," clone. \n",{"title":8,"searchDepth":49,"depth":49,"links":249},[],"content:projects:11-place.md","projects\u002F11-place.md","projects\u002F11-place",{"_path":254,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":255,"description":256,"name":257,"date":228,"source_url":258,"img1_url":259,"skills":260,"body":261,"_type":51,"_id":269,"_source":53,"_file":270,"_stem":271,"_extension":56},"\u002Fprojects\u002F12a-optar","12a Optar","\nThis tool crawls all pages on a given website to the provided depth and finds new pages by comparing the new site tree to the cached one. All new pages are then checked to contain any of the provided keywords. If there is a match the page will be highlighted for the reader. Default timeout 1h, list of keywords and sites can be changed while the software is running.  \n","Optar","https:\u002F\u002Fgithub.com\u002FAskill\u002Foptar","\u002Fstatic\u002Foptar.png","Backend, Python, Webscraping",{"type":18,"children":262,"toc":267},[263],{"type":21,"tag":22,"props":264,"children":265},{},[266],{"type":26,"value":256},{"title":8,"searchDepth":49,"depth":49,"links":268},[],"content:projects:12a-optar.md","projects\u002F12a-optar.md","projects\u002F12a-optar",{"_path":273,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":274,"description":275,"name":276,"date":12,"source_url":277,"img1_url":278,"skills":279,"body":280,"_type":51,"_id":288,"_source":53,"_file":289,"_stem":290,"_extension":56},"\u002Fprojects\u002F12b-survbot","12b Survbot","\nThis daemon monitors a video feed and notifies the user via a telegram bot if motion has been detected. It can be enabled\u002Fdisabled via chat commands (\"\u002Fstart\", \"\u002Fstop\")  \n","SurvBot","https:\u002F\u002Fgithub.com\u002FAskill\u002FSurvBot","\u002Fstatic\u002Fsurvbot.png","Backend, Python, Video Processing, Flask, OpenCV",{"type":18,"children":281,"toc":286},[282],{"type":21,"tag":22,"props":283,"children":284},{},[285],{"type":26,"value":275},{"title":8,"searchDepth":49,"depth":49,"links":287},[],"content:projects:12b-survbot.md","projects\u002F12b-survbot.md","projects\u002F12b-survbot",{"_path":292,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":293,"description":294,"name":295,"date":12,"source_url":296,"img1_url":297,"skills":298,"body":299,"_type":51,"_id":307,"_source":53,"_file":308,"_stem":309,"_extension":56},"\u002Fprojects\u002F13-caddui","13 Caddui","\nA web UI to generate Caddyfiles for simple reverse proxies.\n","Caddy Web UI","https:\u002F\u002Fgithub.com\u002FAskill\u002FCaddy-Web-UI","https:\u002F\u002Fgithub.com\u002FAskill\u002FCaddy-Web-UI\u002Fraw\u002Fmaster\u002Fimages\u002Fdemo.PNG","Fullstack, Go, JS",{"type":18,"children":300,"toc":305},[301],{"type":21,"tag":22,"props":302,"children":303},{},[304],{"type":26,"value":294},{"title":8,"searchDepth":49,"depth":49,"links":306},[],"content:projects:13-caddui.md","projects\u002F13-caddui.md","projects\u002F13-caddui",{"_path":311,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":312,"description":313,"name":314,"date":102,"source_url":315,"img1_url":316,"skills":317,"body":318,"_type":51,"_id":326,"_source":53,"_file":327,"_stem":328,"_extension":56},"\u002Fprojects\u002F14-p","14 P","\nA paper on how I implemented a containerized CI\u002FCD Pipeline for the DVZ-MV using Openshift, which became the blueprint for a follow-up project lasting 2 years and resulting in this workflow becoming the new operating procedure. Grade: 1.0  \n","Paper: Containerized CI\u002FCD with Openshift for E-Government (German)","\u002Fstatic\u002Fpraktikum.pdf","\u002Fstatic\u002Fpaper.png","DevOps, Jenkins, Openshift, Gitlab, Docker, Kubernetes",{"type":18,"children":319,"toc":324},[320],{"type":21,"tag":22,"props":321,"children":322},{},[323],{"type":26,"value":313},{"title":8,"searchDepth":49,"depth":49,"links":325},[],"content:projects:14-p.md","projects\u002F14-p.md","projects\u002F14-p",{"_path":330,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":331,"description":332,"name":333,"date":62,"source_url":334,"img1_url":316,"skills":335,"body":336,"_type":51,"_id":344,"_source":53,"_file":345,"_stem":346,"_extension":56},"\u002Fprojects\u002F15-b","15 B","\nBy Bachelor Thesis on how to design and implement a highly distributed system of self-contained systems and integrate them in a way that is imperceptible by the user, while also have near-zero development overhead despite being deployed in a zero-trust network. This was achieved by utilizing the ambassador pattern in a way that could easily be deployed on VM as well as Kubernetes or OpenShift. Grade: 1.0 \n","Bachelor Thesis: Self-Contained Systems in Zero Trust Networks (German)","\u002Fstatic\u002Fbachelor.pdf","Fullstack, DevOps, Architecture, Java, Python, JS, Openshift",{"type":18,"children":337,"toc":342},[338],{"type":21,"tag":22,"props":339,"children":340},{},[341],{"type":26,"value":332},{"title":8,"searchDepth":49,"depth":49,"links":343},[],"content:projects:15-b.md","projects\u002F15-b.md","projects\u002F15-b",{"_path":348,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":349,"description":350,"name":351,"date":187,"source_url":352,"img1_url":316,"skills":353,"body":354,"_type":51,"_id":362,"_source":53,"_file":363,"_stem":364,"_extension":56},"\u002Fprojects\u002F16-m","16 M","\nMy Master Thesis, which combined papers and projects of the last 25 years in a novel approach to trace, profile and simulate distributed applications, which can be implemented in any programming language. This allows for the simulation of loads that are hard or impossible to construct due to not having control over all edges of a distributed system, which might become a bottleneck. Grade: 1.0 \n","Master Thesis: Automatic profiling and simulation of heterogenous distributed applications using DES (German)","\u002Fstatic\u002Fmaster.pdf","Architecture, Fullstack, Discrete Event Simulation (DES), Java, Python, Dash, Plotly, Numpy",{"type":18,"children":355,"toc":360},[356],{"type":21,"tag":22,"props":357,"children":358},{},[359],{"type":26,"value":350},{"title":8,"searchDepth":49,"depth":49,"links":361},[],"content:projects:16-m.md","projects\u002F16-m.md","projects\u002F16-m",1776860292373]