FideliCards
Loyalty cards, one tap.

FideliCards is a digital loyalty wallet published on iOS and Android from a single React Native codebase. Built offline-first, leveraging native modules for Wallet integration and barcode scanning.
Loyalty cards, one tap.

The full infrastructure — Container Apps, Managed Identity, VNet-isolated SQL, Entra ID — is documented in detail in the dedicated Cloud section.
Explore the full Cloud architecture →The .NET backend runs on Azure Container Apps, a managed serverless container platform. This provides built-in auto-scaling (including scaling to zero) and reduces infrastructure management overhead, avoiding the need to manually provision VMs or load balancers.
The Container App authenticates to Azure SQL using a system-assigned managed identity. Azure automatically issues and rotates the token. This significantly reduces security risks by removing the need to store connection string secrets in the codebase, environment variables, or CI/CD pipelines.
Docker images are stored in a private Azure Container Registry. Chosen for its native integration with Container Apps — image pulls use managed identity, no registry credentials needed in the pipeline. Each image is tagged by commit SHA for full deployment traceability.
The Azure SQL database has no public endpoint. It sits inside an Azure Virtual Network and is reachable only by the Container App within the same VNet, adding a strong network-level defense against direct external access. Azure SQL provides managed backups, automatic failover, and standard T-SQL.
Users sign in with Google or Apple. Azure Active Directory (Entra ID) validates the JWT bearer token on every API request. Authentication middleware and key rotation become platform concerns, keeping the application code focused strictly on business logic.