<!DOCTYPE html><html lang="en" data-astro-cid-sckkx6r4> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="icon" type="image/svg+xml" href="/favicon.svg"><link rel="apple-touch-icon" href="/apple-touch-icon.png"><link rel="manifest" href="/manifest.webmanifest"><meta name="theme-color" content="#0a0a0a"><meta name="author" content="oakay GmbH"><meta name="description" content="Vaduz-based software agency building custom web apps with Ruby on Rails &#38; Vue.js. Trusted by brands across Liechtenstein, Switzerland, Austria, and Germany."><meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1"><link rel="canonical" href="https://oakay.com/"><link rel="alternate" hreflang="en" href="https://oakay.com/"><link rel="alternate" hreflang="x-default" href="https://oakay.com/"><link rel="sitemap" href="/sitemap-index.xml"><link rel="preconnect" href="https://gc.zgo.at" crossorigin><meta property="og:type" content="website"><meta property="og:site_name" content="oakay"><meta property="og:locale" content="en_US"><meta property="og:url" content="https://oakay.com/"><meta property="og:title" content="oakay — Ruby on Rails Web App Development | Vaduz, LI"><meta property="og:description" content="Vaduz-based software agency building custom web apps with Ruby on Rails &#38; Vue.js. Trusted by brands across Liechtenstein, Switzerland, Austria, and Germany."><meta property="og:image" content="https://oakay.com/preview.png"><meta property="og:image:width" content="1200"><meta property="og:image:height" content="630"><meta property="og:image:alt" content="oakay — Custom web app development agency in Vaduz, Liechtenstein"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="oakay — Ruby on Rails Web App Development | Vaduz, LI"><meta name="twitter:description" content="Vaduz-based software agency building custom web apps with Ruby on Rails &#38; Vue.js. Trusted by brands across Liechtenstein, Switzerland, Austria, and Germany."><meta name="twitter:image" content="https://oakay.com/preview.png"><meta name="twitter:image:alt" content="oakay — Custom web app development agency in Vaduz, Liechtenstein"><script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":["Organization","ProfessionalService"],"@id":"https://oakay.com/#organization","name":"oakay GmbH","legalName":"oakay GmbH","foundingDate":"2018","url":"https://oakay.com","sameAs":["https://www.linkedin.com/company/oakay","https://maps.app.goo.gl/Ht25NsYxAMNf9uCE8"],"logo":{"@type":"ImageObject","url":"https://oakay.com/favicon.svg","width":512,"height":512},"image":"https://oakay.com/preview.png","description":"Software development agency based in Vaduz, Liechtenstein. We design, build, operate and rescue custom web applications using Ruby on Rails, Vue.js, and open-source tools for clients across the DACH region.","slogan":"We design, build, operate and sometimes rescue web apps.","knowsAbout":["Ruby on Rails","Vue.js","MySQL","Redis","Elasticsearch","Qdrant","Docker","Google Cloud Platform","Amazon Web Services","Custom Web Application Development","AI Integration","Retrieval-Augmented Generation (RAG)","Vector Search","Application Modernization"],"areaServed":[{"@type":"Country","name":"Liechtenstein"},{"@type":"Country","name":"Switzerland"},{"@type":"Country","name":"Austria"},{"@type":"Country","name":"Germany"}],"address":{"@type":"PostalAddress","streetAddress":"Landstrasse 38","postalCode":"9490","addressLocality":"Vaduz","addressCountry":"LI"},"contactPoint":{"@type":"ContactPoint","email":"hello@oakay.com","contactType":"customer support","availableLanguage":["English","German"],"areaServed":["LI","CH","AT","DE"]},"serviceType":"Custom Software Development","hasOfferCatalog":{"@type":"OfferCatalog","name":"Software Development Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Custom Web Application Development","description":"End-to-end development of scalable web applications using Ruby on Rails and Vue.js.","provider":{"@id":"https://oakay.com/#organization"}}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"AI Integration","description":"Integrating AI capabilities — including retrieval-augmented generation (RAG), vector search with Qdrant, and semantic search with Elasticsearch — into web applications.","provider":{"@id":"https://oakay.com/#organization"}}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Application Rescue & Modernization","description":"Technical audit, stabilization, and modernization of legacy or struggling web applications.","provider":{"@id":"https://oakay.com/#organization"}}}]}},{"@type":"WebSite","@id":"https://oakay.com/#website","name":"oakay","url":"https://oakay.com","description":"Custom web app development agency based in Vaduz, Liechtenstein.","publisher":{"@id":"https://oakay.com/#organization"},"inLanguage":"en"},{"@type":"WebPage","@id":"https://oakay.com/#webpage","url":"https://oakay.com/","name":"oakay — Ruby on Rails Web App Development | Vaduz, LI","description":"Vaduz-based software agency building custom web apps with Ruby on Rails & Vue.js. Trusted by brands across Liechtenstein, Switzerland, Austria, and Germany.","isPartOf":{"@id":"https://oakay.com/#website"},"about":{"@id":"https://oakay.com/#organization"},"primaryImageOfPage":"https://oakay.com/preview.png","inLanguage":"en"}]}</script><title>oakay — Ruby on Rails Web App Development | Vaduz, LI</title><style>@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-cyrillic-ext-wght-normal.Dc5xu4We.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-cyrillic-wght-normal.B0Yo_ULV.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-vietnamese-wght-normal.wikBsL6_.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-latin-ext-wght-normal.CwtNDoQR.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-latin-wght-normal.CSF1BaNN.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{box-sizing:border-box}html{font-family:IBM Plex Mono,monospace;font-size:16px;font-weight:500;line-height:1.5rem;color:#fff;background-color:#0a0a0a}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}@media(max-width:400px){html{font-size:13px!important}body{line-height:1.7rem!important}}a{color:#fff;border-bottom:.125rem solid #283c46;text-decoration:none!important;transition:all .3s cubic-bezier(.42,.13,.35,.98)}a:hover,a:focus{text-decoration:none;border-bottom-color:#00ff41}h1,h2,h3,h4,h5,h6{font-family:Raleway Variable,sans-serif;margin:0}h1{font-weight:900;color:#00ff41}h2{font-size:1.5rem;font-weight:900;color:#fff;text-align:center;margin:0 0 1rem}@media(min-width:768px){h2{margin:0 0 2rem}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tldr{font-family:IBM Plex Mono,monospace;font-size:.875rem;line-height:1.375rem;font-weight:400;text-align:center;margin-top:0;margin-bottom:.5rem}.tldr:before{content:attr(data-label);background-color:#36363699;border-radius:.1875rem;color:#fff;padding:0 .5rem;line-height:1.375rem;font-size:.875rem;display:inline-block;margin-right:.5rem;vertical-align:.0625rem}.tldr.legal:before{font-size:.5625rem;line-height:1.25rem;padding:0 .375rem;margin-right:.375rem}.container{max-width:960px;margin:0 auto;padding:0 1rem}.row{display:flex;flex-wrap:wrap;margin:0 -.5rem}.col-12{width:100%;padding:0 .5rem}@media(min-width:768px){.col-6-m{width:50%}}html,body{margin:0;width:100%;height:100%;position:relative}#starfield[data-astro-cid-sckkx6r4]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0a0a0a;z-index:-1;overflow:hidden}@media(prefers-reduced-motion:no-preference){#starfield[data-astro-cid-sckkx6r4]{opacity:.0001;transition:opacity .6s ease-in}#starfield[data-astro-cid-sckkx6r4].visible{opacity:1}}@keyframes slideDown{0%{transform:translateY(-50px);opacity:.0001}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{transform:translateY(30px);opacity:.0001}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:no-preference){.header{opacity:.0001;transform:translateY(-50px)}.header.animate{animation:slideDown .4s ease-out forwards}.intro{opacity:.0001;transform:translateY(30px)}.intro.animate{animation:fadeInUp .4s ease-out forwards}.mantra{opacity:.0001;transform:translateY(30px)}.mantra.animate{animation:fadeInUp .4s ease-out forwards}.clients{opacity:.0001;transform:translateY(30px)}.clients.animate{animation:fadeInUp .4s ease-out forwards}.contact{opacity:.0001;transform:translateY(30px)}.contact.animate{animation:fadeInUp .4s ease-out forwards}.stack{opacity:.0001;transform:translateY(30px)}.stack.animate{animation:fadeInUp .4s ease-out forwards}}.header[data-astro-cid-3ef6ksr2]{height:auto}.logoWrapper[data-astro-cid-3ef6ksr2]{display:flex;justify-content:center}.logo{width:8.75rem;height:auto;display:block;padding-top:5rem;filter:drop-shadow(0 0 2px #00ff41) drop-shadow(0 0 10px #00ff41)}.stack[data-astro-cid-rlzglfcb] h2[data-astro-cid-rlzglfcb]{margin-bottom:.75rem}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb]{margin:0 auto;padding:0;list-style:none}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb] li[data-astro-cid-rlzglfcb]{display:inline-block}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:0 1.875rem;max-width:90%;margin-bottom:.5rem}@media(min-width:480px){.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos{max-width:26rem}}@media(min-width:992px){.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos{gap:0 3.125rem;max-width:80%}}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb]{border-bottom:0!important;border-radius:.5rem;transition:all .3s ease;display:inline-block}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb] svg{width:3.75rem;height:3.75rem;fill:#fff;transition:all .3s ease}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb]:hover,.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb]:focus{border-color:#00ff41}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb]:hover svg,.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].logos a[data-astro-cid-rlzglfcb]:focus svg{fill:#00ff41;filter:drop-shadow(0 0 8px #00ff41)}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].list{display:flex;flex-direction:row;justify-content:center;gap:.3125rem;flex-wrap:wrap}.stack[data-astro-cid-rlzglfcb] ul[data-astro-cid-rlzglfcb].list li[data-astro-cid-rlzglfcb]:not(:last-of-type):after{content:","}.elastic{width:6.25rem!important}.redis{width:2.8125rem!important}.vue{width:2.5rem!important}.qdrant{width:2.1875rem!important}.mysql{width:5rem!important}.rails{width:5.625rem!important}.docker{width:3rem!important}.intro{padding:1.875rem 0;background-color:transparent}@media(min-width:768px){.intro{padding:3rem 0 3.75rem}}.intro>div{position:relative}@media(min-width:768px){.tldr[data-astro-cid-u43ozx4m] br[data-astro-cid-u43ozx4m]{display:none}}.inyourface[data-astro-cid-u43ozx4m]{font-weight:900;font-size:2.5rem;line-height:2.875rem;margin:0 0 1.875rem;color:#fff;text-shadow:0 0 10px #00ff41,0 0 20px #00ff41;text-align:center}@media(min-width:768px){.inyourface[data-astro-cid-u43ozx4m]{font-size:3.125rem;line-height:3.5rem;margin:0 0 3.125rem}}@media(prefers-reduced-motion:reduce){.inyourface[data-astro-cid-u43ozx4m]{opacity:1!important;transform:none!important}}.inyourface[data-astro-cid-u43ozx4m] .highlight[data-astro-cid-u43ozx4m]{color:#00ff41;text-shadow:0 0 15px #00ff41}.oakay-logo-container[data-astro-cid-u43ozx4m]{display:inline-flex;align-items:center;justify-content:center;vertical-align:-.4375rem}@media(min-width:768px){.oakay-logo-container[data-astro-cid-u43ozx4m]{vertical-align:-.625rem}}.oakay-logo{height:1.875rem;width:auto;fill:#fff;filter:drop-shadow(0 0 2px #00ff41) drop-shadow(0 0 10px #00ff41)}@media(min-width:768px){.oakay-logo{height:2.4375rem}}.mantra{padding:3.75rem 0;background:transparent;position:relative;text-align:center}@media(min-width:768px){.mantra{padding:5rem 0}}.mantra p[data-astro-cid-bsxb3lif]{margin:0 auto;line-height:1.8rem}@media(min-width:600px){.mantra p[data-astro-cid-bsxb3lif]{max-width:75%}}@media(min-width:992px){.mantra p[data-astro-cid-bsxb3lif]{max-width:65%}}.mantra p[data-astro-cid-bsxb3lif]+p[data-astro-cid-bsxb3lif]{margin-top:1rem}.mantra u[data-astro-cid-bsxb3lif]{text-decoration:none}.clients>.container{max-width:68.75rem}.clients{padding-bottom:1.875rem}@media(min-width:768px){.clients{padding-bottom:3.75rem}}.clients ul[data-astro-cid-cktvhckl]{list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.75rem;max-width:80%}@media(min-width:768px){.clients ul[data-astro-cid-cktvhckl]{gap:1rem 2.75rem}}.clients li[data-astro-cid-cktvhckl]{flex:0 0 auto;width:6rem;height:5rem;display:flex;align-items:center;justify-content:center}.clients li[data-astro-cid-cktvhckl].clientA1{width:4.375rem}.clients li[data-astro-cid-cktvhckl].clientBabywalz{width:9.125rem}.clients li[data-astro-cid-cktvhckl].clientIbu{width:5rem}.clients li[data-astro-cid-cktvhckl].clientNidecker{width:5.625rem}.clients li[data-astro-cid-cktvhckl].clientTimezone{width:3.75rem}.clients li[data-astro-cid-cktvhckl].clientPlanetsports{width:7.25rem}.clients li[data-astro-cid-cktvhckl].clientTagHeuer{width:4.75rem}.clients li[data-astro-cid-cktvhckl].clientPorsche{width:9.125rem}.clients li[data-astro-cid-cktvhckl].clientK5{width:3.75rem}.clients li[data-astro-cid-cktvhckl].clientCC{width:10.375rem}.clients li[data-astro-cid-cktvhckl].clientIntersport,.clients li[data-astro-cid-cktvhckl].clientPinops{width:9.125rem}.clients li[data-astro-cid-cktvhckl].clientSunrise{width:5rem}.clients li[data-astro-cid-cktvhckl].clientBoss{width:6.375rem}.clients li[data-astro-cid-cktvhckl].clientRoadvagabond{width:8.25rem}.clients li[data-astro-cid-cktvhckl] a[data-astro-cid-cktvhckl]{border:0;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.clients li[data-astro-cid-cktvhckl] a[data-astro-cid-cktvhckl] img[data-astro-cid-cktvhckl]{max-width:100%;max-height:3.75rem;width:auto;height:auto;object-fit:contain;padding:0 .5rem;filter:grayscale(100%) brightness(0) invert(1);transition:all .3s ease}.clients li[data-astro-cid-cktvhckl] a[data-astro-cid-cktvhckl]:hover img[data-astro-cid-cktvhckl],.clients li[data-astro-cid-cktvhckl] a[data-astro-cid-cktvhckl]:focus img[data-astro-cid-cktvhckl]{filter:grayscale(100%) brightness(0) invert(1) drop-shadow(0 0 8px #00ff41)}.contact{padding:3.75rem 0;background:transparent;position:relative;text-align:center}@media(min-width:768px){.contact{padding:5rem 0}}.legal[data-astro-cid-xmivup5a]{font-size:.6875rem;line-height:1.125rem;color:#999;margin-top:4rem;max-width:37.5rem;margin-left:auto;margin-right:auto}
</style></head> <body data-astro-cid-sckkx6r4>  <header class="header" data-astro-cid-3ef6ksr2> <div class="container" data-astro-cid-3ef6ksr2> <div class="logoWrapper" data-astro-cid-3ef6ksr2> <svg class="logo" width="100%" height="100%" viewBox="0 0 75 75" version="1.1" xml:space="preserve" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.41421" xmlns="http://www.w3.org/2000/svg"> <defs></defs> <g> <path d="m 45.601092,38.263188 c 0.508106,1.623689 0.723995,3.394272 0.723995,5.056467 0,5.007265 -1.934289,10.92371 -8.042456,10.92371 -6.110349,0 -7.96686,-5.916445 -7.96686,-10.92371 0,-1.120965 0.09522,-2.29042 0.306753,-3.432065 -1.668243,0.06489 -3.345935,0.108388 -5.028716,0.108388 -3.777716,0 -6.659161,-0.169714 -8.142043,-0.281667 -0.182453,1.168028 -0.282765,2.370285 -0.282765,3.605344 0,11.835743 8.661052,20.787067 21.113631,20.787067 12.450398,0 21.189229,-8.951324 21.189229,-20.787067 0,-2.959292 -0.546631,-5.743165 -1.561389,-8.254642 -2.098569,0.706664 -6.616273,2.107871 -12.309379,3.198175 z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> <path d="m 40.617444,13.120614 c 0,0 -3.140949,2.930055 -7.820026,-1.1174 0,0 -4.820821,-4.2128919 -10.500843,2.261184 1.870321,0.175419 3.709388,0.690264 5.392167,1.543111 l 1.682055,0.852846 -5.626231,11.815776 -0.0043,-0.0035 -1.038019,2.17704 c 0.894819,0.02282 1.874684,0.03638 2.938871,0.03638 3.854041,0 7.658652,-0.183976 11.306253,-0.544795 7.851261,-0.780872 14.861516,-2.864499 17.703707,-3.792219 C 52.111964,20.522409 46.589681,8.6510126 40.617444,13.120614 Z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> <path d="m 22.776331,25.559624 c -0.944248,-0.60398 -2.153814,-0.783678 -3.291417,-0.377221 -1.155778,0.411449 -1.972089,1.333464 -2.2912,2.409505 l 3.789346,1.73493 z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> <path d="m 18.805259,23.346929 c 1.655885,-0.591145 3.409175,-0.37936 4.820821,0.42785 l 1.039472,-2.186311 c -1.987353,-1.066059 -4.410849,-1.329186 -6.702774,-0.512706 -2.307191,0.823609 -4.002329,2.571375 -4.820822,4.662845 l 2.231592,1.020422 c 0.543725,-1.529562 1.758379,-2.81525 3.431711,-3.4121 z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> <path d="m 17.291847,19.265958 c 2.805119,-1.001167 5.762161,-0.700247 8.206009,0.571892 l 1.043833,-2.194867 C 23.524314,16.109856 19.888345,15.768289 16.450092,16.994078 12.994395,18.226997 10.422611,20.799085 9.12,23.897429 l 2.238135,1.023986 c 1.033656,-2.535721 3.111146,-4.649297 5.933712,-5.655457 z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> <path d="m 25.522572,37.043817 c -5.323113,0 -8.815156,-0.338714 -9.049219,-0.362246 -1.146326,-0.11552 -1.980812,-1.11954 -1.865233,-2.244784 0.11703,-1.124531 1.138331,-1.941723 2.288291,-1.829769 0.08941,0.0086 9.127723,0.882082 20.290049,-0.225334 10.622237,-1.055362 19.670728,-4.379753 19.760864,-4.413268 1.079452,-0.402178 2.283203,0.13192 2.691723,1.189422 0.407792,1.056788 -0.134478,2.238366 -1.211748,2.639832 -0.388165,0.144042 -9.630013,3.546871 -20.820689,4.657854 -4.527153,0.449241 -8.680677,0.588293 -12.084038,0.588293 z" fill="#ffffff" fill-rule="nonzero" clip-rule="evenodd" stroke-width="0.71996" stroke-linejoin="round" stroke-miterlimit="1.41421"></path> </g> </svg> </div> </div> </header> <article> <section class="intro"> <div class="container">  <p class="tldr" data-label="TL;DR" data-astro-cid-u43ozx4m>We design, build, operate and sometimes<br data-astro-cid-u43ozx4m> rescue web apps.</p> <h1 class="inyourface" data-astro-cid-u43ozx4m>
Hey, we are <span class="oakay-logo-container" data-astro-cid-u43ozx4m><span class="visually-hidden" data-astro-cid-u43ozx4m>oakay</span><svg viewBox="0 0 1256 319" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414" class="oakay-logo"> <path fill="none" d="M0 0h1255.684v318.016H0z"></path> <g transform="matrix(4.16667 0 0 4.16666 -44.315 -65.317)"> <path d="M98.688 63.915c8.617 0 11.49-4.896 11.064-16.279-2.553 1.596-7.235 1.914-11.17 2.978-4.043.959-7.449 2.662-7.449 7.021 0 4.469 3.513 6.28 7.555 6.28zm-23.406-28.62c.319-7.235 3.723-11.915 8.617-14.789 4.894-2.765 11.278-3.829 17.554-3.829 13.087 0 25.747 2.871 25.747 18.512v24.149c0 4.682 0 9.789 2.128 14.151h-18.194c-.637-1.703-.85-3.405-1.063-5.213-4.68 4.893-11.596 6.808-18.193 6.808-10.532 0-18.829-5.319-18.829-16.703 0-17.979 19.575-16.597 32.129-19.149 3.085-.639 4.787-1.702 4.787-5.107 0-4.148-5-5.746-8.724-5.746-5.002 0-8.193 2.235-9.043 6.916H75.282zM222.154 63.915c8.619 0 11.49-4.896 11.063-16.279-2.551 1.596-7.232 1.914-11.169 2.978-4.044.959-7.448 2.662-7.448 7.021 0 4.469 3.512 6.28 7.554 6.28zm-23.405-28.62c.319-7.235 3.722-11.915 8.617-14.789 4.893-2.765 11.276-3.829 17.553-3.829 13.086 0 25.747 2.871 25.747 18.512v24.149c0 4.682 0 9.789 2.128 14.151h-18.193c-.638-1.703-.851-3.405-1.064-5.213-4.681 4.893-11.596 6.808-18.193 6.808-10.531 0-18.83-5.319-18.83-16.703 0-17.979 19.575-16.597 32.129-19.149 3.087-.639 4.787-1.702 4.787-5.107 0-4.148-5-5.746-8.723-5.746-4.999 0-8.192 2.235-9.043 6.916h-16.915z" fill-rule="nonzero"></path> <clipPath id="oakay_svg__a"> <path d="M10.731 16.006h301.057V92H10.731z"></path> </clipPath> <g clip-path="url(#oakay_svg__a)"> <path d="M289.977 78.382C285.616 90.511 279.125 92 266.892 92h-8.512V77.319h6.278c4.147 0 7.233-2.341 7.233-6.171 0-2.98-3.51-11.49-4.573-14.468l-14.256-38.407h19.149l10.426 35.96h.213l10.426-35.96h18.512l-21.811 60.109z" fill-rule="nonzero"></path> </g> <path d="M192.617 18.273h-20.958l-16.49 18.405V18.273h-18.087v55.216h18.087v-17.66l4.68-4.576 13.512 22.236h21.81l-22.767-34.364 20.213-20.852zM40.217 61.138c-8.455 0-11.026-8.345-11.026-15.407 0-7.061 2.57-15.512 11.026-15.512 8.45 0 11.128 8.45 11.128 15.512 0 7.062-2.677 15.407-11.128 15.407m0-44.835c-17.23 0-29.211 12.739-29.211 29.428 0 16.694 11.982 29.322 29.211 29.322 17.225 0 29.317-12.628 29.317-29.322 0-16.689-12.092-29.428-29.317-29.428" fill-rule="nonzero"></path> </g> </svg></span>,<br data-astro-cid-u43ozx4m> a <span class="highlight" data-astro-cid-u43ozx4m>software development</span><br data-astro-cid-u43ozx4m> company.
</h1> <div class="stack" data-astro-cid-rlzglfcb> <h2 data-astro-cid-rlzglfcb>Tools of the trade</h2> <ul class="logos" data-astro-cid-rlzglfcb> <li data-astro-cid-rlzglfcb><a href="http://rubyonrails.org/" target="_blank" rel="noopener noreferrer" title="Ruby on Rails" data-astro-cid-rlzglfcb><svg height="32" viewBox="0 0 90 32" width="90" xmlns="http://www.w3.org/2000/svg" class="rails" data-astro-cid-rlzglfcb="true"><title>Ruby on Rails</title><path d="m418.082357 25.9995403v4.1135034h-7.300339v1.89854h3.684072c1.972509 0 4.072534 1.4664311 4.197997 3.9665124l.005913.2373977v1.5821167c-.087824 3.007959-2.543121 4.1390018-4.071539 4.2011773l-.132371.0027328h-7.390745v-4.0909018l7.481152-.0226016v-1.9889467l-1.190107.0007441-.346911.0008254-.084566.0003251-.127643.0007097-.044785.0003793-.055764.0007949-.016378.0008259c.000518.0004173.013246.0008384.034343.0012518l.052212.000813c.030547.0003979.066903.0007803.105225.0011355l.078131.0006709-.155385-.0004701c-.31438-.001557-.85249-.0041098-1.729029-.0080055-1.775258 0-4.081832-1.3389153-4.219994-3.9549201l-.006518-.24899v-1.423905c0-2.6982402 2.278213-4.182853 4.065464-4.2678491l.161048-.003866zm-18.691579 0v11.8658752h6.170255v4.1361051h-10.735792v-16.0019803zm-6.441475 0v16.0019803h-4.588139v-16.0019803zm-10.803597 0c1.057758 0 4.04923.7305141 4.198142 3.951222l.005768.2526881v11.7980702h-4.271715v-2.8252084h-4.136105v2.8252084h-4.407325v-11.7980702c0-1.3184306 1.004082-4.0468495 3.946899-4.197411l.257011-.0064991zm-24.147177-.0027581 8.580186.0005749c.179372.0196801 4.753355.5702841 4.753355 5.5438436s-3.775694 5.3947112-3.92376 5.4093147l-.004472.0004216 5.00569 5.0505836h-6.374959l-3.726209-3.8608906v3.8608906h-4.309831zm22.418634-2.6971669.033418.0329283s-.384228.27122-.791058.610245c-12.837747-9.4927002-20.680526-5.0175701-23.144107-3.8196818-11.187826 6.2428065-7.954768 21.5678895-7.888988 21.8737669l.001006.0046469h-17.855317s.67805-6.6900935 5.4244-14.600677c4.74635-7.9105834 12.837747-13.9000252 19.414832-14.4876686 12.681632-1.2703535 24.110975 9.7062594 24.805814 10.3864403zm-31.111679 14.1815719 2.44098.881465c.113008.8852319.273103 1.7233771.441046 2.4882761l.101394.4499406-2.7122-.9718717c-.113009-.67805-.226017-1.6499217-.27122-2.84781zm31.506724-7.6619652h-1.514312c-1.128029 0-1.333125.5900716-1.370415.8046431l-.007251.056292-.000906.0152319-.00013 3.9153864h4.136105l-.000316-3.916479c-.004939-.0795522-.08331-.8750744-1.242775-.8750744zm-50.492125.339025 2.599192.94927c-.316423.731729-.719369 1.6711108-1.011998 2.4093289l-.118085.3028712-2.599192-.94927c.226017-.610245.700652-1.7403284 1.130083-2.7122001zm35.445121-.1434449h-3.456844v3.6588673h3.434397s.98767-.3815997.98767-1.8406572-.965223-1.8182101-.965223-1.8182101zm-15.442645-.7606218 1.62732 1.2882951c-.180814.705172-.318232 1.410344-.412255 2.115516l-.06238.528879-1.830735-1.4465067c.180813-.81366.384228-1.6499217.67805-2.4861834zm4.000495-6.3058651 1.017075 1.5369134c-.39779.4158707-.766649.8317413-1.095006 1.2707561l-.238493.3339623-1.08488-1.6273201c.40683-.5198383.881465-1.0396767 1.401304-1.5143117zm-16.182794-3.3450467 1.604719 1.4013034c-.40683.4237812-.800947.8729894-1.172815 1.3285542l-.364099.4569775-1.740328-1.4917101c.519838-.5650416 1.08488-1.1300833 1.672523-1.695125zm22.398252-.0904067.497237 1.4917101c-.524359.162732-1.048717.3688592-1.573076.6068095l-.393269.1842488-.519838-1.559515c.565041-.2486184 1.22049-.4972367 1.988946-.7232534zm5.28879-.54244c.578603.0361627 1.171671.1012555 1.779204.2068505l.458361.0869712-.090406 1.4013034c-.596684-.1265694-1.193368-.2097435-1.790052-.2495224l-.447513-.0216976zm-18.555968-6.2380601 1.017075 1.559515c-.440733.2203663-.868752.4661594-1.303128.7278443l-.437201.2666291-1.039676-1.5821167c.610245-.3616267 1.197888-.67805 1.76293-.9718717zm18.601172-.8588633c1.344799.3842283 1.923513.6474959 2.155025.7707625l.037336.0202958-.090406 1.5143117c-.482169-.1958811-.964338-.381717-1.453204-.5575078l-.739158-.2561522zm-8.633837-1.3334984.452033 1.3787017h-.226016c-.491587 0-.983173.0127134-1.474759.0476754l-.491587.0427313-.429431-1.3334984c.745855-.0904067 1.469108-.13561 2.16976-.13561z" transform="translate(-329 -10)"></path></svg></a></li> <li data-astro-cid-rlzglfcb><a href="https://vuejs.org/" target="_blank" rel="noopener noreferrer" title="Vuejs" data-astro-cid-rlzglfcb><svg viewBox="0 0 448 512" class="vue" data-astro-cid-rlzglfcb="true"> <title>Vue.js</title> <path d="M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z"></path> </svg></a></li> <li data-astro-cid-rlzglfcb><a href="https://www.mysql.com/" target="_blank" rel="noopener noreferrer" title="MySQL" data-astro-cid-rlzglfcb><svg viewBox="0 0 1634 842" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414" class="mysql" data-astro-cid-rlzglfcb="true"> <title>MySQL</title> <g transform="scale(4.16667)"> <clipPath id="mysql_svg__a"> <path clip-rule="nonzero" d="M.06.695h391.39V202H.06z"></path> </clipPath> <g clip-path="url(#mysql_svg__a)"> <path d="M1.65 184.049h12.842v-50.711l19.88 44.209c2.346 5.35 5.557 7.244 11.855 7.244 6.297 0 9.384-1.894 11.731-7.244l19.88-44.209v50.711H90.68V133.42c0-4.939-1.976-7.326-6.051-8.56-9.755-3.047-16.299-.413-19.263 6.173l-19.51 43.631-18.893-43.631c-2.839-6.586-9.507-9.22-19.262-6.173-4.076 1.234-6.051 3.621-6.051 8.56v50.629M101.359 142.772h12.837v27.939c-.12 1.518.488 5.08 7.521 5.192 3.59.056 27.701 0 27.927 0v-33.266h12.867c.06 0-.013 45.363-.012 45.557.072 11.189-13.882 13.619-20.312 13.806h-40.55v-8.64c.071 0 40.519.009 40.621 0 8.265-.873 7.289-4.981 7.288-6.364v-3.369h-27.295c-12.699-.117-20.786-5.66-20.886-12.035-.009-.59.274-28.539-.006-28.82M172.408 184.049h36.921c4.322 0 8.519-.904 11.853-2.469 5.557-2.552 8.274-6.009 8.274-10.537v-9.385c0-3.705-3.086-7.162-9.137-9.468-3.211-1.235-7.162-1.893-10.99-1.893H193.77c-5.186 0-7.656-1.564-8.273-5.021-.124-.413-.124-.741-.124-1.153v-5.845c0-.329 0-.659.124-1.071.617-2.633 1.976-3.375 6.545-3.787.37 0 .864-.082 1.234-.082h36.674v-8.56h-36.056c-5.186 0-7.903.328-10.373 1.07-7.656 2.387-10.99 6.174-10.99 12.76v7.49c0 5.764 6.545 10.703 17.534 11.855 1.235.082 2.47.164 3.705.164h13.336c.494 0 .988 0 1.357.082 4.077.33 5.805 1.071 7.039 2.553.743.74.989 1.483.989 2.305v7.492c0 .904-.617 2.059-1.852 3.045-1.111.988-2.965 1.646-5.433 1.812-.495 0-.866.082-1.36.082h-35.438v8.561M309.569 169.149c0 8.808 6.543 13.748 19.756 14.736 1.236.082 2.47.164 3.705.164h33.463v-8.561h-33.711c-7.532 0-10.371-1.894-10.371-6.421v-44.289h-12.842v44.371M251.512 168.856c0 .412.123.826.248 1.32.742 3.547 4.082 5.527 9.157 5.527h11.666l-10.717-9.675h14.912l9.346 8.439c1.722-.92 2.857-2.324 3.252-4.127.123-.412.123-.824.123-1.236v-29.285c0-.331 0-.743-.123-1.155-.743-3.301-4.084-5.197-9.034-5.197h-19.425c-5.692 0-9.405 2.475-9.405 6.352v29.037zm-13.859.742v-30.522c0-7.754 5.443-12.457 16.209-13.941a24.61 24.61 0 0 1 3.465-.248h24.375c1.238 0 2.351.084 3.59.248 10.763 1.484 16.208 6.187 16.208 13.941v30.522c0 6.291-2.312 9.658-7.64 11.851l12.648 11.42h-14.91l-10.234-9.238-10.303.65h-13.734c-2.352 0-4.827-.33-7.549-1.072-8.166-2.226-12.125-6.515-12.125-13.611M377.792 110.576c-7.895-.216-13.924.518-19.081 2.694-1.464.617-3.8.633-4.039 2.468.805.844.93 2.106 1.571 3.143 1.23 1.992 3.308 4.662 5.162 6.061 2.027 1.529 4.115 3.166 6.285 4.49 3.863 2.355 8.178 3.701 11.896 6.06 2.194 1.391 4.372 3.143 6.51 4.713 1.057.776 1.768 1.983 3.143 2.469v-.225c-.723-.92-.908-2.183-1.573-3.142-.97-.973-1.945-1.945-2.917-2.918-2.852-3.787-6.475-7.113-10.325-9.877-3.07-2.203-9.941-5.18-11.222-8.754a9.547 9.547 0 0 1-.225-.225c2.176-.244 4.725-1.031 6.734-1.57 3.375-.906 6.391-.672 9.875-1.572 1.573-.447 3.143-.897 4.715-1.346v-.898c-1.761-1.807-3.017-4.202-4.939-5.836-5.026-4.28-10.512-8.556-16.16-12.122-3.133-1.978-7.006-3.262-10.326-4.938-1.118-.564-3.079-.856-3.817-1.796-1.744-2.224-2.693-5.042-4.039-7.631-2.818-5.426-5.584-11.352-8.08-17.06-1.703-3.893-2.816-7.732-4.94-11.224-10.191-16.757-21.162-26.871-38.158-36.812-3.615-2.114-7.968-2.949-12.57-4.04l-7.406-.45c-1.508-.63-3.076-2.473-4.49-3.367-5.629-3.557-20.071-11.293-24.241-1.122-2.633 6.42 3.936 12.685 6.283 15.937 1.651 2.283 3.76 4.842 4.94 7.408.773 1.687.908 3.377 1.57 5.163 1.633 4.397 3.053 9.179 5.162 13.243 1.069 2.055 2.244 4.222 3.592 6.061.828 1.127 2.244 1.624 2.469 3.367-1.387 1.939-1.465 4.95-2.244 7.407-3.508 11.061-2.186 24.81 2.918 32.997 1.566 2.513 5.254 7.903 10.326 5.836 4.435-1.807 3.443-7.406 4.713-12.345.287-1.121.111-1.944.674-2.694v.224c1.345 2.693 2.693 5.388 4.041 8.081 2.99 4.815 8.297 9.847 12.793 13.244 2.332 1.762 4.168 4.807 7.183 5.836v-.225h-.224c-.584-.91-1.498-1.287-2.245-2.019-1.757-1.723-3.71-3.866-5.164-5.836-4.089-5.555-7.705-11.632-10.998-17.959-1.572-3.02-2.939-6.353-4.265-9.427-.51-1.186-.504-2.978-1.571-3.592-1.451 2.253-3.589 4.075-4.712 6.734-1.797 4.253-2.03 9.438-2.694 14.815-.394.142-.219.044-.449.225-3.127-.755-4.227-3.973-5.387-6.735-2.939-6.982-3.484-18.225-.898-26.262.668-2.079 3.691-8.629 2.468-10.55-.583-1.917-2.511-3.025-3.591-4.489-1.334-1.811-2.668-4.195-3.592-6.286-2.404-5.445-3.527-11.556-6.061-17.059-1.209-2.63-3.255-5.293-4.937-7.632-1.861-2.591-3.945-4.498-5.387-7.632-.514-1.114-1.211-2.896-.449-4.04.242-.772.584-1.095 1.348-1.347 1.3-1.004 4.927.334 6.285.898 3.597 1.495 6.601 2.918 9.65 4.938 1.465.971 2.945 2.847 4.715 3.367h2.019c3.161.726 6.7.226 9.653 1.123 5.217 1.585 9.892 4.052 14.141 6.734 12.937 8.169 23.515 19.797 30.751 33.67 1.165 2.232 1.668 4.365 2.694 6.734 2.068 4.777 4.674 9.693 6.732 14.366 2.055 4.66 4.057 9.364 6.959 13.243 1.528 2.04 7.422 3.133 10.102 4.265 1.877.794 4.955 1.621 6.732 2.694 3.399 2.048 6.692 4.489 9.877 6.733 1.594 1.123 6.49 3.584 6.735 5.613" fill-rule="nonzero"></path> <path d="M277.458 25.053c-1.647-.029-2.811.18-4.042.449v.225h.225c.785 1.613 2.172 2.651 3.143 4.04l2.244 4.714.224-.224c1.391-.98 2.028-2.547 2.02-4.939-.557-.586-.639-1.321-1.121-2.02-.643-.932-1.885-1.461-2.693-2.245M380.018 174.463v-3.105h2.094c1.084 0 2.396.203 2.396 1.464 0 1.514-1.185 1.641-2.548 1.641h-1.942zm4.518 6.184h2.119l-3.104-4.746c1.664-.176 2.926-.985 2.926-2.954 0-2.193-1.387-3.103-4.062-3.103H378.2v10.803h1.818v-4.67h1.69l2.828 4.67zm4.793-5.403c0 4.291-3.28 7.496-7.344 7.496-4.113 0-7.344-3.205-7.344-7.496 0-4.289 3.231-7.496 7.344-7.496 4.064 0 7.344 3.207 7.344 7.496zm-16.807 0c0 5.655 4.467 9.465 9.463 9.465 4.998 0 9.465-3.81 9.465-9.465 0-5.652-4.467-9.463-9.465-9.463-4.996 0-9.463 3.811-9.463 9.463"></path> </g> </g> </svg></a></li> <li data-astro-cid-rlzglfcb><a href="https://redis.io/" target="_blank" rel="noopener noreferrer" title="Redis" data-astro-cid-rlzglfcb><svg viewBox="0 0 1000 1000" class="redis" data-astro-cid-rlzglfcb="true"> <title>Redis</title> <path d="M570.6 766c-57.8 30.1-89.7 29.8-135.4 8C389.8 752.2 10 593.5 10 593.5v115c0 9.9 13.8 20.3 39.6 32.7 51.9 24.9 340.2 141.1 385.5 163 45.4 21.8 77.5 21.9 135.4-8 57.8-30.1 328.4-141.2 380.7-168.7 26.6-13.8 38.3-24.7 38.3-34.4V579.5h-.1c-.1.1-361.3 156.3-418.8 186.5z"></path> <path d="M570.6 604.4c-57.8 30.1-89.7 29.8-135.4 8C389.8 590.5 10 431.7 10 431.7v115c0 9.9 13.8 20.3 39.6 32.7 51.9 25 340.2 141.2 385.5 163.2 45.4 21.8 77.5 21.9 135.4-8 57.8-30.1 328.4-141.2 380.7-168.7 26.6-13.8 38.3-24.7 38.3-34.4V417.9h-.1c-.1.1-361.3 156.3-418.8 186.5z"></path> <path d="M989.6 266.6c.5-9.9-12.7-18.7-38.8-28.3-51-18.7-320.1-125.8-371.7-144.7-51.7-18.9-72.6-18-133.2 3.6-60.4 21.5-347.1 134.1-398 154.1-25.7 10-38.2 19.5-37.5 29.5v-.1 113.2s379.5 159.9 425.2 181.7c45.4 21.8 77.5 21.9 135.4-8 57.6-30.4 419-189.2 419-189.2l-.4-111.8zm-126.8 3L714 328.3l-134.1-53 148.6-58.8 134.3 53.1zM588 325.4L519.3 426 361 360.3l227-34.9zM468.8 172.5L446.9 132l68.5 26.7 64.4-21.2-17.5 41.8L628 204l-84.9 8.7-19.1 45.9-30.6-51.1-98-8.7 73.4-26.3zm-169.1 57c67 0 121.4 20.9 121.4 47 0 25.8-54.4 47-121.4 47s-121.4-20.9-121.4-47c.1-25.7 54.4-47 121.4-47z"></path> </svg></a></li> <li data-astro-cid-rlzglfcb><a href="https://www.elastic.co/products/elasticsearch" target="_blank" rel="noopener noreferrer" title="Elastic" data-astro-cid-rlzglfcb><svg viewBox="0 0 686.2 235.7" class="elastic" data-astro-cid-rlzglfcb="true"> <title>Elastic</title> <path class="elastic_svg__st0" d="M329.4 160.3l4.7-.5.3 9.6c-12.4 1.7-23 2.6-31.8 2.6-11.7 0-20-3.4-24.9-10.2-4.9-6.8-7.3-17.4-7.3-31.7 0-28.6 11.4-42.9 34.1-42.9 11 0 19.2 3.1 24.6 9.2 5.4 6.1 8.1 15.8 8.1 28.9l-.7 9.3h-53.8c0 9 1.6 15.7 4.9 20 3.3 4.3 8.9 6.5 17 6.5 8.2.1 16.5-.2 24.8-.8zm-4.4-35.4c0-10-1.6-17.1-4.8-21.2-3.2-4.1-8.4-6.2-15.6-6.2-7.2 0-12.7 2.2-16.3 6.5-3.6 4.3-5.5 11.3-5.6 20.9H325zM354.3 171.4V64h12.2v107.4h-12.2zM443.5 113.5v41.1c0 4.1 10.1 3.9 10.1 3.9l-.6 10.8c-8.6 0-15.7.7-20-3.4-9.8 4.3-19.5 6.1-29.3 6.1-7.5 0-13.2-2.1-17.1-6.4-3.9-4.2-5.9-10.3-5.9-18.3 0-7.9 2-13.8 6-17.5 4-3.7 10.3-6.1 18.9-6.9l25.6-2.4v-7c0-5.5-1.2-9.5-3.6-11.9-2.4-2.4-5.7-3.6-9.8-3.6h-32.1V87.2H417c9.2 0 15.9 2.1 20.1 6.4 4.3 4.2 6.4 10.9 6.4 19.9zm-50.2 33.2c0 10 4.1 15 12.4 15 7.4 0 14.7-1.2 21.8-3.7l3.7-1.3v-26.9l-24.1 2.3c-4.9.4-8.4 1.8-10.6 4.2-2.1 2.4-3.2 5.9-3.2 10.4zM491.2 98.2c-11.8 0-17.8 4.1-17.8 12.4 0 3.8 1.4 6.5 4.1 8.1 2.7 1.6 8.9 3.2 18.6 4.9 9.7 1.7 16.5 4 20.5 7.1 4 3 6 8.7 6 17.1 0 8.4-2.7 14.5-8.1 18.4-5.4 3.9-13.2 5.9-23.6 5.9-6.7 0-29.2-2.5-29.2-2.5l.7-10.6c12.9 1.2 22.3 2.2 28.6 2.2 6.3 0 11.1-1 14.4-3 3.3-2 5-5.4 5-10.1 0-4.7-1.4-7.9-4.2-9.6-2.8-1.7-9-3.3-18.6-4.8-9.6-1.5-16.4-3.7-20.4-6.7-4-2.9-6-8.4-6-16.3s2.8-13.8 8.4-17.6c5.6-3.8 12.6-5.7 20.9-5.7 6.6 0 29.6 1.7 29.6 1.7v10.7c-12-.8-21.9-1.6-28.9-1.6zM581.7 99.5h-25.9v39c0 9.3.7 15.5 2 18.4 1.4 2.9 4.6 4.4 9.7 4.4l14.5-1 .8 10.1c-7.3 1.2-12.8 1.8-16.6 1.8-8.5 0-14.3-2.1-17.6-6.2-3.3-4.1-4.9-12-4.9-23.6V99.5h-11.6V88.9h11.6v-25h12.1v24.9h25.9v10.7zM598.7 78.4V64.3h12.2v14.2h-12.2zm0 93V88.9h12.2v82.5h-12.2zM663.8 87.2c3.6 0 9.7.7 18.3 2l3.9.5-.5 9.9c-8.7-1-15.1-1.5-19.2-1.5-9.2 0-15.5 2.2-18.8 6.6-3.3 4.4-5 12.6-5 24.5s1.5 20.2 4.6 24.9c3.1 4.7 9.5 7 19.3 7l19.2-1.5.5 10.1c-10.1 1.5-17.7 2.3-22.7 2.3-12.7 0-21.5-3.3-26.3-9.8-4.8-6.5-7.3-17.5-7.3-33s2.6-26.4 7.8-32.6c5.4-6.2 14.1-9.4 26.2-9.4zM236.6 123.5c0-19.8-12.3-37.2-30.8-43.9.8-4.2 1.2-8.4 1.2-12.7C207 30 177 0 140.2 0 118.6 0 98.6 10.3 86 27.7c-6.2-4.8-13.8-7.4-21.7-7.4-19.6 0-35.5 15.9-35.5 35.5 0 4.3.8 8.5 2.2 12.4-18.4 6.6-31 24.3-31 44 0 19.9 12.4 37.3 30.9 44-.8 4.1-1.2 8.4-1.2 12.7 0 36.8 29.9 66.7 66.7 66.7 21.6 0 41.6-10.4 54.1-27.8 6.2 4.9 13.8 7.6 21.7 7.6 19.6 0 35.5-15.9 35.5-35.5 0-4.3-.8-8.5-2.2-12.4 18.4-6.6 31.1-24.3 31.1-44zm-145-88.7c10.9-15.9 28.9-25.4 48.1-25.4 32.2 0 58.4 26.2 58.4 58.4 0 3.9-.4 7.7-1.1 11.5l-52.2 45.8L93 101.5 82.9 79.9l8.7-45.1zM65.4 29c6.2 0 12.1 2 17 5.7L74.6 75l-35.5-8.4c-1.1-3.1-1.7-6.3-1.7-9.7 0-15.3 12.5-27.9 28-27.9zM9.1 112.3c0-16.7 11-31.9 26.9-37.2l39 9.3 9.1 19.5-49.8 45c-15.1-5.8-25.2-20.3-25.2-36.6zm136.1 88.6c-10.9 16.1-29 25.6-48.4 25.6-32.3 0-58.6-26.3-58.6-58.5 0-4 .4-7.9 1.1-11.7l50.9-46 52 23.7 11.5 22-8.5 44.9zm26 5.7c-6.1 0-12-2-16.9-5.8l7.7-40.2 35.4 8.3c1.1 3.1 1.7 6.3 1.7 9.7.1 15.5-12.5 28-27.9 28zm29.3-46.1l-39-9.1-10.4-19.8 51-44.7c15.1 5.7 25.2 20.2 25.2 36.5.1 16.7-10.9 31.9-26.8 37.1z"></path> </svg></a></li> <li data-astro-cid-rlzglfcb><a href="https://qdrant.tech/" target="_blank" rel="noopener noreferrer" title="Qdrant" data-astro-cid-rlzglfcb><svg width="49" height="56" viewBox="0 0 49 56" fill="none" xmlns="http://www.w3.org/2000/svg" class="qdrant" data-astro-cid-rlzglfcb="true"> <title>Qdrant</title> <g> <path fill-rule="evenodd" clip-rule="evenodd" d="M48.8438 14.0017L48.8468 14L36.7206 7L24.5979 0L12.4719 7L0.349609 14L0.350208 14.0016V41.9996L12.4729 48.9996L24.5988 56V56.0007L32.3558 51.5252L32.3561 51.5246L32.3558 51.5244V42L24.5989 46.4796L16.5957 41.8604L8.59623 37.2415V18.7626L16.5957 14.1437L24.5989 9.52477L32.5983 14.1437L40.6015 18.7626V56.0004L40.6009 56L40.602 56.0025L48.8477 51.2436V14.0022L48.8438 14.0017ZM24.5989 36.9585L32.3558 32.4793V23.5244L24.5989 19.0451L16.8419 23.5244V32.4793L24.5989 36.9585Z"></path> </g> </svg></a></li> </ul> <ul class="list" data-astro-cid-rlzglfcb> <li data-astro-cid-rlzglfcb><a href="https://github.com/" target="_blank" rel="noopener noreferrer" title="GitHub" data-astro-cid-rlzglfcb>GitHub</a></li> <li data-astro-cid-rlzglfcb><a href="https://www.docker.com/" target="_blank" rel="noopener noreferrer" title="Docker" data-astro-cid-rlzglfcb>Docker</a></li> <li data-astro-cid-rlzglfcb><a href="https://cloud.google.com/" target="_blank" rel="noopener noreferrer" title="Google Cloud Platform" data-astro-cid-rlzglfcb>GCP</a></li> <li data-astro-cid-rlzglfcb><a href="https://aws.amazon.com/" target="_blank" rel="noopener noreferrer" title="Amazon Web Services" data-astro-cid-rlzglfcb>AWS</a></li> </ul> </div>  </div> </section> <section class="mantra"> <div class="container">  <h2 data-astro-cid-bsxb3lif>Power Up Your Next Project</h2> <p data-astro-cid-bsxb3lif>
We craft custom web apps — from prototypes to full-scale solutions — that boost your business to the next level.
</p> <p data-astro-cid-bsxb3lif>
With rock-solid open-source tools, we build fast, scalable solutions designed to delight your customers and empower your team. Built clean and adaptable, your project stays ahead of the game — ready to grow with your vision.
</p> <p data-astro-cid-bsxb3lif>
We add AI where it makes a real difference — so your product understands what people mean and answers from your own data.
</p>  </div> </section> <section class="clients"> <div class="container">  <h2 data-astro-cid-cktvhckl>You're in Good Company</h2> <ul data-astro-cid-cktvhckl> <li class="clientA1" data-astro-cid-cktvhckl> <a href="https://a1.net" target="_blank" rel="noopener noreferrer" title="A1" data-astro-cid-cktvhckl> <img src="/companies/a1.svg" alt="A1" width="400" height="350" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientAbb" data-astro-cid-cktvhckl> <a href="https://global.abb" target="_blank" rel="noopener noreferrer" title="ABB" data-astro-cid-cktvhckl> <img src="/companies/abb.svg" alt="ABB" width="500" height="300" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientBabywalz" data-astro-cid-cktvhckl> <a href="https://www.baby-walz.de" target="_blank" rel="noopener noreferrer" title="babywalz" data-astro-cid-cktvhckl> <img src="/companies/baby-walz.svg" alt="babywalz" width="283" height="52" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientBoss" data-astro-cid-cktvhckl> <a href="https://www.boss.com" target="_blank" rel="noopener noreferrer" title="HUGO BOSS" data-astro-cid-cktvhckl> <img src="/companies/boss.svg" alt="HUGO BOSS" width="290" height="81" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientBwin" data-astro-cid-cktvhckl> <a href="https://www.bwin.com" target="_blank" rel="noopener noreferrer" title="bwin" data-astro-cid-cktvhckl> <img src="/companies/bwin.svg" alt="bwin" width="450" height="150" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientCC" data-astro-cid-cktvhckl> <a href="https://www.calligraphy-cut.com" target="_blank" rel="noopener noreferrer" title="calligraphy cut" data-astro-cid-cktvhckl> <img src="/companies/cc.svg" alt="calligraphy cut" width="698" height="98" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientIbu" data-astro-cid-cktvhckl> <a href="https://www.biathlonworld.com" target="_blank" rel="noopener noreferrer" title="International Biathlon Union" data-astro-cid-cktvhckl> <img src="/companies/ibu.svg" alt="International Biathlon Union" width="500" height="400" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientIntersport" data-astro-cid-cktvhckl> <a href="https://www.intersport.com" target="_blank" rel="noopener noreferrer" title="Intersport" data-astro-cid-cktvhckl> <img src="/companies/intersport.svg" alt="Intersport" width="159" height="32" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientK5" data-astro-cid-cktvhckl> <a href="https://www.k5.de" target="_blank" rel="noopener noreferrer" title="K5" data-astro-cid-cktvhckl> <img src="/companies/K5.svg" alt="K5" width="62" height="38" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientNidecker" data-astro-cid-cktvhckl> <a href="https://www.nidecker.com" target="_blank" rel="noopener noreferrer" title="Nidecker" data-astro-cid-cktvhckl> <img src="/companies/nidecker.svg" alt="Nidecker" width="600" height="400" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientNitrousa" data-astro-cid-cktvhckl> <a href="https://www.nitrousa.com" target="_blank" rel="noopener noreferrer" title="Nitro Snowboards" data-astro-cid-cktvhckl> <img src="/companies/nitro.svg" alt="Nitro Snowboards" width="162" height="93" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientPinops" data-astro-cid-cktvhckl> <a href="https://www.pinops.com" target="_blank" rel="noopener noreferrer" title="pinops" data-astro-cid-cktvhckl> <img src="/companies/pinops.svg" alt="pinops" width="85" height="24" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientPlanetsports" data-astro-cid-cktvhckl> <a href="https://www.planetsports.com" target="_blank" rel="noopener noreferrer" title="Planet Sports" data-astro-cid-cktvhckl> <img src="/companies/planet-sports.svg" alt="Planet Sports" width="287" height="129" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientPorsche" data-astro-cid-cktvhckl> <a href="https://motorsports.porsche.com" target="_blank" rel="noopener noreferrer" title="Porsche Motorsport" data-astro-cid-cktvhckl> <img src="/companies/porsche-motorsport.svg" alt="Porsche Motorsport" width="153" height="31" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientRoadvagabond" data-astro-cid-cktvhckl> <a href="https://roadvagabond.com" target="_blank" rel="noopener" title="Road Vagabond" data-astro-cid-cktvhckl> <img src="/companies/road-vagabond.svg" alt="Road Vagabond" width="233" height="66" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientSunrise" data-astro-cid-cktvhckl> <a href="https://www.sunrise.ch" target="_blank" rel="noopener noreferrer" title="Sunrise" data-astro-cid-cktvhckl> <img src="/companies/sunrise.svg" alt="Sunrise" width="634" height="567" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientTagHeuer" data-astro-cid-cktvhckl> <a href="https://www.tagheuer.com" target="_blank" rel="noopener noreferrer" title="TAG Heuer" data-astro-cid-cktvhckl> <img src="/companies/tagheuer.svg" alt="TAG Heuer" width="135" height="117" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientTimezone" data-astro-cid-cktvhckl> <a href="https://www.timezone.de" target="_blank" rel="noopener noreferrer" title="Timezone" data-astro-cid-cktvhckl> <img src="/companies/timezone.svg" alt="Timezone" width="61" height="74" loading="lazy" data-astro-cid-cktvhckl> </a> </li><li class="clientWwp" data-astro-cid-cktvhckl> <a href="https://www.wwp-group.com" target="_blank" rel="noopener noreferrer" title="WWP Group" data-astro-cid-cktvhckl> <img src="/companies/wwp.svg" alt="WWP Group" width="147" height="44" loading="lazy" data-astro-cid-cktvhckl> </a> </li> </ul>  </div> </section> <section class="contact"> <div class="container">  <h2 data-astro-cid-xmivup5a>Let's Chat</h2> <p data-astro-cid-xmivup5a> <span itemProp="email" data-astro-cid-xmivup5a><a href="mailto:hello@oakay.com" data-astro-cid-xmivup5a>hello@oakay.com</a></span> </p> <p data-astro-cid-xmivup5a>oakay GmbH<br data-astro-cid-xmivup5a>Landstrasse 38, 9490 Vaduz<br data-astro-cid-xmivup5a>Liechtenstein</p> <p data-astro-cid-xmivup5a>Register number: FL-0002.579.612-2<br data-astro-cid-xmivup5a>Commercial register, Vaduz</p> <p class="tldr legal" data-label="Legal" data-astro-cid-xmivup5a>This website uses <a href="https://www.goatcounter.com" target="_blank" rel="noopener noreferrer" data-astro-cid-xmivup5a>GoatCounter</a> for anonymous visitor statistics. It does not use cookies, does not collect personal data, and fully respects your privacy. External links are selected and reviewed when the page is published. However, we are not responsible for the content of external websites.</p>  </div> </section> </article>  <div id="starfield" data-astro-cid-sckkx6r4></div> <script data-goatcounter="https://oakay.goatcounter.com/count" async src="https://gc.zgo.at/count.js"></script> </body> </html>  <script type="module" src="/_astro/Layout.astro_astro_type_script_index_0_lang.BvnNJEJz.js"></script>