[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"global":3,"services:en":200,"technology-names:en":248,"service:corporate:en":296},{"id":4,"documentId":5,"siteName":6,"siteUrl":7,"createdAt":8,"updatedAt":9,"publishedAt":10,"locale":11,"logo":12,"ogImage":26,"nav":71,"headerCta":94,"contact":99,"footer":114,"organization":133,"brief":147},5,"pdvc9bpy99219el368k0axyu","Spot","https:\u002F\u002Fwespot.ru","2026-10-27T11:56:47.515Z","2026-10-28T01:53:56.708Z","2026-10-28T01:53:56.790Z","en",{"id":13,"documentId":14,"name":15,"alternativeText":6,"caption":16,"focalPoint":16,"width":17,"height":18,"formats":16,"hash":19,"ext":20,"mime":21,"size":22,"url":23,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":25,"updatedAt":25,"publishedAt":25},28,"tampnmiu5mwua40w53mjugw8","logo-spot.svg",null,116,34,"logo_spot_53ec7bfdce",".svg","image\u002Fsvg+xml",8.28,"\u002Fuploads\u002Flogo_spot_53ec7bfdce.svg","local","2026-10-26T22:32:01.303Z",{"id":27,"documentId":28,"name":29,"alternativeText":6,"caption":16,"focalPoint":16,"width":30,"height":31,"formats":32,"hash":67,"ext":34,"mime":37,"size":68,"url":69,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":70,"updatedAt":70,"publishedAt":70},29,"g7keq692g2z8vgqzkv8bzt0r","spot.jpg",1200,630,{"large":33,"small":43,"medium":51,"thumbnail":59},{"ext":34,"url":35,"hash":36,"mime":37,"name":38,"path":16,"size":39,"width":40,"height":41,"sizeInBytes":42},".jpg","\u002Fuploads\u002Flarge_spot_e52160dbaa.jpg","large_spot_e52160dbaa","image\u002Fjpeg","large_spot.jpg",26.66,1000,525,26659,{"ext":34,"url":44,"hash":45,"mime":37,"name":46,"path":16,"size":47,"width":48,"height":49,"sizeInBytes":50},"\u002Fuploads\u002Fsmall_spot_e52160dbaa.jpg","small_spot_e52160dbaa","small_spot.jpg",10.21,500,263,10208,{"ext":34,"url":52,"hash":53,"mime":37,"name":54,"path":16,"size":55,"width":56,"height":57,"sizeInBytes":58},"\u002Fuploads\u002Fmedium_spot_e52160dbaa.jpg","medium_spot_e52160dbaa","medium_spot.jpg",17.69,750,394,17692,{"ext":34,"url":60,"hash":61,"mime":37,"name":62,"path":16,"size":63,"width":64,"height":65,"sizeInBytes":66},"\u002Fuploads\u002Fthumbnail_spot_e52160dbaa.jpg","thumbnail_spot_e52160dbaa","thumbnail_spot.jpg",3.81,245,129,3808,"spot_e52160dbaa",33.67,"\u002Fuploads\u002Fspot_e52160dbaa.jpg","2026-10-26T22:32:01.363Z",[72,78,82,86,90],{"id":73,"label":74,"href":75,"kind":76,"strong":77,"external":77},174,"Services","\u002Fservices","text",false,{"id":79,"label":80,"href":81,"kind":76,"strong":77,"external":77},175,"Projects","\u002Fcases",{"id":83,"label":84,"href":85,"kind":76,"strong":77,"external":77},176,"Expertise","\u002F#expertise",{"id":87,"label":88,"href":89,"kind":76,"strong":77,"external":77},177,"How we work","\u002F#how",{"id":91,"label":92,"href":93,"kind":76,"strong":77,"external":77},178,"Contacts","#contact",{"id":95,"label":96,"href":97,"kind":98,"strong":77,"external":77},179,"Discuss a project","#brief","btn-a",{"id":4,"heading":100,"text":101,"cta":102,"links":104},"Let's discuss your project","We reply the same day. The first step is a 30-minute call or a brief in Telegram.",{"id":103,"label":96,"href":97,"kind":98,"strong":77,"external":77},180,[105,109],{"id":106,"label":107,"href":108,"kind":76,"strong":77,"external":77},181,"push@wespot.ru","mailto:push@wespot.ru",{"id":110,"label":111,"href":112,"kind":76,"strong":77,"external":113},182,"@khudyakv","https:\u002F\u002Ft.me\u002Fkhudyakv",true,{"id":4,"legal":115,"links":116},"© 2022–2026 Spot",[117,121,125,129],{"id":118,"label":119,"href":120,"kind":76,"strong":77,"external":77},183,"Privacy policy","\u002Fprivacy",{"id":122,"label":123,"href":124,"kind":76,"strong":77,"external":77},184,"Terms of use","\u002Fterms",{"id":126,"label":127,"href":128,"kind":76,"strong":113,"external":113},185,"Habr","https:\u002F\u002Fhabr.com\u002Fru\u002Fusers\u002Fkhudyakv\u002Farticles\u002F",{"id":130,"label":131,"href":132,"kind":76,"strong":113,"external":113},186,"Telegram","https:\u002F\u002Ft.me\u002Ffrontend_lite",{"id":134,"name":6,"alternateNames":135,"legalName":16,"inn":16,"email":107,"phone":16,"telegram":112,"country":136,"description":137,"sameAs":138},6,"Wespot","RU","We build the online touchpoints between a business and its customers, partners and employees: customer accounts and stores, dealer and partner portals, CRM and internal systems for teams.",[139,141,144],{"id":140,"label":131,"href":112,"kind":76,"strong":77,"external":113},187,{"id":142,"label":143,"href":132,"kind":76,"strong":77,"external":113},188,"Read on Telegram",{"id":145,"label":146,"href":128,"kind":76,"strong":77,"external":113},189,"Articles on Habr",{"id":4,"label":96,"title":148,"submit":149,"successText":150,"errorText":151,"people":152,"fields":175,"consent":196},"Fill in a brief \u003Cspan style=\"color: #6B6B72\">about your task\u003C\u002Fspan>","Send the brief","Thank you! We have your brief and will get back to you as soon as we can.","The brief could not be sent. Write to us at push@wespot.ru or on Telegram @khudyakv.",[153],{"id":154,"name":155,"role":156,"photo":157},9,"Vladislav Khudyakov","Founder",{"id":158,"documentId":159,"name":160,"alternativeText":161,"caption":16,"focalPoint":16,"width":162,"height":162,"formats":163,"hash":171,"ext":34,"mime":37,"size":172,"url":173,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":174,"updatedAt":174,"publishedAt":174},30,"fbfagczmqep6lcsch1v3c81f","vladislav-khudyakov.jpg","Владислав Худяков",160,{"thumbnail":164},{"ext":34,"url":165,"hash":166,"mime":37,"name":167,"path":16,"size":168,"width":169,"height":169,"sizeInBytes":170},"\u002Fuploads\u002Fthumbnail_vladislav_khudyakov_0a1f3babcf.jpg","thumbnail_vladislav_khudyakov_0a1f3babcf","thumbnail_vladislav-khudyakov.jpg",5.61,156,5606,"vladislav_khudyakov_0a1f3babcf",5.82,"\u002Fuploads\u002Fvladislav_khudyakov_0a1f3babcf.jpg","2026-10-26T22:32:01.379Z",[176,183,189],{"id":177,"label":178,"name":179,"tag":180,"type":76,"placeholder":181,"autocomplete":179,"rows":182,"required":113},13,"Name*","name","input","How should we address you?",0,{"id":184,"label":185,"name":186,"tag":180,"type":76,"placeholder":187,"autocomplete":188,"rows":182,"required":113},14,"How can we reach you*","contact","Messenger, phone, email","off",{"id":190,"label":191,"name":192,"tag":193,"type":76,"placeholder":194,"autocomplete":188,"rows":195,"required":77},15,"About the task","task","textarea","What needs to be done, the timeline, any constraints",4,{"id":4,"before":197,"link":198,"href":120,"after":199},"I agree to the processing of my personal data. See the ","privacy policy",".",[201,209,218,226,234,241],{"id":202,"documentId":203,"title":204,"slug":205,"num":206,"text":207,"isLinked":77,"order":182,"ctaLabel":208},36,"xom9f9b8uov8k5jzse6cawd0","Customer accounts and portals","lk","01","Accounts for customers, partners and employees: orders, payments, requests, history and access roles.","Discuss the task",{"id":210,"documentId":211,"title":212,"slug":213,"num":214,"text":215,"isLinked":77,"order":216,"ctaLabel":217},35,"tumsah9k2m6m0sewkabpw61e","Corporate systems","corporate","02","CRM, ERP and internal systems. Customers, finances, requests and access in one place.",1,"Discuss a system",{"id":219,"documentId":220,"title":221,"slug":222,"num":223,"text":224,"isLinked":77,"order":225,"ctaLabel":208},37,"zunn9dms6ad8texoqw6y3tdr","Mini Apps and web services","mini-apps","03","Mini Apps, chatbots and web services that automate individual business processes.",2,{"id":227,"documentId":228,"title":229,"slug":230,"num":231,"text":232,"isLinked":77,"order":233,"ctaLabel":208},38,"jhuw9zs2spni1yu9a682x04h","Special projects and complex interfaces","special","04","Web games, configurators and calculators. Built for Alfa-Bank, Raiffeisen Life and SPLAT.",3,{"id":235,"documentId":236,"title":237,"slug":238,"num":239,"text":240,"isLinked":77,"order":195,"ctaLabel":208},39,"ckrj708ld8bs46wv7klunsjo","Service integrations","integrations","05","Data exchange with 1C, CRM, YooKassa, Stripe, delivery services and SMS gateways.",{"id":242,"documentId":243,"title":244,"slug":245,"num":246,"text":247,"isLinked":77,"order":4,"ctaLabel":208},40,"yuha2yu8lv44n7tn7bacrsgk","Support and scaling","support","06","We join existing products and work with someone else's code. We optimise performance and move legacy to a new stack.",[249,253,257,260,264,268,272,276,280,284,288,292],{"id":250,"documentId":251,"name":252},169,"p8vqp4j7u4d5hczr7szvpixb","Vue",{"id":254,"documentId":255,"name":256},128,"cz2o7v44o0aco9e5ug991orw","React",{"id":65,"documentId":258,"name":259},"xlc3e2f0g2e8d21dtz56fhqq","Nuxt",{"id":261,"documentId":262,"name":263},130,"tn8tizd5lz1g7lobpen0g8jp","Next.js",{"id":265,"documentId":266,"name":267},131,"j4b9wdar97fh6a7n4np1ol1b","TypeScript",{"id":269,"documentId":270,"name":271},132,"y119214qgyryif676kl65vzm","Vite",{"id":273,"documentId":274,"name":275},133,"h32yowozezgx7shnoavwhdhr","Sass",{"id":277,"documentId":278,"name":279},134,"nptn5i4h1260f2i8vsf05xm8","Pinia",{"id":281,"documentId":282,"name":283},135,"deb59z0fojzpks7jg8zqhy9x","GSAP",{"id":285,"documentId":286,"name":287},136,"ipa2daxz0h944wz1bpkhaphz","Canvas",{"id":289,"documentId":290,"name":291},137,"rzotygp0g2fxn3ynxnucq3jp","Anime.js",{"id":293,"documentId":294,"name":295},138,"hd8evrxia67rvyuvmv0tij7o","Figma",{"id":210,"documentId":211,"title":212,"slug":213,"num":214,"order":216,"text":215,"ctaLabel":217,"includes":297,"isLinked":77,"createdAt":298,"updatedAt":299,"publishedAt":300,"locale":11,"projects":301,"faqs":902,"blocks":927,"seo":1239},"","2026-10-27T11:56:46.975Z","2026-10-28T01:53:57.182Z","2026-10-28T01:53:57.322Z",[302],{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11,"tags":316,"partner":16,"formats":323,"points":324,"slides":334,"cover":376,"coverSettings":382,"categories":384,"services":392,"client":767,"taskList":772,"done":773,"gallery":789,"testimonial":790,"nextProject":807,"seo":899},50,"jzhsxo67cxtotrobtcmid5rg","Three years developing the CRM of the Virtuozy music school chain","virtuozy","Every branch got a reactive real-time schedule and a set of useful business management modules.","Virtuozy music school chain","CRM system","Vue.js, Pinia, PrimeVue, PHP, Socket.IO","Internal system","\u003Cp>Optimise the schedule and take the load off the administrators of the school chain: lessons, substitutions and reschedules must update in every branch at once, without calls and manual reconciliation.\u003C\u002Fp>\n\u003Cp>Deliver real-time and fill the system with business management modules: students, teachers, payments and reporting in one CRM.\u003C\u002Fp>","2026-10-27T11:56:45.992Z","2026-10-28T01:53:58.401Z","2026-10-28T01:53:58.485Z",[317,320],{"id":318,"label":319},481,"Virtuozy",{"id":321,"label":322},482,"Education",[],[325,328,331],{"id":326,"text":327},378,"Frontend stack migration to Vue.js",{"id":329,"text":330},379,"Modular system introduced",{"id":332,"text":333},380,"Reactive forms, recurring lessons",[335],{"id":336,"documentId":337,"name":338,"alternativeText":339,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":342,"hash":372,"ext":344,"mime":347,"size":373,"url":374,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":375,"updatedAt":375,"publishedAt":375},12,"oepj2jygdk1n4z0b7wxud8tm","virtuozy-laptop.webp","3 года развиваем CRM сети музыкальных школ «Виртуозы»",1536,864,{"large":343,"small":352,"medium":359,"thumbnail":366},{"ext":344,"url":345,"hash":346,"mime":347,"name":348,"path":16,"size":349,"width":40,"height":350,"sizeInBytes":351},".webp","\u002Fuploads\u002Flarge_virtuozy_laptop_ceee7f8cbb.webp","large_virtuozy_laptop_ceee7f8cbb","image\u002Fwebp","large_virtuozy-laptop.webp",32.99,562,32994,{"ext":344,"url":353,"hash":354,"mime":347,"name":355,"path":16,"size":356,"width":48,"height":357,"sizeInBytes":358},"\u002Fuploads\u002Fsmall_virtuozy_laptop_ceee7f8cbb.webp","small_virtuozy_laptop_ceee7f8cbb","small_virtuozy-laptop.webp",13.39,281,13394,{"ext":344,"url":360,"hash":361,"mime":347,"name":362,"path":16,"size":363,"width":56,"height":364,"sizeInBytes":365},"\u002Fuploads\u002Fmedium_virtuozy_laptop_ceee7f8cbb.webp","medium_virtuozy_laptop_ceee7f8cbb","medium_virtuozy-laptop.webp",23.22,422,23220,{"ext":344,"url":367,"hash":368,"mime":347,"name":369,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":371},"\u002Fuploads\u002Fthumbnail_virtuozy_laptop_ceee7f8cbb.webp","thumbnail_virtuozy_laptop_ceee7f8cbb","thumbnail_virtuozy-laptop.webp",5.21,5212,"virtuozy_laptop_ceee7f8cbb",66.57,"\u002Fuploads\u002Fvirtuozy_laptop_ceee7f8cbb.webp","2026-10-26T22:31:58.739Z",{"id":336,"documentId":337,"name":338,"alternativeText":339,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":377,"hash":372,"ext":344,"mime":347,"size":373,"url":374,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":375,"updatedAt":375,"publishedAt":375},{"large":378,"small":379,"medium":380,"thumbnail":381},{"ext":344,"url":345,"hash":346,"mime":347,"name":348,"path":16,"size":349,"width":40,"height":350,"sizeInBytes":351},{"ext":344,"url":353,"hash":354,"mime":347,"name":355,"path":16,"size":356,"width":48,"height":357,"sizeInBytes":358},{"ext":344,"url":360,"hash":361,"mime":347,"name":362,"path":16,"size":363,"width":56,"height":364,"sizeInBytes":365},{"ext":344,"url":367,"hash":368,"mime":347,"name":369,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":371},{"id":303,"ratio":297,"position":383,"scale":216},"50% 50%",[385],{"id":177,"documentId":386,"label":387,"slug":388,"order":182,"createdAt":389,"updatedAt":390,"publishedAt":391,"locale":11},"tanodytymqmx8fmdfitrupv8","Accounts and CRM","crm","2026-10-27T11:54:45.703Z","2026-10-27T12:06:29.151Z","2026-10-27T12:06:29.154Z",[393,695],{"id":210,"documentId":211,"title":212,"slug":213,"num":214,"order":216,"text":215,"ctaLabel":217,"includes":297,"isLinked":77,"createdAt":298,"updatedAt":299,"publishedAt":300,"locale":11,"blocks":394,"seo":692},[395,586,603,615,682,686],{"id":134,"heading":396,"note":397,"initial":216,"modules":398,"__component":585},"What we build the system from","The module scheme is an example. The set of modules and scenarios is assembled for the processes of a specific company.",[399,432,465,492,521,552],{"id":400,"name":401,"text":402,"features":403,"events":416},31,"Customers","One customer card with the whole history: contacts, deals, contracts and communications in one place.",[404,407,410,413],{"id":405,"label":406},438,"Customer card",{"id":408,"label":409},439,"History",{"id":411,"label":412},440,"Segments",{"id":414,"label":415},441,"Search",[417,421,424,428],{"id":418,"time":419,"text":420},121,"Today","Customer card created",{"id":422,"time":419,"text":423},122,"Contract added",{"id":425,"time":426,"text":427},123,"Yesterday","Manager assigned",{"id":429,"time":430,"text":431},124,"A week ago","First request",{"id":433,"name":434,"text":435,"features":436,"events":449},32,"Requests","Requests from every channel land in one queue; each has an owner and a status.",[437,440,443,446],{"id":438,"label":439},442,"Request queue",{"id":441,"label":442},443,"Statuses",{"id":444,"label":445},444,"Owners",{"id":447,"label":448},445,"Notifications",[450,454,458,462],{"id":451,"time":452,"text":453},125,"10:24","Request from the website form",{"id":455,"time":456,"text":457},126,"10:31","Owner assigned",{"id":459,"time":460,"text":461},127,"12:05","Status: in progress",{"id":254,"time":463,"text":464},"16:40","Request closed",{"id":466,"name":467,"text":468,"features":469,"events":482},33,"Finance","Invoices, payments and settlements linked to customers and deals, with export to accounting systems.",[470,473,476,479],{"id":471,"label":472},446,"Invoices",{"id":474,"label":475},447,"Payments",{"id":477,"label":478},448,"1C integration",{"id":480,"label":481},449,"YooKassa",[483,485,487,489],{"id":65,"time":419,"text":484},"Invoice issued",{"id":261,"time":419,"text":486},"Payment via YooKassa",{"id":265,"time":419,"text":488},"Export to 1C",{"id":269,"time":490,"text":491},"Tomorrow","Reconciliation report",{"id":18,"name":493,"text":494,"features":495,"events":508},"Data and reports","Reports on key metrics are built from the live data of the system, with no manual spreadsheet work.",[496,499,502,505],{"id":497,"label":498},450,"Reports",{"id":500,"label":501},451,"Dashboards",{"id":503,"label":504},452,"Export",{"id":506,"label":507},453,"Reference data",[509,512,515,518],{"id":273,"time":510,"text":511},"Monday","Weekly report",{"id":277,"time":513,"text":514},"Daily","Dashboard update",{"id":281,"time":516,"text":517},"On request","Export to Excel",{"id":285,"time":519,"text":520},"Monthly","Branch summary",{"id":210,"name":522,"text":523,"features":524,"events":537},"Roles and access","Every employee sees and changes only what their work requires. Actions are recorded in a log.",[525,528,531,534],{"id":526,"label":527},454,"Roles",{"id":529,"label":530},455,"Permissions",{"id":532,"label":533},456,"Branches",{"id":535,"label":536},457,"Action log",[538,541,544,548],{"id":289,"time":539,"text":540},"09:00","Administrator signed in",{"id":293,"time":542,"text":543},"09:12","Permissions granted to a manager",{"id":545,"time":546,"text":547},139,"11:30","Branch access",{"id":549,"time":550,"text":551},140,"18:00","Log entry",{"id":202,"name":553,"text":554,"features":555,"events":568},"Processes","The company's key processes become scenarios of the system: stages, checks and automatic actions.",[556,559,562,565],{"id":557,"label":558},458,"Stages",{"id":560,"label":561},459,"Automation",{"id":563,"label":564},460,"Schedule",{"id":566,"label":567},461,"Approvals",[569,573,577,581],{"id":570,"time":571,"text":572},141,"Stage 1","Request accepted",{"id":574,"time":575,"text":576},142,"Stage 2","Approval",{"id":578,"time":579,"text":580},143,"Stage 3","Automatic notification",{"id":582,"time":583,"text":584},144,"Stage 4","Done","blocks.modules",{"id":134,"heading":587,"note":588,"items":589,"__component":602},"When you need your own system","Processes have outgrown spreadsheets and off-the-shelf tools",[590,594,598],{"id":591,"num":206,"title":592,"text":593},256,"Data is scattered","Customers, requests and finances live in different spreadsheets and services; the overall picture is assembled by hand.",{"id":595,"num":214,"title":596,"text":597},257,"Off-the-shelf doesn't fit","A ready-made CRM forces the business to adapt to it, and improvements hit the limits of the platform.",{"id":599,"num":223,"title":600,"text":601},258,"The system is outdated","The internal tool works but is hard to develop. We migrate to a modern stack without stopping the business.","blocks.when",{"id":134,"heading":604,"project":605,"testimonial":606,"__component":614},"Case",{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11},{"id":195,"documentId":607,"text":608,"name":609,"role":610,"createdAt":611,"updatedAt":612,"publishedAt":613,"locale":11},"yzg2zta62sp74w1dtqx0bjeg","“Together with Spot we moved our internal CRM to Vue.js. The online schedule and the key modules run reliably across every branch of our music school chain.”","Dmitry Bidulya","CEO, Virtuozy","2026-10-27T11:56:45.782Z","2026-10-27T12:06:29.444Z","2026-10-27T12:06:29.448Z","blocks.project-quote",{"id":134,"cards":616,"__component":681},[617,642],{"id":618,"label":619,"title":620,"dark":77,"chips":621},11,"Integrations","We connect the system to what already works",[622,625,628,630,633,636,639],{"id":623,"label":624},462,"1C",{"id":626,"label":627},463,"CRM",{"id":629,"label":481},464,{"id":631,"label":632},465,"Stripe",{"id":634,"label":635},466,"Delivery services",{"id":637,"label":638},467,"SMS gateways",{"id":640,"label":641},468,"Other APIs",{"id":336,"label":643,"title":644,"dark":113,"chips":645},"Stack","Technologies that can be developed long-term",[646,649,652,654,657,660,663,666,669,672,675,678],{"id":647,"label":648},469,"Vue\u002FNuxt",{"id":650,"label":651},470,"React\u002FNext",{"id":653,"label":267},471,{"id":655,"label":656},472,"Python\u002FDjango\u002FFastAPI",{"id":658,"label":659},473,"NestJS",{"id":661,"label":662},474,"PostgreSQL",{"id":664,"label":665},475,"Redis",{"id":667,"label":668},476,"RabbitMQ",{"id":670,"label":671},477,"Docker",{"id":673,"label":674},478,"Nginx",{"id":676,"label":677},479,"S3",{"id":679,"label":680},480,"Grafana","blocks.chips-cards",{"id":683,"heading":684,"cta":16,"__component":685},56,"F.A.Q","blocks.faq",{"id":134,"label":687,"title":688,"link":689,"__component":691},"5 more areas","All services",{"id":690,"label":688,"href":75,"kind":76,"strong":77,"external":77},191,"blocks.cta",{"id":693,"metaTitle":694,"metaDescription":215,"canonical":16,"noIndex":77,"ogImage":16},110,"Corporate systems — Spot",{"id":242,"documentId":243,"title":244,"slug":245,"num":246,"order":4,"text":247,"ctaLabel":208,"includes":696,"isLinked":77,"createdAt":697,"updatedAt":698,"publishedAt":699,"locale":11,"blocks":700,"seo":764},"[Scope of the service: which tasks we solve and what the work includes]","2026-10-27T11:56:47.241Z","2026-10-28T01:53:58.283Z","2026-10-28T01:53:58.329Z",[701,704,724,758],{"id":303,"heading":702,"body":696,"__component":703},"What's included","blocks.includes",{"id":242,"heading":705,"projects":706,"__component":723},"Cases",[707,708],{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11},{"id":709,"documentId":710,"title":711,"slug":712,"order":195,"lede":713,"desc":713,"collab":113,"clientName":714,"kind":715,"stack":716,"site":297,"noSiteText":717,"task":718,"result":719,"createdAt":720,"updatedAt":721,"publishedAt":722,"locale":11},51,"qdeu7079nihj4cfspmqsvnx0","Calculators and services for an insurance company","raiffeisen","As part of support we improved the website and systems: the insured-event form and the policy issuing flow.","Raiffeisen Life","Calculators and services","1C-Bitrix, Native Frontend","Link no longer public","\u003Cp>Improve the insurer's website and internal services as part of support: simplify the insured-event form and update the policy issuing flow so the price on the site matches the price in the contract.\u003C\u002Fp>","Over a year of support we updated the main flows, the insured-event form and the policy issuing mechanism; the insurer's website and services keep evolving.","2026-10-27T11:56:46.153Z","2026-10-28T01:53:58.578Z","2026-10-28T01:53:58.669Z","blocks.projects-cards",{"id":725,"heading":88,"lead":726,"principlesHeading":727,"steps":728,"principles":745,"__component":757},70,"We were doing custom development long before neural networks, and the process took shape back then. AI helps us ship and maintain the product faster. Stability and security are still on us.","You always know what is going on",[729,733,737,741],{"id":730,"num":206,"title":731,"text":732},295,"Brief and estimate","We discuss the task and estimate it. Then we write a specification: features, technical decisions, roles, rules and edge cases. We develop against it (SDD) and accept the result against it too.",{"id":734,"num":214,"title":735,"text":736},296,"Clickable prototype","We build a prototype from your design or with neural networks. The scenarios can be walked through by hand before the main development starts.",{"id":738,"num":223,"title":739,"text":740},297,"Development and integration","After the prototype demo we adjust the specification. Simple code is written with Codex and Claude Code: routine work goes faster and the budget goes further. We know where AI can go wrong, so every change is checked by a developer in code review. We connect the product to your systems and external services: CRM, payments and others. Everything built during the stage is available in the demo environment at the project link.",{"id":742,"num":231,"title":743,"text":744},298,"Testing and release","Once the functionality is ready, we cover it with tests and prepare the launch on a staging environment: a copy of the production environment where the product is checked in real conditions. After the final testing we move it to production and set up monitoring.",[746,749,753],{"id":747,"title":498,"text":748},208,"Every 1–2 weeks we send a report: what was done, what we take on next and where an overrun is possible if the tasks change. You learn about extra costs before they happen, not after.",{"id":750,"title":751,"text":752},209,"Demo link","The current version of the product is always open. Come in at any moment, try everything and send the link to colleagues.",{"id":754,"title":755,"text":756},210,"Direct line to the team","A shared chat with the developers, no chain of managers. Questions are answered by the people who write the code.","blocks.how",{"id":759,"heading":684,"cta":760,"__component":685},66,{"id":761,"label":762,"href":97,"kind":763,"strong":77,"external":77},201,"Ask your question","btn-d",{"id":765,"metaTitle":766,"metaDescription":247,"canonical":16,"noIndex":77,"ogImage":16},115,"Support and scaling — Spot",{"id":759,"documentId":768,"name":319,"order":618,"showInMarquee":113,"createdAt":769,"updatedAt":770,"publishedAt":771,"locale":11,"logo":16},"sw4ys6qn5d0mehqodmpe8j1o","2026-10-27T11:54:45.794Z","2026-10-27T12:06:29.298Z","2026-10-27T12:06:29.301Z",[],[774,776,779,782,784,787],{"id":775,"text":327},381,{"id":777,"text":778},382,"Real-time schedule in every branch on Socket.IO",{"id":780,"text":781},383,"Substitutions and reschedules without manual reconciliation",{"id":783,"text":330},384,{"id":785,"text":786},385,"Student, teacher, payment and reporting modules",{"id":788,"text":333},386,[],{"id":195,"documentId":607,"text":608,"name":609,"role":610,"createdAt":611,"updatedAt":612,"publishedAt":613,"locale":11,"photo":791},{"id":216,"documentId":792,"name":793,"alternativeText":794,"caption":16,"focalPoint":16,"width":83,"height":83,"formats":795,"hash":802,"ext":34,"mime":37,"size":803,"url":804,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":805,"updatedAt":805,"publishedAt":806},"o07v86mfumrgwdobzggkp4qp","dmitry-bidulya.jpg","Дмитрий Бидуля",{"thumbnail":796},{"ext":34,"url":797,"hash":798,"mime":37,"name":799,"path":16,"size":800,"width":169,"height":169,"sizeInBytes":801},"\u002Fuploads\u002Fthumbnail_dmitry_bidulya_e8819c9f79.jpg","thumbnail_dmitry_bidulya_e8819c9f79","thumbnail_dmitry-bidulya.jpg",6.31,6311,"dmitry_bidulya_e8819c9f79",7.39,"\u002Fuploads\u002Fdmitry_bidulya_e8819c9f79.jpg","2026-10-26T22:31:57.378Z","2026-10-26T22:31:57.379Z",{"id":808,"documentId":809,"title":810,"slug":811,"order":225,"lede":812,"desc":812,"collab":77,"clientName":813,"kind":814,"stack":815,"site":816,"noSiteText":297,"task":817,"result":818,"createdAt":819,"updatedAt":820,"publishedAt":821,"locale":11,"tags":822,"formats":830,"points":831,"slides":838,"cover":871,"coverSettings":877,"taskList":878,"done":879,"gallery":895,"seo":896},54,"jf35hvefa8t9rhg8jii1vxs3","Extended the online store of sports brand Vetersport","vetersport","Added bundles and discounts and sped up the site before Black Friday.","Vetersport","Online store","Redis, Nginx, 1C, S3 + CDN, Prometheus","https:\u002F\u002Fveter.cc\u002F","\u003Cp>Improve the online store of a sports equipment brand and prepare the server for sales-season load.\u003C\u002Fp>\n\u003Cp>Launch product bundles with a set discount and simplify checkout with form suggestions. Take load off the server: move files to cloud storage, set up caching and monitoring so the store runs without failures on Black Friday.\u003C\u002Fp>","The site configuration was updated for higher throughput; the store got bundles and monitoring to track problems on Black Friday.","2026-10-27T11:56:46.044Z","2026-10-28T01:53:59.108Z","2026-10-28T01:53:59.190Z",[823,825,827],{"id":824,"label":813},489,{"id":826,"label":814},490,{"id":828,"label":829},491,"Retail",[],[832,835],{"id":833,"text":834},413,"Connected an address and data suggestion service for forms",{"id":836,"text":837},414,"Moved file uploads to S3 cloud storage",[839],{"id":177,"documentId":840,"name":841,"alternativeText":842,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":843,"hash":867,"ext":344,"mime":347,"size":868,"url":869,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":870,"updatedAt":870,"publishedAt":870},"fgctemnasxypnn1xc1g8hxy8","vetersport-laptop.webp","Расширили функционал интернет-магазина производителя Ветерспорт",{"large":844,"small":850,"medium":856,"thumbnail":862},{"ext":344,"url":845,"hash":846,"mime":347,"name":847,"path":16,"size":848,"width":40,"height":350,"sizeInBytes":849},"\u002Fuploads\u002Flarge_vetersport_laptop_0a3b6dc2cd.webp","large_vetersport_laptop_0a3b6dc2cd","large_vetersport-laptop.webp",27.51,27514,{"ext":344,"url":851,"hash":852,"mime":347,"name":853,"path":16,"size":854,"width":48,"height":357,"sizeInBytes":855},"\u002Fuploads\u002Fsmall_vetersport_laptop_0a3b6dc2cd.webp","small_vetersport_laptop_0a3b6dc2cd","small_vetersport-laptop.webp",12.07,12072,{"ext":344,"url":857,"hash":858,"mime":347,"name":859,"path":16,"size":860,"width":56,"height":364,"sizeInBytes":861},"\u002Fuploads\u002Fmedium_vetersport_laptop_0a3b6dc2cd.webp","medium_vetersport_laptop_0a3b6dc2cd","medium_vetersport-laptop.webp",19.85,19848,{"ext":344,"url":863,"hash":864,"mime":347,"name":865,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":866},"\u002Fuploads\u002Fthumbnail_vetersport_laptop_0a3b6dc2cd.webp","thumbnail_vetersport_laptop_0a3b6dc2cd","thumbnail_vetersport-laptop.webp",5210,"vetersport_laptop_0a3b6dc2cd",51.76,"\u002Fuploads\u002Fvetersport_laptop_0a3b6dc2cd.webp","2026-10-26T22:31:58.988Z",{"id":177,"documentId":840,"name":841,"alternativeText":842,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":872,"hash":867,"ext":344,"mime":347,"size":868,"url":869,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":870,"updatedAt":870,"publishedAt":870},{"large":873,"small":874,"medium":875,"thumbnail":876},{"ext":344,"url":845,"hash":846,"mime":347,"name":847,"path":16,"size":848,"width":40,"height":350,"sizeInBytes":849},{"ext":344,"url":851,"hash":852,"mime":347,"name":853,"path":16,"size":854,"width":48,"height":357,"sizeInBytes":855},{"ext":344,"url":857,"hash":858,"mime":347,"name":859,"path":16,"size":860,"width":56,"height":364,"sizeInBytes":861},{"ext":344,"url":863,"hash":864,"mime":347,"name":865,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":866},{"id":808,"ratio":297,"position":383,"scale":216},[],[880,883,886,889,892],{"id":881,"text":882},415,"Product bundles with a set discount",{"id":884,"text":885},416,"Address and data suggestions in forms",{"id":887,"text":888},417,"File uploads moved to S3 with CDN delivery",{"id":890,"text":891},418,"Server optimisation and caching",{"id":893,"text":894},419,"Monitoring and failure alerts",[],{"id":418,"metaTitle":897,"metaDescription":898,"canonical":16,"noIndex":77,"ogImage":16},"Preparing a sports equipment online store for Black Friday","Discounted bundles, S3 and CDN, caching and monitoring for the Vetersport store. The site held the sales-day load.",{"id":17,"metaTitle":900,"metaDescription":901,"canonical":16,"noIndex":77,"ogImage":16},"CRM development for a music school chain on Vue.js","3 years of developing the Virtuozy CRM: real-time schedule on Socket.IO, students, payments and reporting for every branch.",[903,911,919],{"id":904,"documentId":905,"question":906,"answer":907,"order":182,"createdAt":908,"updatedAt":909,"publishedAt":910,"locale":11},25,"dmecq2q423srweqrd068vdkx","We already have a system, but the contractor disappeared. Will you take it over?","Yes. First we study the code and write down in a specification the rules the system follows today. Then we decide together what to improve and what to rewrite.","2026-10-27T11:56:45.706Z","2026-10-27T12:06:29.370Z","2026-10-27T12:06:29.373Z",{"id":912,"documentId":913,"question":914,"answer":915,"order":216,"createdAt":916,"updatedAt":917,"publishedAt":918,"locale":11},26,"isakfq4sz4tlv93qye86sm2a","Can we start with a small part?","Yes, and most of the time that is the right way. We launch one scenario and expand once the first real users appear.","2026-10-27T11:56:45.744Z","2026-10-27T12:06:29.378Z","2026-10-27T12:06:29.381Z",{"id":433,"documentId":920,"question":921,"answer":922,"order":923,"createdAt":924,"updatedAt":925,"publishedAt":926,"locale":11},"yzar7drbn6hnscxtwo91si0h","How much does it cost and how long does it take?","We give an estimate after the brief: the price and timeline depend on the number of roles, modules and integrations. The first stage is a clickable prototype — the scope is visible before development starts, and then we launch the system module by module.",102,"2026-10-27T11:56:45.774Z","2026-10-27T12:06:29.435Z","2026-10-27T12:06:29.436Z",[928,996,1001,1207,1232,1237],{"id":134,"heading":396,"note":397,"initial":216,"modules":929,"__component":585},[930,941,952,963,974,985],{"id":400,"name":401,"text":402,"features":931,"events":936},[932,933,934,935],{"id":405,"label":406},{"id":408,"label":409},{"id":411,"label":412},{"id":414,"label":415},[937,938,939,940],{"id":418,"time":419,"text":420},{"id":422,"time":419,"text":423},{"id":425,"time":426,"text":427},{"id":429,"time":430,"text":431},{"id":433,"name":434,"text":435,"features":942,"events":947},[943,944,945,946],{"id":438,"label":439},{"id":441,"label":442},{"id":444,"label":445},{"id":447,"label":448},[948,949,950,951],{"id":451,"time":452,"text":453},{"id":455,"time":456,"text":457},{"id":459,"time":460,"text":461},{"id":254,"time":463,"text":464},{"id":466,"name":467,"text":468,"features":953,"events":958},[954,955,956,957],{"id":471,"label":472},{"id":474,"label":475},{"id":477,"label":478},{"id":480,"label":481},[959,960,961,962],{"id":65,"time":419,"text":484},{"id":261,"time":419,"text":486},{"id":265,"time":419,"text":488},{"id":269,"time":490,"text":491},{"id":18,"name":493,"text":494,"features":964,"events":969},[965,966,967,968],{"id":497,"label":498},{"id":500,"label":501},{"id":503,"label":504},{"id":506,"label":507},[970,971,972,973],{"id":273,"time":510,"text":511},{"id":277,"time":513,"text":514},{"id":281,"time":516,"text":517},{"id":285,"time":519,"text":520},{"id":210,"name":522,"text":523,"features":975,"events":980},[976,977,978,979],{"id":526,"label":527},{"id":529,"label":530},{"id":532,"label":533},{"id":535,"label":536},[981,982,983,984],{"id":289,"time":539,"text":540},{"id":293,"time":542,"text":543},{"id":545,"time":546,"text":547},{"id":549,"time":550,"text":551},{"id":202,"name":553,"text":554,"features":986,"events":991},[987,988,989,990],{"id":557,"label":558},{"id":560,"label":561},{"id":563,"label":564},{"id":566,"label":567},[992,993,994,995],{"id":570,"time":571,"text":572},{"id":574,"time":575,"text":576},{"id":578,"time":579,"text":580},{"id":582,"time":583,"text":584},{"id":134,"heading":587,"note":588,"items":997,"__component":602},[998,999,1000],{"id":591,"num":206,"title":592,"text":593},{"id":595,"num":214,"title":596,"text":597},{"id":599,"num":223,"title":600,"text":601},{"id":134,"heading":604,"project":1002,"testimonial":1202,"__component":614},{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11,"tags":1003,"partner":16,"formats":1006,"points":1007,"slides":1011,"cover":1018,"coverSettings":1024,"categories":1025,"services":1027,"client":1155,"taskList":1156,"done":1157,"gallery":1164,"testimonial":1165,"nextProject":1169,"seo":1201},[1004,1005],{"id":318,"label":319},{"id":321,"label":322},[],[1008,1009,1010],{"id":326,"text":327},{"id":329,"text":330},{"id":332,"text":333},[1012],{"id":336,"documentId":337,"name":338,"alternativeText":339,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":1013,"hash":372,"ext":344,"mime":347,"size":373,"url":374,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":375,"updatedAt":375,"publishedAt":375},{"large":1014,"small":1015,"medium":1016,"thumbnail":1017},{"ext":344,"url":345,"hash":346,"mime":347,"name":348,"path":16,"size":349,"width":40,"height":350,"sizeInBytes":351},{"ext":344,"url":353,"hash":354,"mime":347,"name":355,"path":16,"size":356,"width":48,"height":357,"sizeInBytes":358},{"ext":344,"url":360,"hash":361,"mime":347,"name":362,"path":16,"size":363,"width":56,"height":364,"sizeInBytes":365},{"ext":344,"url":367,"hash":368,"mime":347,"name":369,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":371},{"id":336,"documentId":337,"name":338,"alternativeText":339,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":1019,"hash":372,"ext":344,"mime":347,"size":373,"url":374,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":375,"updatedAt":375,"publishedAt":375},{"large":1020,"small":1021,"medium":1022,"thumbnail":1023},{"ext":344,"url":345,"hash":346,"mime":347,"name":348,"path":16,"size":349,"width":40,"height":350,"sizeInBytes":351},{"ext":344,"url":353,"hash":354,"mime":347,"name":355,"path":16,"size":356,"width":48,"height":357,"sizeInBytes":358},{"ext":344,"url":360,"hash":361,"mime":347,"name":362,"path":16,"size":363,"width":56,"height":364,"sizeInBytes":365},{"ext":344,"url":367,"hash":368,"mime":347,"name":369,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":371},{"id":303,"ratio":297,"position":383,"scale":216},[1026],{"id":177,"documentId":386,"label":387,"slug":388,"order":182,"createdAt":389,"updatedAt":390,"publishedAt":391,"locale":11},[1028,1135],{"id":210,"documentId":211,"title":212,"slug":213,"num":214,"order":216,"text":215,"ctaLabel":217,"includes":297,"isLinked":77,"createdAt":298,"updatedAt":299,"publishedAt":300,"locale":11,"blocks":1029,"seo":1134},[1030,1098,1103,1106,1131,1132],{"id":134,"heading":396,"note":397,"initial":216,"modules":1031,"__component":585},[1032,1043,1054,1065,1076,1087],{"id":400,"name":401,"text":402,"features":1033,"events":1038},[1034,1035,1036,1037],{"id":405,"label":406},{"id":408,"label":409},{"id":411,"label":412},{"id":414,"label":415},[1039,1040,1041,1042],{"id":418,"time":419,"text":420},{"id":422,"time":419,"text":423},{"id":425,"time":426,"text":427},{"id":429,"time":430,"text":431},{"id":433,"name":434,"text":435,"features":1044,"events":1049},[1045,1046,1047,1048],{"id":438,"label":439},{"id":441,"label":442},{"id":444,"label":445},{"id":447,"label":448},[1050,1051,1052,1053],{"id":451,"time":452,"text":453},{"id":455,"time":456,"text":457},{"id":459,"time":460,"text":461},{"id":254,"time":463,"text":464},{"id":466,"name":467,"text":468,"features":1055,"events":1060},[1056,1057,1058,1059],{"id":471,"label":472},{"id":474,"label":475},{"id":477,"label":478},{"id":480,"label":481},[1061,1062,1063,1064],{"id":65,"time":419,"text":484},{"id":261,"time":419,"text":486},{"id":265,"time":419,"text":488},{"id":269,"time":490,"text":491},{"id":18,"name":493,"text":494,"features":1066,"events":1071},[1067,1068,1069,1070],{"id":497,"label":498},{"id":500,"label":501},{"id":503,"label":504},{"id":506,"label":507},[1072,1073,1074,1075],{"id":273,"time":510,"text":511},{"id":277,"time":513,"text":514},{"id":281,"time":516,"text":517},{"id":285,"time":519,"text":520},{"id":210,"name":522,"text":523,"features":1077,"events":1082},[1078,1079,1080,1081],{"id":526,"label":527},{"id":529,"label":530},{"id":532,"label":533},{"id":535,"label":536},[1083,1084,1085,1086],{"id":289,"time":539,"text":540},{"id":293,"time":542,"text":543},{"id":545,"time":546,"text":547},{"id":549,"time":550,"text":551},{"id":202,"name":553,"text":554,"features":1088,"events":1093},[1089,1090,1091,1092],{"id":557,"label":558},{"id":560,"label":561},{"id":563,"label":564},{"id":566,"label":567},[1094,1095,1096,1097],{"id":570,"time":571,"text":572},{"id":574,"time":575,"text":576},{"id":578,"time":579,"text":580},{"id":582,"time":583,"text":584},{"id":134,"heading":587,"note":588,"items":1099,"__component":602},[1100,1101,1102],{"id":591,"num":206,"title":592,"text":593},{"id":595,"num":214,"title":596,"text":597},{"id":599,"num":223,"title":600,"text":601},{"id":134,"heading":604,"project":1104,"testimonial":1105,"__component":614},{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11},{"id":195,"documentId":607,"text":608,"name":609,"role":610,"createdAt":611,"updatedAt":612,"publishedAt":613,"locale":11},{"id":134,"cards":1107,"__component":681},[1108,1117],{"id":618,"label":619,"title":620,"dark":77,"chips":1109},[1110,1111,1112,1113,1114,1115,1116],{"id":623,"label":624},{"id":626,"label":627},{"id":629,"label":481},{"id":631,"label":632},{"id":634,"label":635},{"id":637,"label":638},{"id":640,"label":641},{"id":336,"label":643,"title":644,"dark":113,"chips":1118},[1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130],{"id":647,"label":648},{"id":650,"label":651},{"id":653,"label":267},{"id":655,"label":656},{"id":658,"label":659},{"id":661,"label":662},{"id":664,"label":665},{"id":667,"label":668},{"id":670,"label":671},{"id":673,"label":674},{"id":676,"label":677},{"id":679,"label":680},{"id":683,"heading":684,"cta":16,"__component":685},{"id":134,"label":687,"title":688,"link":1133,"__component":691},{"id":690,"label":688,"href":75,"kind":76,"strong":77,"external":77},{"id":693,"metaTitle":694,"metaDescription":215,"canonical":16,"noIndex":77,"ogImage":16},{"id":242,"documentId":243,"title":244,"slug":245,"num":246,"order":4,"text":247,"ctaLabel":208,"includes":696,"isLinked":77,"createdAt":697,"updatedAt":698,"publishedAt":699,"locale":11,"blocks":1136,"seo":1154},[1137,1138,1142,1152],{"id":303,"heading":702,"body":696,"__component":703},{"id":242,"heading":705,"projects":1139,"__component":723},[1140,1141],{"id":303,"documentId":304,"title":305,"slug":306,"order":216,"lede":307,"desc":307,"collab":77,"clientName":308,"kind":309,"stack":310,"site":297,"noSiteText":311,"task":312,"result":297,"createdAt":313,"updatedAt":314,"publishedAt":315,"locale":11},{"id":709,"documentId":710,"title":711,"slug":712,"order":195,"lede":713,"desc":713,"collab":113,"clientName":714,"kind":715,"stack":716,"site":297,"noSiteText":717,"task":718,"result":719,"createdAt":720,"updatedAt":721,"publishedAt":722,"locale":11},{"id":725,"heading":88,"lead":726,"principlesHeading":727,"steps":1143,"principles":1148,"__component":757},[1144,1145,1146,1147],{"id":730,"num":206,"title":731,"text":732},{"id":734,"num":214,"title":735,"text":736},{"id":738,"num":223,"title":739,"text":740},{"id":742,"num":231,"title":743,"text":744},[1149,1150,1151],{"id":747,"title":498,"text":748},{"id":750,"title":751,"text":752},{"id":754,"title":755,"text":756},{"id":759,"heading":684,"cta":1153,"__component":685},{"id":761,"label":762,"href":97,"kind":763,"strong":77,"external":77},{"id":765,"metaTitle":766,"metaDescription":247,"canonical":16,"noIndex":77,"ogImage":16},{"id":759,"documentId":768,"name":319,"order":618,"showInMarquee":113,"createdAt":769,"updatedAt":770,"publishedAt":771,"locale":11,"logo":16},[],[1158,1159,1160,1161,1162,1163],{"id":775,"text":327},{"id":777,"text":778},{"id":780,"text":781},{"id":783,"text":330},{"id":785,"text":786},{"id":788,"text":333},[],{"id":195,"documentId":607,"text":608,"name":609,"role":610,"createdAt":611,"updatedAt":612,"publishedAt":613,"locale":11,"photo":1166},{"id":216,"documentId":792,"name":793,"alternativeText":794,"caption":16,"focalPoint":16,"width":83,"height":83,"formats":1167,"hash":802,"ext":34,"mime":37,"size":803,"url":804,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":805,"updatedAt":805,"publishedAt":806},{"thumbnail":1168},{"ext":34,"url":797,"hash":798,"mime":37,"name":799,"path":16,"size":800,"width":169,"height":169,"sizeInBytes":801},{"id":808,"documentId":809,"title":810,"slug":811,"order":225,"lede":812,"desc":812,"collab":77,"clientName":813,"kind":814,"stack":815,"site":816,"noSiteText":297,"task":817,"result":818,"createdAt":819,"updatedAt":820,"publishedAt":821,"locale":11,"tags":1170,"formats":1174,"points":1175,"slides":1178,"cover":1185,"coverSettings":1191,"taskList":1192,"done":1193,"gallery":1199,"seo":1200},[1171,1172,1173],{"id":824,"label":813},{"id":826,"label":814},{"id":828,"label":829},[],[1176,1177],{"id":833,"text":834},{"id":836,"text":837},[1179],{"id":177,"documentId":840,"name":841,"alternativeText":842,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":1180,"hash":867,"ext":344,"mime":347,"size":868,"url":869,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":870,"updatedAt":870,"publishedAt":870},{"large":1181,"small":1182,"medium":1183,"thumbnail":1184},{"ext":344,"url":845,"hash":846,"mime":347,"name":847,"path":16,"size":848,"width":40,"height":350,"sizeInBytes":849},{"ext":344,"url":851,"hash":852,"mime":347,"name":853,"path":16,"size":854,"width":48,"height":357,"sizeInBytes":855},{"ext":344,"url":857,"hash":858,"mime":347,"name":859,"path":16,"size":860,"width":56,"height":364,"sizeInBytes":861},{"ext":344,"url":863,"hash":864,"mime":347,"name":865,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":866},{"id":177,"documentId":840,"name":841,"alternativeText":842,"caption":16,"focalPoint":16,"width":340,"height":341,"formats":1186,"hash":867,"ext":344,"mime":347,"size":868,"url":869,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":870,"updatedAt":870,"publishedAt":870},{"large":1187,"small":1188,"medium":1189,"thumbnail":1190},{"ext":344,"url":845,"hash":846,"mime":347,"name":847,"path":16,"size":848,"width":40,"height":350,"sizeInBytes":849},{"ext":344,"url":851,"hash":852,"mime":347,"name":853,"path":16,"size":854,"width":48,"height":357,"sizeInBytes":855},{"ext":344,"url":857,"hash":858,"mime":347,"name":859,"path":16,"size":860,"width":56,"height":364,"sizeInBytes":861},{"ext":344,"url":863,"hash":864,"mime":347,"name":865,"path":16,"size":370,"width":64,"height":293,"sizeInBytes":866},{"id":808,"ratio":297,"position":383,"scale":216},[],[1194,1195,1196,1197,1198],{"id":881,"text":882},{"id":884,"text":885},{"id":887,"text":888},{"id":890,"text":891},{"id":893,"text":894},[],{"id":418,"metaTitle":897,"metaDescription":898,"canonical":16,"noIndex":77,"ogImage":16},{"id":17,"metaTitle":900,"metaDescription":901,"canonical":16,"noIndex":77,"ogImage":16},{"id":195,"documentId":607,"text":608,"name":609,"role":610,"createdAt":611,"updatedAt":612,"publishedAt":613,"locale":11,"photo":1203,"client":1206},{"id":216,"documentId":792,"name":793,"alternativeText":794,"caption":16,"focalPoint":16,"width":83,"height":83,"formats":1204,"hash":802,"ext":34,"mime":37,"size":803,"url":804,"previewUrl":16,"provider":24,"provider_metadata":16,"createdAt":805,"updatedAt":805,"publishedAt":806},{"thumbnail":1205},{"ext":34,"url":797,"hash":798,"mime":37,"name":799,"path":16,"size":800,"width":169,"height":169,"sizeInBytes":801},{"id":759,"documentId":768,"name":319,"order":618,"showInMarquee":113,"createdAt":769,"updatedAt":770,"publishedAt":771,"locale":11,"logo":16},{"id":134,"cards":1208,"__component":681},[1209,1218],{"id":618,"label":619,"title":620,"dark":77,"chips":1210},[1211,1212,1213,1214,1215,1216,1217],{"id":623,"label":624},{"id":626,"label":627},{"id":629,"label":481},{"id":631,"label":632},{"id":634,"label":635},{"id":637,"label":638},{"id":640,"label":641},{"id":336,"label":643,"title":644,"dark":113,"chips":1219},[1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231],{"id":647,"label":648},{"id":650,"label":651},{"id":653,"label":267},{"id":655,"label":656},{"id":658,"label":659},{"id":661,"label":662},{"id":664,"label":665},{"id":667,"label":668},{"id":670,"label":671},{"id":673,"label":674},{"id":676,"label":677},{"id":679,"label":680},{"id":683,"heading":684,"items":1233,"cta":16,"__component":685},[1234,1235,1236],{"id":904,"documentId":905,"question":906,"answer":907,"order":182,"createdAt":908,"updatedAt":909,"publishedAt":910,"locale":11},{"id":912,"documentId":913,"question":914,"answer":915,"order":216,"createdAt":916,"updatedAt":917,"publishedAt":918,"locale":11},{"id":433,"documentId":920,"question":921,"answer":922,"order":923,"createdAt":924,"updatedAt":925,"publishedAt":926,"locale":11},{"id":134,"label":687,"title":688,"link":1238,"__component":691},{"id":690,"label":688,"href":75,"kind":76,"strong":77,"external":77},{"id":693,"metaTitle":694,"metaDescription":215,"canonical":16,"noIndex":77,"ogImage":16}]