[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-uk-vetspace":3,"technology-slugs-uk":54,"mdc-b3ms8r-key":78},{"id":4,"title":5,"content":6,"date":7,"description":8,"extension":9,"featured":10,"image":11,"links":12,"meta":29,"stack":30,"stem":49,"tags":50,"url":15,"__hash__":53},"projects_uk\u002Fuk\u002Fprojects\u002Fvetspace.yml","VetSpace","Двостороння ветеринарна платформа — SEO-каталог клінік та CRM для підписки з призначеннями та записами пацієнтів. Публічний каталог клінік, побудований для SEO-first набуття клієнтів, та підписка на основі CRM (призначення, візити, записи пацієнтів) як окремі Vue\u002FNuxt додатки над одним Laravel API. Архітектура database-per-tenant, підписки Stripe через Cashier, GraphQL + REST, та аналіз візитів з допомогою AI через присвячений Go мікросервіс.\n\n## Ключові можливості\n\n- **Двостороння воронка** - SEO-каталог залучає клініки, а CRM за підпискою (візити, картки пацієнтів) їх утримує\n- **Справжня ізоляція тенантів** - database-per-tenant тримає дані кожної клініки окремо, а GDPR-експорт\u002Fвидалення — це операція на рівні бази\n- **Дві грані API** - GraphQL для складних запитів каталогу, REST для CRM — одна кодова база Laravel\n- **Білінг із коробки** - підписки Stripe через Cashier: тріали, зміна планів, dunning\n- **AI там, де допомагає** - аналіз візитів виконує окремий Go-мікросервіс, не навантажуючи основний API\n\n## Стек технологій\n\n- **Бекенд**: Laravel (API)\n- **Фронтенд**: Vue\u002FNuxt (окремі застосунки)\n- **Архітектура**: Database-per-tenant multi-tenancy\n- **Платежі**: Stripe через Cashier\n- **API**: GraphQL + REST\n- **AI**: Go-мікросервіс для аналізу візитів\n","2026-09-19","Двостороння ветеринарна платформа — SEO-каталог клінік та CRM для підписки з призначеннями та записами пацієнтів","yml",true,"\u002Fhero\u002Fvetspace.avif",[13,18,23,26],{"label":14,"to":15,"color":16,"icon":17},"Live Demo","https:\u002F\u002Fvetspace.pro","primary","i-heroicons-arrow-top-right-on-square",{"label":19,"to":20,"color":21,"icon":22},"Огляд API","https:\u002F\u002Fgithub.com\u002FYurij2015\u002Fvetspace-api","neutral","i-simple-icons-github",{"label":24,"to":25,"color":21,"icon":22},"Огляд фронтенду","https:\u002F\u002Fgithub.com\u002FYurij2015\u002Fvetspace-frontend",{"label":27,"to":28,"color":21,"icon":22},"Огляд VetCard","https:\u002F\u002Fgithub.com\u002FYurij2015\u002Fvetspace-vetcard",{},[31,34,37,40,43,46],{"name":32,"icon":33},"Laravel","i-simple-icons-laravel",{"name":35,"icon":36},"Vue","i-simple-icons-vuedotjs",{"name":38,"icon":39},"Nuxt","i-simple-icons-nuxtdotjs",{"name":41,"icon":42},"Stripe","i-simple-icons-stripe",{"name":44,"icon":45},"GraphQL","i-simple-icons-graphql",{"name":47,"icon":48},"AI","i-heroicons-sparkles","uk\u002Fprojects\u002Fvetspace",[51,32,35,52,41,47],"SaaS","Multi-tenant","DG_13GfOpIs-FP9mwOJDR33DOhZ0GdfeSK1u1JLzZt8",[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,154,160],{"type":84,"tag":85,"props":86,"children":87},"element","p",{},[88],{"type":89,"value":90},"text","Двостороння ветеринарна платформа — SEO-каталог клінік та CRM для підписки з призначеннями та записами пацієнтів. Публічний каталог клінік, побудований для SEO-first набуття клієнтів, та підписка на основі CRM (призначення, візити, записи пацієнтів) як окремі Vue\u002FNuxt додатки над одним Laravel API. Архітектура database-per-tenant, підписки Stripe через Cashier, GraphQL + REST, та аналіз візитів з допомогою AI через присвячений Go мікросервіс.",{"type":84,"tag":92,"props":93,"children":95},"h2",{"id":94},"ключові-можливості",[96],{"type":89,"value":97},"Ключові можливості",{"type":84,"tag":99,"props":100,"children":101},"ul",{},[102,114,124,134,144],{"type":84,"tag":103,"props":104,"children":105},"li",{},[106,112],{"type":84,"tag":107,"props":108,"children":109},"strong",{},[110],{"type":89,"value":111},"Двостороння воронка",{"type":89,"value":113}," - SEO-каталог залучає клініки, а CRM за підпискою (візити, картки пацієнтів) їх утримує",{"type":84,"tag":103,"props":115,"children":116},{},[117,122],{"type":84,"tag":107,"props":118,"children":119},{},[120],{"type":89,"value":121},"Справжня ізоляція тенантів",{"type":89,"value":123}," - database-per-tenant тримає дані кожної клініки окремо, а GDPR-експорт\u002Fвидалення — це операція на рівні бази",{"type":84,"tag":103,"props":125,"children":126},{},[127,132],{"type":84,"tag":107,"props":128,"children":129},{},[130],{"type":89,"value":131},"Дві грані API",{"type":89,"value":133}," - GraphQL для складних запитів каталогу, REST для CRM — одна кодова база Laravel",{"type":84,"tag":103,"props":135,"children":136},{},[137,142],{"type":84,"tag":107,"props":138,"children":139},{},[140],{"type":89,"value":141},"Білінг із коробки",{"type":89,"value":143}," - підписки Stripe через Cashier: тріали, зміна планів, dunning",{"type":84,"tag":103,"props":145,"children":146},{},[147,152],{"type":84,"tag":107,"props":148,"children":149},{},[150],{"type":89,"value":151},"AI там, де допомагає",{"type":89,"value":153}," - аналіз візитів виконує окремий Go-мікросервіс, не навантажуючи основний API",{"type":84,"tag":92,"props":155,"children":157},{"id":156},"стек-технологій",[158],{"type":89,"value":159},"Стек технологій",{"type":84,"tag":99,"props":161,"children":162},{},[163,173,183,193,203,213],{"type":84,"tag":103,"props":164,"children":165},{},[166,171],{"type":84,"tag":107,"props":167,"children":168},{},[169],{"type":89,"value":170},"Бекенд",{"type":89,"value":172},": Laravel (API)",{"type":84,"tag":103,"props":174,"children":175},{},[176,181],{"type":84,"tag":107,"props":177,"children":178},{},[179],{"type":89,"value":180},"Фронтенд",{"type":89,"value":182},": Vue\u002FNuxt (окремі застосунки)",{"type":84,"tag":103,"props":184,"children":185},{},[186,191],{"type":84,"tag":107,"props":187,"children":188},{},[189],{"type":89,"value":190},"Архітектура",{"type":89,"value":192},": Database-per-tenant multi-tenancy",{"type":84,"tag":103,"props":194,"children":195},{},[196,201],{"type":84,"tag":107,"props":197,"children":198},{},[199],{"type":89,"value":200},"Платежі",{"type":89,"value":202},": Stripe через Cashier",{"type":84,"tag":103,"props":204,"children":205},{},[206,211],{"type":84,"tag":107,"props":207,"children":208},{},[209],{"type":89,"value":210},"API",{"type":89,"value":212},": GraphQL + REST",{"type":84,"tag":103,"props":214,"children":215},{},[216,220],{"type":84,"tag":107,"props":217,"children":218},{},[219],{"type":89,"value":47},{"type":89,"value":221},": Go-мікросервіс для аналізу візитів"]