Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“‡ Contact Book

A production-ready contact management application built with Next.js and AWS Serverless services.

The application provides secure authentication with Amazon Cognito, image uploads using Amazon S3 pre-signed URLs, and an event-driven backend for asynchronous image cleanup. It demonstrates modern cloud-native architecture using AWS Lambda, API Gateway, EventBridge, and SQS.

πŸ”— Live Demo: https://contactbook.chrisalex.online

πŸ—οΈ Architecture

Contact Book Architecture

✨ Features

  • Secure user authentication with Amazon Cognito

  • JWT protected REST APIs

  • Create, update, delete and view contacts

  • Upload up to five contact images

  • Direct browser uploads using Amazon S3 pre-signed URLs

  • Event-driven image deletion using EventBridge and SQS

  • Responsive UI for desktop and mobile devices

  • Password reset with email verification

  • Client-side form validation with live password requirements

  • Automatic HTTPS deployment using AWS Amplify

  • πŸ›  Tech Stack

Frontend

  • Next.js 15
  • React
  • TypeScript
  • Tailwind CSS
  • AWS Amplify

Backend

  • Node.js

  • TypeScript

  • AWS Lambda

  • API Gateway

  • Amazon Cognito

  • Amazon S3

  • Amazon EventBridge

  • Amazon SQS

  • MongoDB Atlas

  • Serverless Framework

  • πŸš€ Highlights

This project focuses on backend architecture rather than only CRUD functionality.

Key implementation highlights include:

  • Direct browser uploads using Amazon S3 pre-signed URLs
  • Event-driven asynchronous image deletion
  • Stateless serverless APIs deployed on AWS Lambda
  • Secure JWT authentication using Amazon Cognito
  • Responsive frontend built with Next.js App Router
  • Production-ready deployment with AWS Amplify

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages