https://github.com/muhammadabyaz/summarizer-ai
Summarizer-AI is an API-based service that provides PDF summarization using serverless architecture. Built with Go and AWS CDK, it leverages modern cloud technologies to deliver efficient and scalable solutions.
https://github.com/muhammadabyaz/summarizer-ai
aws aws-lambda aws-lambda-golang aws-lambda-python aws-s3 aws-s3-bucket cdk gemini gemini-api golang pdf-summarizer supabase supabase-go supabase-python
Last synced: about 17 hours ago
JSON representation
Summarizer-AI is an API-based service that provides PDF summarization using serverless architecture. Built with Go and AWS CDK, it leverages modern cloud technologies to deliver efficient and scalable solutions.
- Host: GitHub
- URL: https://github.com/muhammadabyaz/summarizer-ai
- Owner: MuhammadAbyaz
- Created: 2025-01-10T14:49:27.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-17T15:22:50.000Z (over 1 year ago)
- Last Synced: 2025-03-06T01:47:34.938Z (about 1 year ago)
- Topics: aws, aws-lambda, aws-lambda-golang, aws-lambda-python, aws-s3, aws-s3-bucket, cdk, gemini, gemini-api, golang, pdf-summarizer, supabase, supabase-go, supabase-python
- Language: Go
- Homepage:
- Size: 26.4 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Summarizer-AI
**Summarizer-AI** is an API-based service that provides PDF summarization using serverless architecture. Built with Go and AWS CDK, it leverages modern cloud technologies to deliver efficient and scalable solutions.
## Features
- **`/upload`**: Endpoint to upload PDF files. Files are stored in an S3 bucket, triggering a Lambda function for processing.
- **`/summarize`**: Internal Lambda (not user-accessible) processes the uploaded PDF using the Gemini API and stores the summarized content in Supabase.
- **`/get-summary`**: Endpoint to fetch the summary using a unique file ID. Retrieves data from Supabase and returns it to the user.
## Architecture
- **API Gateway**: Handles all API requests.
- **3 Lambda Functions**:
1. Handles file uploads to S3.
2. Summarizes PDFs using the Gemini API and stores results.
3. Fetches summaries from Supabase based on user requests.
- **S3 Trigger**: Activates the summarization Lambda on file upload.
- **Supabase**: Stores summarized results for quick retrieval.
## Architecture Diagram

## Highlights
This project demonstrates the power of:
- Event-driven architecture.
- Modern serverless technologies.
- Seamless integration of cloud services for efficient processing.
---
Feel free to contribute or report any issues!