Products · Systems
Banking App
A research application assembling my ideal stack: Rust, SvelteKit, gRPC, OpenTelemetry, and SurrealDB.
Archived · 2024
Rust · SvelteKit · gRPC · OpenTelemetry · SurrealDB

About the Example Banking app
The Veloxide Example Banking app is the product of my research on how to build my perfect application. It consists of the following key technologies: Rust, Typescript, SvelteKit, TailwindCSS, gRPC, OpenTelemetry, OpenID Connect and SurrealDB. Throughout the it’s development the stack has changed a lot; earlier iterations included technologies such as Go (Golang), GraphQL, Prisma, Redis / ValKey, MongoDB and PostgreSQL. When deciding on the stack, I considered the following factors:
- Is it secure?
- Is it reliable? (How likely is the application to have unexpected behaviour at runtime?)
- How quick is it to develop with?
- How maintainable is it?
- And finally, if all other factors are equal, how performant is it?
I’m content with the technology choices I have selected, and feel the “perfect app” is near completion. The are two final elements I am refining:
- The implementation for Authorisation. I intend to use a Policy as Code solution here such as Amazon’s Cedar.
- The second is whether I should use the network and gRPC, or an entirely Wasm (WebAssembly) solution.
Deployment Platforms and Technologies
DevOps technologies I have used to deploy the app have included GitHub Actions, Terraform, Ansible, Docker, Helm, Kustomize, Istio, Cert-Manager, ArgoCD and Sealed Secrets.
Deployment Platforms I have deployed the app to includes Vercel, Fly.io, managed Kubernetes from DigitalOcean, and self-managed Kubernetes on Hetzner Cloud. It now runs on a cluster of Coolify self-hosted Virtual Private Servers running on Hetzner Cloud.
Note: Archived
This app is no longer maintained.