[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-en-digispace":3,"technology-slugs-en":54,"mdc-j9lgz0-key":78},{"id":4,"title":5,"content":6,"date":7,"description":8,"extension":9,"featured":10,"image":11,"links":12,"meta":23,"stack":24,"stem":49,"tags":50,"url":15,"__hash__":53},"projects_en\u002Fen\u002Fprojects\u002Fdigispace.yml","DigiSpace","The production website behind digispace.pro — the agency's public site, admin panel and custom CMS in a single Laravel app, now fully multilingual (EN\u002FUK\u002FPL) with a Filament admin panel running alongside the legacy Inertia + Vue one. The same code that runs the live site is available on GitHub.\n\n## Key Features\n\n- **Filament admin panel** - a parallel `\u002Fcontrol` panel (24 resources) with a TipTap rich editor, straight-to-MinIO image uploads and content-first navigation, rolled out resource-by-resource next to the existing Inertia admin\n- **Multilingual by design** - both content and structural UI strings (menus, footer, buttons) are translated per locale, not just page text, with hreflang-aware localized routing\n- **SEO built in** - JSON-LD structured data, localized sitemaps and proper 404 handling across every locale\n- **Monolith done right** - public site and two admin surfaces live in one Laravel app, no separate API to maintain\n- **Self-managed content** - pages, services and portfolio entries are edited in the CMS — no deploy needed for a text or translation change\n- **Quality gates** - PHPUnit tests and PHPStan static analysis run in CI\n- **Source available** - the exact code serving digispace.pro is public on GitHub\n\n## Tech Stack\n\n- **Backend**: Laravel\n- **Admin**: Filament 5 (`\u002Fcontrol`) + legacy Inertia.js + Vue admin\n- **Frontend**: Vue.js, Vite\n- **Localization**: EN\u002FUK\u002FPL content and structure translations\n- **Architecture**: Custom CMS\n","2022-10-05","The agency's multilingual (EN\u002FUK\u002FPL) production site with a custom CMS — a Filament admin panel with a rich content editor, content translations, JSON-LD and localized sitemaps built in, alongside the legacy Inertia + Vue admin","yml",true,"\u002Fhero\u002Fdigispace.avif",[13,18],{"label":14,"to":15,"color":16,"icon":17},"Live Demo","https:\u002F\u002Fdigispace.pro","primary","i-heroicons-arrow-top-right-on-square",{"label":19,"to":20,"color":21,"icon":22},"GitHub","https:\u002F\u002Fgithub.com\u002FYurij2015\u002FDigiSpace","neutral","i-simple-icons-github",{},[25,28,31,34,37,40,43,46],{"name":26,"icon":27},"Laravel","i-simple-icons-laravel",{"name":29,"icon":30},"Inertia","i-simple-icons-inertia",{"name":32,"icon":33},"Vue","i-simple-icons-vuedotjs",{"name":35,"icon":36},"Vite","i-simple-icons-vite",{"name":38,"icon":39},"MySQL","i-simple-icons-mysql",{"name":41,"icon":42},"Tailwind CSS","i-simple-icons-tailwindcss",{"name":44,"icon":45},"Filament","i-simple-icons-filament",{"name":47,"icon":48},"CMS","i-heroicons-document-text","en\u002Fprojects\u002Fdigispace",[26,44,29,32,51,52],"i18n","SEO","dtWB-9st6fApdLs4qomkqmMQVq9PBqeHoPzR0Ywgu0I",[55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77],"caddy","cloudflare","digitalocean","docker","filament","github-actions","go","hetzner","hostinger","laravel","mysql","nuxt","php","postgresql","proxmox","redis","stripe","symfony","tailwindcss","terraform","typescript","vite","vue",{"data":79,"body":80},{},{"type":81,"children":82},"root",[83,91,98,183,189],{"type":84,"tag":85,"props":86,"children":87},"element","p",{},[88],{"type":89,"value":90},"text","The production website behind digispace.pro — the agency's public site, admin panel and custom CMS in a single Laravel app, now fully multilingual (EN\u002FUK\u002FPL) with a Filament admin panel running alongside the legacy Inertia + Vue one. The same code that runs the live site is available on GitHub.",{"type":84,"tag":92,"props":93,"children":95},"h2",{"id":94},"key-features",[96],{"type":89,"value":97},"Key Features",{"type":84,"tag":99,"props":100,"children":101},"ul",{},[102,123,133,143,153,163,173],{"type":84,"tag":103,"props":104,"children":105},"li",{},[106,112,114,121],{"type":84,"tag":107,"props":108,"children":109},"strong",{},[110],{"type":89,"value":111},"Filament admin panel",{"type":89,"value":113}," - a parallel ",{"type":84,"tag":115,"props":116,"children":118},"code",{"className":117},[],[119],{"type":89,"value":120},"\u002Fcontrol",{"type":89,"value":122}," panel (24 resources) with a TipTap rich editor, straight-to-MinIO image uploads and content-first navigation, rolled out resource-by-resource next to the existing Inertia admin",{"type":84,"tag":103,"props":124,"children":125},{},[126,131],{"type":84,"tag":107,"props":127,"children":128},{},[129],{"type":89,"value":130},"Multilingual by design",{"type":89,"value":132}," - both content and structural UI strings (menus, footer, buttons) are translated per locale, not just page text, with hreflang-aware localized routing",{"type":84,"tag":103,"props":134,"children":135},{},[136,141],{"type":84,"tag":107,"props":137,"children":138},{},[139],{"type":89,"value":140},"SEO built in",{"type":89,"value":142}," - JSON-LD structured data, localized sitemaps and proper 404 handling across every locale",{"type":84,"tag":103,"props":144,"children":145},{},[146,151],{"type":84,"tag":107,"props":147,"children":148},{},[149],{"type":89,"value":150},"Monolith done right",{"type":89,"value":152}," - public site and two admin surfaces live in one Laravel app, no separate API to maintain",{"type":84,"tag":103,"props":154,"children":155},{},[156,161],{"type":84,"tag":107,"props":157,"children":158},{},[159],{"type":89,"value":160},"Self-managed content",{"type":89,"value":162}," - pages, services and portfolio entries are edited in the CMS — no deploy needed for a text or translation change",{"type":84,"tag":103,"props":164,"children":165},{},[166,171],{"type":84,"tag":107,"props":167,"children":168},{},[169],{"type":89,"value":170},"Quality gates",{"type":89,"value":172}," - PHPUnit tests and PHPStan static analysis run in CI",{"type":84,"tag":103,"props":174,"children":175},{},[176,181],{"type":84,"tag":107,"props":177,"children":178},{},[179],{"type":89,"value":180},"Source available",{"type":89,"value":182}," - the exact code serving digispace.pro is public on GitHub",{"type":84,"tag":92,"props":184,"children":186},{"id":185},"tech-stack",[187],{"type":89,"value":188},"Tech Stack",{"type":84,"tag":99,"props":190,"children":191},{},[192,202,219,229,239],{"type":84,"tag":103,"props":193,"children":194},{},[195,200],{"type":84,"tag":107,"props":196,"children":197},{},[198],{"type":89,"value":199},"Backend",{"type":89,"value":201},": Laravel",{"type":84,"tag":103,"props":203,"children":204},{},[205,210,212,217],{"type":84,"tag":107,"props":206,"children":207},{},[208],{"type":89,"value":209},"Admin",{"type":89,"value":211},": Filament 5 (",{"type":84,"tag":115,"props":213,"children":215},{"className":214},[],[216],{"type":89,"value":120},{"type":89,"value":218},") + legacy Inertia.js + Vue admin",{"type":84,"tag":103,"props":220,"children":221},{},[222,227],{"type":84,"tag":107,"props":223,"children":224},{},[225],{"type":89,"value":226},"Frontend",{"type":89,"value":228},": Vue.js, Vite",{"type":84,"tag":103,"props":230,"children":231},{},[232,237],{"type":84,"tag":107,"props":233,"children":234},{},[235],{"type":89,"value":236},"Localization",{"type":89,"value":238},": EN\u002FUK\u002FPL content and structure translations",{"type":84,"tag":103,"props":240,"children":241},{},[242,247],{"type":84,"tag":107,"props":243,"children":244},{},[245],{"type":89,"value":246},"Architecture",{"type":89,"value":248},": Custom CMS"]