01 · The challenge
A working application is not yet a production service.
TripTold is a marketplace connecting travel brands with creators. Brands publish campaign briefs, creators apply, and the platform supports selection and management.
Moving into production required secure authentication, persistent data, private file uploads, role-based journeys and administrative controls. The infrastructure also needed to remain affordable at an early stage without creating a technical dead end.
The hidden assumption was that production readiness meant adding every possible platform component. The real decision was what the first production version genuinely needed - and what could wait.
02 · The analysis
Design the platform around the product’s current stage.
We reviewed the application structure, data model and user journeys before choosing the production architecture. The goal was a secure, supportable foundation with room to grow when real usage justified additional complexity.
The public marketing site was separated from the authenticated application. That allowed a lightweight static site to run at the main domain while the application operated independently on its own subdomain.
Redis, Apple authentication and in-platform messaging were deliberately deferred. None was essential to the first production release, and each would have expanded the launch surface without proving more of the core proposition.
03 · What we delivered
A practical, secure production architecture.
The authenticated application was deployed using:
- React, TypeScript and tRPC for the application layer
- Prisma with PostgreSQL for persistent data
- An AWS EC2 application server
- An encrypted Amazon RDS database with automated backups
- Private Amazon S3 storage with presigned uploads and downloads
- IAM roles instead of AWS credentials embedded in the application
- Nginx as a reverse proxy with HTTPS through Let’s Encrypt
Role-based journeys
Routing was implemented for administrators, travel brands and creators alongside Google authentication and the platform’s account model. Each user type reaches the part of the product relevant to its role.
Administrative control
The administration area was expanded to support:
- Adding and deactivating administrators
- Disabling and re-enabling users
- Reviewing a paginated audit log
- Recording significant administrative actions
Repeatable deployment
We documented the deployment process covering application updates, dependency installation, database client generation, builds and service restarts. Production changes no longer depended on recalling an undocumented sequence of server commands.
04 · The outcome
A foundation appropriate to the product—not an imitation of enterprise scale.
TripTold moved into a working production architecture with:
- An encrypted managed database
- Private rather than publicly exposed uploads
- Credential-free access from the application to AWS services
- HTTPS and production domain routing
- Distinct experiences for each user role
- Administrative controls and a usable audit trail
- A documented deployment process
- A clear route for later messaging and campaign-management features
Services demonstrated
Product architecture · Full-stack development · AWS cloud deployment · Database design · Identity and access management · Secure file handling · Administrative tooling
Explore defined technical projects