πΏ Welcome to Zyraο
What is Zyra?ο
Zyra (pronounced Zy-rah) is an open-source Python framework for growing data into insight.
It helps scientists, educators, and developers build modular, reproducible workflows that transform raw data into clear visualizations and shareable knowledge.
Think of Zyra as a garden for data:
You plant seeds of data (from the web, satellites, or experiments).
Zyra helps you nurture and grow them (through filtering, analysis, and processing).
Finally, you harvest insights (in the form of visualizations, reports, and interactive media).
Itβs designed to make science not just rigorous, but also accessible, transparent, and beautiful.
Why βZyraβ?ο
The name Zyra was chosen to symbolize growth, weaving, and flow β small seeds of data can flourish into full workflows, and threads of analysis can be woven into something reproducible and sharable. Itβs short, abstract, and flexible, giving the community space to shape its meaning. The name also carries playful associations: in pop culture, Zyra is a plant-themed character in League of Legends, a fitting metaphor for data that grows into insight. And as a backronym, it can stand for Zero-to-Yield Reproducible Analysis (the serious story) or Zany Yet Reproducible Analysis (the fun version) β reminding us that science can be both rigorous and creative.
A Framework for Everyoneο
Zyra is:
Modular β Swap out or extend any part of the workflow.
Reproducible β Every workflow can be re-run, shared, and verified.
Interoperable β Works with popular data formats, APIs, and visualization tools.
Creative β Supports animations, maps, and interactive visuals to make science engaging.
Whether youβre a researcher, educator, or curious learner, Zyra gives you a toolkit to turn data into something meaningful.
Quickstartο
Install Zyra from PyPI:
pip install zyra
Run an example workflow:
zyra acquire --source demo-weather
zyra process --filter "last24h"
zyra visualize --type line --output weather_plot.png
This will save a line chart of demo weather data as weather_plot.png
. π
π For more details, see the Getting Started Guide.
Introductionο
(From the Introduction wiki page)
Kid Versionο
Imagine you have a big box of LEGO bricks mixed together β some from space sets, some from castles, some from race cars.
Zyra is like a magical robot helper that:
Finds the bricks you want (getting data from the internet or your computer).
Puts them in order (sorting and cleaning the data).
Builds something amazing (turning the data into pictures, videos, or maps you can show to friends).
It makes science data less messy and more fun to look at.
High School Versionο
Zyra is a Python tool that:
Collects data from many sources (like websites, cloud storage, and scientific file formats).
Processes it so itβs easier to work with (cutting, reshaping, converting formats).
Visualizes it in charts, maps, and animations.
Think of it like a 3-step factory:
Input: Raw data from the web, satellites, or experiments.
Processing: Filtering, analyzing, or reformatting.
Output: Graphs, weather maps, or animated videos you can share.
Itβs modular β you can swap out any step for your own custom tool.
College Versionο
Zyra is an open-source, modular Python framework for reproducible scientific data workflows.
It organizes work into four layers:
Acquisition Layer β Connects to FTP, HTTP/S, S3, and local sources; supports GRIB, NetCDF, GeoTIFF, and streaming video.
Processing Layer β Extracts subsets, applies transformations, and converts between scientific formats. Includes tools like
VideoProcessor
andGRIBDataProcessor
.Visualization Layer β Uses Matplotlib and Basemap to produce static plots, animations, and composites with consistent color maps and overlays.
Utilities Layer β Handles credentials, date parsing, file management, and small shared helpers.
The system is designed for flexibility, reproducibility, and interoperability, making it suitable for research, teaching, and operational pipelines.
White Paper Versionο
Zyra is a composable Python framework for end-to-end scientific data workflows, enabling acquisition, transformation, and visualization across diverse environmental and geospatial datasets.
It is designed to address reproducibility, modularity, and interoperability challenges in modern data science.
Architecture:
Acquisition Managers: standardized connectors to heterogeneous data sources (
FTPManager
,HTTPManager
,S3Manager
).Processing Managers: domain-specific operations (video encoding/decoding, GRIB parsing, NetCDF extraction, geospatial transformations).
Visualization Managers: integration with Matplotlib and Basemap for consistent, publication-quality graphics.
Utility Managers: support for credentials, temporal range calculations, file path operations, and metadata management.
Supported Formats & Protocols: GRIB2, NetCDF, GeoTIFF, MP4, PNG, JPEG; FTP, HTTP/S, AWS S3, local filesystem.
Use Cases: operational forecasting pipelines, climate research, geospatial analysis, educational demonstrations, and public communication products.
π Explore Moreο
Want to dive deeper? Here are some key wiki pages:
Introduction β The full technical overview of Zyra.
Pipeline Patterns β Common designs and reusable workflow templates.
Enhancing Zyra Through Insights from Similar Tools β Lessons from other open-source projects.
Privacy and Data Usage Best Practices β Ethical guidance for handling data.
Visualization Module Checklist β Progress tracking for the visualization system.
CLI Expansion Plan β Roadmap for extending Zyraβs command-line interface.
Wizard Interactive Assistant β Plans for a guided CLI workflow builder.
n8n Integration Plan β Connecting Zyra with external automation tools.
Jump into modules and documentation:
Introduction (Wiki) β High-level overview and design philosophy.
Pipeline Patterns (Wiki) β Reusable workflow templates and patterns.
CLI Reference (Docs) β Full API and command options for the CLI.
Visualization Module (Docs) β Visualization tools, managers, and usage guides.
Data Processing Module (Docs) β GRIB, NetCDF, video processing, and data transformations.
Acquisition & Connectors (Docs) β Ingest data from various sources like FTP, HTTP/S, S3, and Vimeo.
Utilities (Docs) β Credential management, file handling, logging, and time utilities.
Get Involvedο
Zyra is open-source and community-driven. You can:
Explore the GitHub repository
Join the discussions
Contribute new workflows, ideas, or visualizations
β¨ Zyra is where data grows into insight.