MrJohnny Project

A Lightweight Influencer Marketing Platform Prototype, Built on AWS

MrJohnny Platform - Project Overview

MrJohnny is a proof-of-concept influencer marketing platform designed for a client to demonstrate how AWS serverless technologies can power scalable digital marketing tools. The project includes campaign management, creator collaboration, and performance tracking, all built on services like Lambda, API Gateway, S3, and DynamoDB.

Separate portals are hosted on S3 for brands and creators, backed by a unified AWS-powered backend that follows serverless and cloud-native design principles.

Architecture Overview

  • Frontend: S3-hosted static sites for Creator, Brand, and Main portals.
  • Authentication: Amazon Cognito user pools with IAM role-based access.
  • API Gateway + Lambda: RESTful backend logic triggered by HTTP requests.
  • Storage: DynamoDB (structured data), S3 (media with signed URLs).
  • Security: Private VPC, subnets, security groups.

Implementation Highlights

Serverless Architecture

The entire backend is built on AWS Lambda, enabling true serverless execution with no infrastructure to manage and seamless automatic scaling. Each function — from user onboarding to campaign analytics — is exposed via Amazon API Gateway, which provides secure, throttled RESTful endpoints with built-in authorization and request validation. Provisioned Concurrency ensures that latency-sensitive Lambdas are warm and instantly responsive, while function-level memory and timeout configurations are optimized to meet workload-specific demands. Combined with CloudWatch monitoring and structured logging, this architecture delivers low-latency, cost-effective compute power with high observability and operational efficiency — ideal for dynamic workloads in a modern, API-driven platform.

Infrastructure as Code

The infrastructure for the application is fully defined using AWS CloudFormation and AWS Serverless Application Model (SAM). This approach allows for consistent, repeatable deployments across environments (dev, staging, prod) and enables version control of both application code and infrastructure in the same repository. Using SAM, I simplify CloudFormation templates with shorthand syntax for common serverless resources like Lambda functions, API Gateway, and DynamoDB tables. For example:

sam build && sam deploy --guided

Secure Media Handling

Campaign assets (images, videos) are stored in S3 with secure object signing, ensuring that only authorized users can access sensitive media files. Presigned URLs are generated for temporary access when needed.

Custom Domain Routing with Route 53

To support branded user experiences, Amazon Route 53 was used to configure DNS for serving static websites hosted on S3. Two alias A recordsweb.brand.brandinfluencer.com and web.creator.brandinfluencer.com — were created using Simple Routing to point directly to the corresponding Amazon S3 static website endpoints.

The main domain brandinfluencer.com was also configured as an A record (non-alias), allowing it to point to a different type of endpoint, such as a load balancer or external IP, offering flexibility for future expansion.

DNS resolution for these records follows standard lookup behavior. When a client queries web.creator.brandinfluencer.com, Route 53 matches the full namespace, resolves the alias record, and returns the IP address of the S3 website endpoint. Alias records are specific to AWS and enable Route 53 to act like a CNAME at the zone apex while remaining within the DNS spec (CNAMEs are not allowed at the root).

This setup ensures low-latency, reliable name resolution, and clean subdomain routing, while maintaining full control over domain management within AWS.

Database Strategy

The application leverages DynamoDB for high-performance NoSQL storage, ideal for workloads requiring rapid, low-latency access to structured data — such as user profiles, campaign metadata, and session tokens. Its seamless scalability and serverless nature made it a strong fit for the application’s real-time and variable traffic patterns, ensuring consistent performance without manual provisioning.

Relational databases like RDS can exhaust connection limits under high Lambda concurrency because each invocation may open a new persistent connection. In contrast, DynamoDB uses stateless HTTP requests, allowing it to scale seamlessly with Lambda without connection pooling concerns.

Testing

Acceptance testing was conducted using Postman to validate API functionality and end-to-end workflows. Test collections were created to simulate user journeys — including account creation, authentication, campaign setup, and data retrieval. These tests ensured that endpoints consistently returned expected responses, supported error handling, and remained aligned with business requirements. Postman collections also served as living documentation for both development and QA teams.

CORS

One of the most persistent implementation challenges involved configuring Cross-Origin Resource Sharing (CORS) between the frontend’s AJAX calls and AWS API Gateway endpoints. Initial requests were blocked by browsers due to missing or misconfigured CORS headers. Debugging preflight (OPTIONS) requests, setting the correct `Access-Control-Allow-Origin`, and ensuring the appropriate methods and headers were allowed required a combination of adjustments in API Gateway settings and Lambda integrations. Careful coordination between frontend expectations and backend configurations was essential to resolve these issues and establish smooth cross-origin communication.

Conclusion

MrJohnny demonstrates the power of AWS serverless architecture for building scalable, secure, and cost-effective applications. By leveraging a wide range of AWS services and modern web development practices, the platform provides a comprehensive solution for influencer marketing management.

The project showcases how complex business requirements can be implemented using cloud-native technologies, resulting in a robust application that can scale from startup to enterprise levels without significant architectural changes.

Technologies Used

AWS Services
  • AWS Lambda
  • Amazon DynamoDB
  • Amazon Cognito
  • Amazon API Gateway
  • AWS CloudFormation
  • AWS SAM
  • Amazon S3
  • Amazon Route 53
  • Amazon VPC
  • AWS IAM
  • Amazon CloudFront
  • AWS CloudWatch
Frontend Technologies
  • HTML5
  • CSS3/SCSS
  • JavaScript
  • jQuery
  • Bootstrap
  • Responsive Design
Backend Technologies
  • Node.js
  • RESTful API Design
  • JWT Authentication
  • Serverless Framework
DevOps & Deployment
  • Infrastructure as Code
  • CI/CD Pipeline
  • GitHub
  • AWS CLI