[{"data":1,"prerenderedAt":220},["ShallowReactive",2],{"slug-content-de-\u002Fprojects\u002Fvertretungsplan":3},{"kind":4,"item":5,"categories":65},"project",{"id":6,"title":7,"body":8,"dateEnd":41,"dateStart":42,"description":43,"extension":44,"featuredInCv":45,"link":46,"meta":47,"navigation":48,"path":49,"repo":46,"seo":50,"stem":51,"tags":52,"__hash__":64},"projects_de\u002Fprojects\u002Fvertretungsplan.md","Vertretungsplan",{"type":9,"value":10,"toc":36},"minimark",[11,16,24,33],[12,13,15],"h2",{"id":14},"über-das-projekt","Über das Projekt",[17,18,19,20,23],"p",{},"Während meines Abiturs auf dem Pictorius Berufskolleg wurde eine frühe Version der Untis-Schul-Cloud eingesetzt.",[21,22],"br",{},"\nDamals gab es vom Anbieter noch keine Schnittstellen, keine Responsivität und nur wenig UX, besonders für mobile Benutzer.",[17,25,26,27,29,30,32],{},"Als Lösung habe ich ein eigenes Symfony Backend mit Web Crawler und API geschrieben, welches die Daten von dem Anbieter abruft, zwischenspeichert und aufbereitet wiedergab.",[21,28],{},"\nDazu gestellt wurde eine native Android-App, welche die Daten über die API abruft und darstellt.",[21,31],{},"\nDie App wurde über den Google Play Store verteilt und weitgehend durch die Schüle, über Kurse und Jahrgangsstufen verteilt genutzt.",[17,34,35],{},"Die App wurde von mir eingestellt, als der Anbieter der Schul Cloud eine eigene Alternative anbot und seine Schnittstellen soweit heruntergeschlossen hatte, dass ein einfaches Crawlen nicht mehr möglich war.",{"title":37,"searchDepth":38,"depth":38,"links":39},"",2,[40],{"id":14,"depth":38,"text":15},"2018-06","2017-10","Eine App um den Vertretungsplan meines Berufskollegs zu optimieren","md",false,null,{},true,"\u002Fprojects\u002Fvertretungsplan",{"title":7,"description":43},"projects\u002Fvertretungsplan",[53,54,55,56,57,58,59,60,61,62,63],"php","symfony","sql","rest","nginx","flutter","dart","android","html5","css3","git","eCXkrbR1B2p8YRTZ1eAzHgHUXEr-ngabcUeSDzTkTBY",[66,74,93,120,148,157,169,178],{"name":67,"items":68},"Datenbanken",[69,71],{"slug":55,"name":70},"SQL (MySQL, MariaDB)",{"slug":72,"name":73},"sqlite","SQLite",{"name":75,"items":76},"Frontend",[77,79,81,84,87,90],{"slug":61,"name":78},"HTML5",{"slug":62,"name":80},"CSS3",{"slug":82,"name":83},"tailwindcss","Tailwind CSS",{"slug":85,"name":86},"bootstrap","Bootstrap",{"slug":88,"name":89},"uikit","UIkit",{"slug":91,"name":92},"extjs","Ext JS",{"name":94,"items":95},"JavaScript-Ökosystem",[96,99,102,105,108,111,114,117],{"slug":97,"name":98},"javascript","JavaScript",{"slug":100,"name":101},"typescript","TypeScript",{"slug":103,"name":104},"nodejs","Node.js",{"slug":106,"name":107},"vuejs","Vue.js",{"slug":109,"name":110},"nuxt","Nuxt.JS",{"slug":112,"name":113},"react","React",{"slug":115,"name":116},"next","Next.JS",{"slug":118,"name":119},"deno","Deno",{"name":121,"items":122},"PHP-Ökosystem",[123,125,128,130,133,136,139,142,145],{"slug":53,"name":124},"PHP",{"slug":126,"name":127},"laravel","Laravel",{"slug":54,"name":129},"Symfony",{"slug":131,"name":132},"laminas","Laminas",{"slug":134,"name":135},"mezzio","Mezzio",{"slug":137,"name":138},"zend","Zend Framework",{"slug":140,"name":141},"wordpress","WordPress",{"slug":143,"name":144},"shopware","Shopware",{"slug":146,"name":147},"spryker","Spryker",{"name":149,"items":150},"Mobile",[151,153,155],{"slug":59,"name":152},"Dart",{"slug":58,"name":154},"Flutter",{"slug":60,"name":156},"Android",{"name":158,"items":159},"Weitere Sprachen",[160,163,166],{"slug":161,"name":162},"java","Java",{"slug":164,"name":165},"python","Python",{"slug":167,"name":168},"go","Go",{"name":170,"items":171},"Betriebssysteme",[172,175],{"slug":173,"name":174},"linux","Linux",{"slug":176,"name":177},"windows","Windows",{"name":179,"items":180},"Sonstiges",[181,183,186,189,192,195,198,200,203,206,209,212,214,217],{"slug":63,"name":182},"Git",{"slug":184,"name":185},"docker","Docker",{"slug":187,"name":188},"jenkins","Jenkins",{"slug":190,"name":191},"jvm","JVM",{"slug":193,"name":194},"aws","AWS",{"slug":196,"name":197},"cloudflare","Cloudflare",{"slug":57,"name":199},"Nginx",{"slug":201,"name":202},"redis","Redis",{"slug":204,"name":205},"networking","Netzwerk",{"slug":207,"name":208},"rabbitmq","RabbitMQ",{"slug":210,"name":211},"oidc","OIDC",{"slug":56,"name":213},"REST",{"slug":215,"name":216},"terraform","Terraform",{"slug":218,"name":219},"cicd","CI\u002FCD",1783417754752]