SShortSingh.
Back to feed

Developer Builds FastAPI Backend Serving Live Sentinel-2 Imagery and Orbital Data

0
·1 views

A developer has built a full-stack application that displays the Sheffield Cholera Monument from two perspectives simultaneously: satellite-based vegetation data from space and a centimeter-scale 3D ground model. The backend is a FastAPI service that authenticates with the Copernicus Sentinel Hub via OAuth2 to fetch the latest Sentinel-2 satellite imagery over a defined geographic area. It computes NDVI vegetation indices and uses Two-Line Element data with the Skyfield and SGP4 libraries to calculate the satellite's exact orbital position during each image acquisition. Four API endpoints — covering the latest scene, NDVI imagery, NDVI statistics, and orbital position — are designed to remain stable even if upstream data sources become unavailable. The project demonstrates how combining orbital and ground-level observation scales on a single CesiumJS 3D globe can reveal complementary insights about the same location.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

How a Timezone Bug Silently Corrupted Daily Sales Reports in Production

A software developer discovered that daily sales reports for stores in Lagos and London were consistently showing zero sales for the final two hours of each day due to a timezone handling bug. The root cause was that UTC midnight was used as the day boundary for all stores, incorrectly assigning late-night orders to the wrong calendar day for locations east of GMT. The bug only surfaced in production — not in development — because retried Celery tasks passed already timezone-aware datetime objects to a pytz localize() call that expects naive datetimes, triggering a ValueError. The fix involved adding a per-store IANA timezone field and a helper function that converts each store's local day boundaries into a UTC range before filtering orders. The author notes the underlying risk persists even in modern Django using zoneinfo, warning that passing aware datetimes into functions expecting local midnight bounds can silently return wrong data without proper input guards.

0
ProgrammingDEV Community ·

JetBrains Plugin I18n Support Plus Brings Full i18next Key Management Into the IDE

A JetBrains IDE plugin called I18n Support Plus aims to eliminate the manual effort of managing internationalization keys in React i18next projects. The plugin links translation keys directly to their JSON or YAML files, enabling features like color-coded key status, Ctrl+Click navigation, and autocomplete suggestions drawn from real translation files. Developers can view all locale translations side by side via hover tooltips and see inline translated values through inlay hints or code folding. A dedicated tool window offers tree and table views, an orphan-key scanner, a keys synchronizer to propagate missing entries across locales, and per-locale completion statistics. The tool also supports extracting hardcoded strings into translation keys and flags issues such as empty or duplicate values through built-in code inspections.

0
ProgrammingDEV Community ·

Why Autonomous AI Agents Demand a New Kind of Audit Trail

As AI systems evolve from simple chatbots into autonomous agents that execute API calls, query databases, and make operational decisions, traditional flat logging tools have become inadequate for tracking their behavior. Unlike deterministic software, AI agents operate in recursive loops where standard logs capture only what happened, not the reasoning behind each decision. Regulatory frameworks such as the EU AI Act, SOC 2, ISO 42001, and CCPA now require organizations to maintain comprehensive, causally linked audit records for automated decision-making systems. A compliant audit trail for AI agents must use parent-child span identifiers to reconstruct the full execution tree, linking each user instruction to every downstream tool call and model reasoning step. Architectures like Volidator address additional challenges such as clock drift in distributed environments by implementing Lamport Logical Clocks to ensure reliable event ordering across asynchronous, edge-computed systems.

0
ProgrammingDEV Community ·

Developer Builds 8-Category Ledger and Symlink System to Tame 40+ Side Projects

A developer managing over 40 side projects — spanning web apps, Chrome extensions, iOS apps, and AI tooling — created a structured classification system to eliminate the chaos of scattered directories. The system uses a single markdown ledger file, eight fixed project categories, and symbolic links rather than physically moving folders. Physical relocation is avoided because tools like Vercel, launchd, and git worktrees store absolute paths that break when directories are moved. Instead, symlinks under a central folder point to real project directories, keeping all metadata intact. The approach ensures project status, production URLs, and monetization details are instantly accessible from one place.

Developer Builds FastAPI Backend Serving Live Sentinel-2 Imagery and Orbital Data · ShortSingh