[{"data":1,"prerenderedAt":177},["ShallowReactive",2],{"navigation-en":3,"language-switcher-\u002Fen\u002Ftechnologies":87,"technologie-en":93},{"services":4,"industries":48,"caseStudies":69},[5,10,14,19,23,27,31,35,39,43],{"slug":6,"navLabel":7,"navGroup":8,"heroHeadline":9},"web-applications","Web applications","build","A web application built around your process",{"slug":11,"navLabel":12,"navGroup":8,"heroHeadline":13},"erp-systems","ERP systems","An ERP system built for your company, not the other way round",{"slug":15,"navLabel":16,"navGroup":17,"heroHeadline":18},"integrations-and-api","Integrations and APIs","improve","Your systems stop being islands",{"slug":20,"navLabel":21,"navGroup":17,"heroHeadline":22},"ai-implementation","AI implementation","AI deployed where it actually saves time",{"slug":24,"navLabel":25,"navGroup":17,"heroHeadline":26},"process-automation","Process automation","Work no one should be doing by hand",{"slug":28,"navLabel":29,"navGroup":8,"heroHeadline":30},"websites","Websites","A site that loads instantly and brings in inquiries",{"slug":32,"navLabel":33,"navGroup":8,"heroHeadline":34},"mobile-applications","Mobile applications","One codebase, both platforms",{"slug":36,"navLabel":37,"navGroup":17,"heroHeadline":38},"code-audit-and-project-takeover","Code audit and takeover","The project stalled. We'll take it over and tell you the truth about its condition",{"slug":40,"navLabel":41,"navGroup":17,"heroHeadline":42},"maintenance-and-support","Maintenance and support","A system needs someone watching it after launch",{"slug":44,"navLabel":45,"navGroup":46,"heroHeadline":47},"discovery-workshop","Discovery workshop","start","Before you decide to build, find out exactly what you're building",[49,53,57,61,65],{"slug":50,"navLabel":51,"heroHeadline":52},"manufacturing","Manufacturing","The works order reaches the floor as a printout from an email",{"slug":54,"navLabel":55,"heroHeadline":56},"automotive","Automotive","The customer exists in three places at once",{"slug":58,"navLabel":59,"heroHeadline":60},"industrial-automation","Industrial automation","You sell competence that doesn't photograph",{"slug":62,"navLabel":63,"heroHeadline":64},"e-commerce","E-commerce","The shop works. What sits behind it comes apart",{"slug":66,"navLabel":67,"heroHeadline":68},"logistics","Transport and logistics","The job arrives by email, the status comes back by phone",[70,77,82],{"slug":71,"client":72,"tag":73,"year":74,"summary":75,"image":76},"dss-by-caredo","Caredo","Product",2025,"We build the whole DSS product together with the Caredo team — from the CRM and planner to the software behind the key lockers and totems.","\u002Fimg\u002Fcase-studies\u002Fdss\u002Fkluczykomat\u002Fframe_0169.webp",{"slug":78,"client":72,"tag":79,"year":74,"summary":80,"image":81},"dss-by-caredo-website","Product website","We built the DSS product website end to end — from design to launch — on Caredo's visual identity.","\u002Fimg\u002Fscreenshots\u002Fdss-desktop.jpg",{"slug":83,"client":83,"tag":84,"year":74,"summary":85,"image":86},"2motion","Brand and website","A whole brand from scratch — logo, colours, business cards — a company website and blog posts that position 2motion in search.","\u002Fimg\u002Fscreenshots\u002F2motion-desktop.jpg",[88],{"code":89,"label":90,"name":91,"to":92},"pl","PL","Polish","\u002Ftechnologie",{"id":94,"title":95,"body":96,"description":133,"extension":134,"groups":135,"heroHeadline":169,"heroSubline":170,"meta":171,"navigation":172,"path":173,"seo":174,"stem":175,"__hash__":176},"technologiesEn\u002Fen\u002Fcompany\u002Ftechnologies.md","Technology — what we build on, and why",{"type":97,"value":98,"toc":125},"minimark",[99,104,108,111,115,118,122],[100,101,103],"h2",{"id":102},"how-we-choose","How we choose",[105,106,107],"p",{},"Three questions, in this order. Does this technology solve a problem we actually have? In three years, will we be able to find someone who knows it? Can it be replaced if it turns out to be a dead end?",[105,109,110],{},"A technology that only passes the first question is a risk transferred to the client. Most of the spectacular delivery failures we have watched from the sidelines began with picking a tool that five people in the region use.",[100,112,114],{"id":113},"what-we-dont-use","What we don't use",[105,116,117],{},"We don't build on a proprietary, closed engine — it is the most effective lock-in mechanism we know of, which is why we don't have one. We don't put technology that hasn't left experimental status into a system meant to run in production. We don't rewrite working code onto a newer framework merely because it is newer.",[100,119,121],{"id":120},"what-this-means-for-you","What this means for you",[105,123,124],{},"The repository, the economic rights and every infrastructure account are yours from day one. Documentation and tests are written so another team can take the system over without our involvement. That isn't goodwill — it is the condition that makes the choice of vendor reversible.",{"title":126,"searchDepth":127,"depth":127,"links":128},"",3,[129,131,132],{"id":102,"depth":130,"text":103},2,{"id":113,"depth":130,"text":114},{"id":120,"depth":130,"text":121},"TypeScript, Vue, Nuxt, Node.js, PostgreSQL, React Native. Four layers of the stack with the reasoning behind each choice — and what we deliberately don't use.","md",[136,146,154,162],{"group":137,"body":138,"items":139},"Frontend","TypeScript everywhere, no exceptions — an error caught by the compiler is two orders of magnitude cheaper than the same error found by a user. Vue and Nuxt as the default for new projects: server rendering, routing and image optimisation work out of the box, without assembling a framework from five libraries. React where the client's team already knows it or the existing code is written in it.",[140,141,142,143,144,145],"TypeScript","Vue","Nuxt","React","React Native","Flutter",{"group":147,"body":148,"items":149},"Backend","Node.js as the default runtime, because one language on both sides genuinely shortens the time it takes to get into a project. PHP when we take over an existing system or integrate with one we are not rewriting. PostgreSQL for anything with structure that has to stay consistent; Redis for queues, sessions and whatever can be lost on restart.",[150,151,152,153],"Node.js","PHP","PostgreSQL","Redis",{"group":155,"body":156,"items":157},"Infrastructure","Accounts opened in your name, not ours — the only configuration in which changing vendor doesn't mean a migration. Vercel for web applications and sites, Google Cloud for systems with their own backend and data that has to stay in a specific place. Docker so the local and production environments are the same environment. GitHub Actions for tests and deploys — a deployment should be boring and repeatable.",[158,159,160,161],"Vercel","Google Cloud","Docker","GitHub Actions",{"group":163,"body":164,"items":165},"AI","Language models deployed where they shorten specific work, not where they look good in a demo. Semantic search for internal knowledge nobody can find with a keyword search. Document extraction where somebody currently retypes data out of PDFs into a system. Each of these has a measurable effect — and if it can't be measured, we advise against the rollout.",[166,167,168],"language models","semantic search","document extraction","A boring stack, in the good sense of the word","We pick technology to fit the project, not the trend and not whatever we feel like learning. A system meant to run for five years needs tools that will still have people to hire for five years from now.",{},true,"\u002Fen\u002Fcompany\u002Ftechnologies",{"title":95,"description":133},"en\u002Fcompany\u002Ftechnologies","kMmXip0YLdZcJYt43gGgaSgTVirc4d_OoPasIfXI9aQ",1790522541347]