Frontend
ReactNext.jsVueNuxtTypeScriptTailwind CSSViteAstroStorybook
Home › Tech stack
Tech stack
We maintain default technology choices because their failure modes are known to us. If your team already runs something well, we work in your stack rather than arguing for ours — and we will say plainly when a technology choice is a genuine risk.
By layer
ReactNext.jsVueNuxtTypeScriptTailwind CSSViteAstroStorybook
Node.jsNestJSPythonFastAPIDjangoJavaSpring BootGo.NET 8PHP / Laravel
Swift / SwiftUIKotlin / Jetpack ComposeReact NativeFlutterExpoFastlane
AWSMicrosoft AzureGoogle CloudKubernetesDockerTerraformCloudflareVercel
PostgreSQLMySQLMongoDBRedisSnowflakeBigQuerydbtApache AirflowKafkaElasticsearch
GitHub ActionsGitLab CIArgoCDPrometheusGrafanaDatadogSentryPagerDuty
PythonPyTorchscikit-learnLangChainLlamaIndexpgvectorPineconeMLflowHugging Face
How we choose
The interesting technology should be in your product, not your infrastructure. We pick the option with the largest hiring pool and the longest support horizon unless there is a concrete reason not to.
If a choice means only we can maintain the system, it is the wrong choice. Stack decisions are made with your hiring reality in mind.
Significant architecture choices are recorded as short decision records — what we chose, what we rejected, and why. Six months later, nobody has to guess.
Send us the repo structure or an architecture sketch. We will tell you what we would keep, what we would change, and what we would not touch.