Skip to content

Frequenz Lib Notebooks ‐ Overview

Costas Yiallourides edited this page Jan 21, 2025 · 7 revisions

Welcome to the frequenz-lib-notebooks repository wiki! This repository serves as a foundational library for developing, sharing, and maintaining tools, workflows, and visualisations across different projects. It is designed to be modular, reusable, and extendable, allowing contributors to add new projects and functionality easily.

Current Projects

Solar Maintenance App

The first project within this repository, the Solar Maintenance App, is designed to streamline the management and analysis of solar energy production data. Its main features include:

  • Data Retrieval: Fetching weather and reporting data.
  • Data Processing: Cleaning, normalising, and transforming data for further processing and making predictions.
  • Forecasting: Using models to predict solar energy production.
  • Visualisation: Generating clear and informative plots to analyse data.

(Details about the Solar Maintenance App are available in the dedicated Solar Maintenance App Wiki Page)

Notification service

This module provides a notification service for sending alert notifications. The service supports one-off and periodic email notifications with configurable settings. Features include attachment handling, retry mechanisms for failed attempts, and a scheduler for interval-based alerts.

(More details can be found in the dedicated page)

Repository Structure

Below is the high-level folder structure of the repository:

frequenz/
├── datasci/
│   └── weather/
│       └── weather_api.py
└── lib/
    └── notebooks/
        ├── config.py
        ├── notification_service.py
        ├── weather/
        │   └── weather_api.py
        └── solar/
            └── maintenance/
                ├── (Solar Maintenance Modules...)

Key Directories:

  • frequenz/datasci: General-purpose data science utilities, such as weather_api.py.
  • frequenz/lib/notebooks: Project-specific workflows and utilities.
  • Shared Components:
    • config.py: Manages configuration for microgrids.
    • notification_service.py: Supports sending one-off and periodic notifications with attachments, retries, and scheduling.
  • examples/: This directory is at the top level and contains example notebooks.
Clone this wiki locally