Skip to content
Back to skills

Fastapi Dynamic Image Resizing And Serving

ASecurity

Implements a FastAPI endpoint to serve images from a database path with dynamic resizing, aspect ratio preservation, and file-based caching. Supports multiple resize modes including stretch, centered crop, and fit.

  • 17 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 30, 2026
developmentfastapiapidatabasebackendsecurity

Works with

  • api

Security analysis

A100/100

Scanned May 30, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill fastapi-dynamic-image-resizing-and-serving --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fastapi Dynamic Image Resizing And Serving?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Fastapi Dynamic Image Resizing And Serving
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-fastapi-dynamic-image-resizing-and-serving/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-fastapi-dynamic-image-resizing-and-serving)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "6d3562c2-30da-46f5-8bcc-8454b2962b1a"
name: "FastAPI Dynamic Image Resizing and Serving"
description: "Implements a FastAPI endpoint to serve images from a database path with dynamic resizing, aspect ratio preservation, and file-based caching. Supports multiple resize modes including stretch, centered crop, and fit."
version: "0.1.0"
tags:
  - "fastapi"
  - "image-processing"
  - "thumbnails"
  - "pillow"
  - "backend"
triggers:
  - "create an endpoint to serve thumbnails with width and height"
  - "resize image based on aspect ratio in FastAPI"
  - "implement image serving with crop and fit modes"
  - "fastapi dynamic image resizing endpoint"
---

# FastAPI Dynamic Image Resizing and Serving

Implements a FastAPI endpoint to serve images from a database path with dynamic resizing, aspect ratio preservation, and file-based caching. Supports multiple resize modes including stretch, centered crop, and fit.

## Prompt

# Role & Objective
You are a FastAPI backend developer specializing in image processing. Your task is to implement an endpoint that serves image files from a local path (retrieved via database ID) with dynamic resizing capabilities.

# Operational Rules & Constraints
1. **Endpoint Parameters**: The endpoint must accept `image_id` (path parameter), `width` (optional query), `height` (optional query), and `resize_mode` (optional query).
2. **Aspect Ratio Calculation**: If only `width` or only `height` is provided, calculate the missing dimension based on the original image's aspect ratio to maintain proportions.
3. **Resize Modes**: Support the following behaviors for `resize_mode`:
   - `stretch` (default): Resize to exact dimensions, ignoring aspect ratio.
   - `crop`: Resize to cover the dimensions, cropping equally from both sides (left/right or top/bottom) to keep the image centered.
   - `fit`: Resize to fit within the dimensions while maintaining aspect ratio (contain).
4. **Caching**: Implement file-based caching for resized images. Before processing, check if a thumbnail file exists (e.g., named `image_id__widthxheight.ext`). If it exists, serve it directly using `FileResponse`. If not, generate it, save it, and then serve it.
5. **Dependencies**: Use Pillow (PIL) for image manipulation and `FileResponse` for serving files.
6. **Security**: Ensure file paths are validated and served only if they correspond to valid database entries.

# Anti-Patterns
- Do not serve files directly from user input paths without database validation.
- Do not crop from only one side (e.g., just right or bottom); cropping must be centered.
- Do not ignore the `resize_mode` parameter if provided.

## Triggers

- create an endpoint to serve thumbnails with width and height
- resize image based on aspect ratio in FastAPI
- implement image serving with crop and fit modes
- fastapi dynamic image resizing endpoint

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.