[{"data":1,"prerenderedAt":176},["ShallowReactive",2],{"project:sk:copystaq":3,"portfolio:sk":80},{"id":4,"slug":4,"title":5,"shortDescription":6,"description":7,"role":8,"featured":9,"technologies":10,"media":38,"links":55,"sections":59},"copystaq","copyStaq","Natívny správca schránky pre macOS s prehľadávateľnou históriou textov a obrázkov, inteligentnými filtrami a rýchlym vkladaním. Súčasťou projektu je produktový web, licenčný backend a distribúcia aktualizácií.","copyStaq pomáha nájsť a znovu použiť skopírovaný obsah bez návratu do pôvodnej aplikácie. Desktopová aplikácia uchováva históriu lokálne; web zabezpečuje prezentáciu produktu, sťahovanie, nákup a správu licencií.","Vývoj macOS aplikácie, produktového webu, backendu, licencií a distribúcie aktualizácií.",true,[11,14,17,20,23,26,29,32,35],{"id":12,"name":13},"swift","Swift",{"id":15,"name":16},"swiftui","SwiftUI",{"id":18,"name":19},"appkit","AppKit",{"id":21,"name":22},"sqlite","SQLite",{"id":24,"name":25},"nuxt","Nuxt",{"id":27,"name":28},"typescript","TypeScript",{"id":30,"name":31},"postgresql","PostgreSQL",{"id":33,"name":34},"prisma","Prisma",{"id":36,"name":37},"docker","Docker",[39,47],{"id":40,"src":41,"alt":42,"width":43,"height":44,"srcSet":45,"caption":46},"app","\u002Fimages\u002Fprojects\u002Fcopystaq\u002Fapp.jpg","Aplikácia copyStaq na macOS s históriou schránky, vyhľadávaním, filtrami a tagmi",1280,720,"\u002Fimages\u002Fprojects\u002Fcopystaq\u002Fapp-640.webp 640w, \u002Fimages\u002Fprojects\u002Fcopystaq\u002Fapp-960.webp 960w, \u002Fimages\u002Fprojects\u002Fcopystaq\u002Fapp-1280.webp 1280w","História schránky a filtre v macOS aplikácii — ukážka z verejného produktového dema.",{"id":48,"src":49,"alt":50,"width":51,"height":52,"srcSet":53,"caption":54},"home","\u002Fimages\u002Fprojects\u002Fcopystaq\u002Fhome.jpg","Produktový web copyStaq s predstavením aplikácie a ukážkou okna Quick Paste",1265,712,"\u002Fimages\u002Fprojects\u002Fcopystaq\u002Fhome-640.webp 640w, \u002Fimages\u002Fprojects\u002Fcopystaq\u002Fhome-960.webp 960w, \u002Fimages\u002Fprojects\u002Fcopystaq\u002Fhome-1265.webp 1265w","Produktový web s predstavením aplikácie a odkazom na stiahnutie.",[56],{"label":57,"url":58},"live","https:\u002F\u002Fcopystaq.app\u002F",[60,64,68,71,73,76],{"type":61,"heading":62,"body":63},"text","Zadanie a prístup","Prepojiť každodennú prácu so schránkou s nástrojom, ktorý ovládaš klávesnicou. Projekt zahŕňa natívnu macOS aplikáciu aj webové zázemie pre distribúciu a licencie.",{"type":65,"heading":66,"body":67},"feature","História, vyhľadávanie a Quick Paste","Aplikácia uchováva text, RTF a HTML formátovanie aj obrázky. SQLite s fulltextovým indexom podporuje vyhľadávanie; filtre podľa aplikácie, typu, dátumu, tagov či poznámok sa dajú uložiť. Quick Paste otvorí históriu globálnou skratkou a vloží vybraný obsah do aktívnej aplikácie.",{"type":65,"heading":69,"body":70},"Lokálne dáta a natívne rozhranie","SwiftUI a AppKit prepájajú hlavné okno, menu bar a panel Quick Paste. História zostáva na Macu. Pravidlá zachytávania umožňujú vylúčiť vybrané aplikácie a správcov hesiel; dôležité položky možno pripnúť, označiť tagmi a doplniť poznámkou.",{"type":72,"mediaId":48},"image",{"type":65,"heading":74,"body":75},"Produktový web a licenčný backend","Viacjazyčný web v Nuxt, Vue a TypeScript dopĺňa PostgreSQL s Prisma. Integrácia Lemon Squeezy zabezpečuje checkout a licencie; zákaznícky účet používa prihlásenie e-mailovým odkazom cez Resend. Backend spravuje aktivácie a vydáva podpísané licenčné oprávnenia, ktoré aplikácia overuje lokálne.",{"type":77,"heading":78,"body":79},"technical-details","Distribúcia a aktualizácie","Aplikácia sa distribuuje ako DMG a aktualizácie zabezpečuje Sparkle s Ed25519 podpismi. Publikovanie overuje balík aj appcast a sprístupní aktualizačný feed až po nahratí súborov. Webové zázemie beží v Docker kontajneroch za Nginx a Traefik.",{"projects":81,"experience":164,"technologies":165,"profile":166},[82,105],{"id":4,"slug":4,"title":5,"shortDescription":6,"description":7,"role":8,"featured":9,"technologies":83,"media":93,"links":96,"sections":98},[84,85,86,87,88,89,90,91,92],{"id":12,"name":13},{"id":15,"name":16},{"id":18,"name":19},{"id":21,"name":22},{"id":24,"name":25},{"id":27,"name":28},{"id":30,"name":31},{"id":33,"name":34},{"id":36,"name":37},[94,95],{"id":40,"src":41,"alt":42,"width":43,"height":44,"srcSet":45,"caption":46},{"id":48,"src":49,"alt":50,"width":51,"height":52,"srcSet":53,"caption":54},[97],{"label":57,"url":58},[99,100,101,102,103,104],{"type":61,"heading":62,"body":63},{"type":65,"heading":66,"body":67},{"type":65,"heading":69,"body":70},{"type":72,"mediaId":48},{"type":65,"heading":74,"body":75},{"type":77,"heading":78,"body":79},{"id":106,"slug":107,"title":108,"shortDescription":109,"description":110,"role":111,"featured":9,"technologies":112,"media":121,"links":140,"sections":143},"immaculata","restaurovanie-immaculata","Reštaurovanie Immaculata","Viacjazyčný web pre prezentáciu reštaurátorských a umeleckých prác. Verejnú galériu dopĺňa vlastná administrácia obsahu, fotografií a požiadaviek od návštevníkov.","Cieľom bolo prepojiť vizuálnu prezentáciu realizácií s praktickou správou webu. Klient môže upravovať stránky, pridávať práce a fotografie aj spracovať otázky z kontaktného formulára v jednej administrácii.","Frontend, backend, CMS a vlastný hosting — od verejného webu po správu obsahu a nasadenie.",[113,114,117,120],{"id":24,"name":25},{"id":115,"name":116},"laravel","Laravel",{"id":118,"name":119},"filament","Filament",{"id":36,"name":37},[122,128,134],{"id":48,"src":123,"alt":124,"width":43,"height":125,"srcSet":126,"caption":127},"\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fhome.jpg","Úvodná stránka Immaculata s hlavnou fotografiou a úvodom do reštaurátorských služieb",1000,"\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fhome-640.webp 640w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fhome-960.webp 960w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fhome-1280.webp 1280w","Úvodná stránka verejného webu.",{"id":129,"src":130,"alt":131,"width":43,"height":44,"srcSet":132,"caption":133},"works","\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fworks.jpg","Prehľad reštaurátorských prác s vyhľadávaním a fotografiou realizácie","\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fworks-640.webp 640w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fworks-960.webp 960w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fworks-1280.webp 1280w","Prehľad realizácií s vyhľadávaním.",{"id":135,"src":136,"alt":137,"width":43,"height":44,"srcSet":138,"caption":139},"detail","\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fdetail.jpg","Detail reštaurátorskej práce s fotografickou galériou","\u002Fimages\u002Fprojects\u002Fimmaculata\u002Fdetail-640.webp 640w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fdetail-960.webp 960w, \u002Fimages\u002Fprojects\u002Fimmaculata\u002Fdetail-1280.webp 1280w","Fotografie a detail konkrétnej realizácie.",[141],{"label":57,"url":142},"https:\u002F\u002Frestaurovanie-immaculata.sk\u002F",[144,146,149,152,155,158,161],{"type":61,"heading":62,"body":145},"Web má ukázať výsledky reštaurátorskej práce a pomôcť návštevníkovi dostať sa od ukážky realizácie ku kontaktu. Dôraz je na fotografie, prehľadnú navigáciu a lokalizovaný obsah v slovenčine, češtine a angličtine.",{"type":65,"heading":147,"body":148},"Verejný web","Frontend v Nuxt a Vue prezentuje služby, prehľad prác a detaily s fotogalériou. Obsah načítava cez API z backendu. Vyhľadávanie pomáha nájsť realizácie podľa názvu alebo lokality.",{"type":150,"mediaIds":151},"gallery",[129,135],{"type":65,"heading":153,"body":154},"Administrácia a správa fotografií","Backend v Laravel s administráciou Filament tvorí jednoduché CMS. Správa stránok, obsahových sekcií, navigácie, realizácií a lokalizovaných textov je spojená s knižnicou médií a priraďovaním fotografií k obsahu.",{"type":65,"heading":156,"body":157},"Požiadavky z kontaktného formulára","Otázky od návštevníkov sa ukladajú do backendu. V administrácii ich možno spracovať podľa stavu a doplniť interné poznámky, aby komunikácia zostala prehľadná.",{"type":77,"heading":159,"body":160},"Vlastný hosting a nasadenie","Aplikácia beží v Docker kontajneroch na našom dedikovanom serveri, ktorý hostí aj ďalšie projekty. Požiadavka prechádza cez Nginx a Traefik do príslušnej aplikácie. Súčasťou realizácie bola príprava vlastného hostingu a nasadenie frontendovej aj backendovej časti.",{"type":61,"heading":162,"body":163},"Výsledok","Jedno riešenie spája prezentáciu prác, každodennú správu obsahu, fotografie a požiadavky od návštevníkov. Oddelený frontend a backend umožňujú rozvíjať verejný web aj administráciu samostatne.",[],[],{"id":167,"displayName":168,"role":169,"introduction":170,"email":171,"links":172},"linko","Linko","Softvérový vývojár","Vyvíjam webové aplikácie od používateľského rozhrania a backendu po nasadenie.","info@link0.eu",[173],{"id":174,"label":174,"url":175},"github","https:\u002F\u002Fgithub.com\u002F4713n",1791122151467]