Skip to content

ESA-PhiLab/Repo-Template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GitHub stars GitHub forks GitHub issues GitHub pull requests GitHub last commit GitHub code size GitHub top language GitHub repo size GitHub contributors Python 3.9+ Documentation Status PRs Welcome DOI License: Apache 2.0

(For these shield to work, set proper name..)

ESA-PhiLab Logo

🌍 TRANSFORMING EARTH OBSERVATION IN ACTIONS FOR THE HUMAN PROSPERITY 🌍

Website Twitter LinkedIn YouTube

Repository Template

Use this template to kickstart your ESA-PhiLab project with all the necessary structure and documentation. You'll get:

  • A professional repository structure following best practices
  • Automatic GitHub Pages website generation (example: https://esa-philab.github.io/Repo-Template/)
  • Pre-configured badges and documentation templates
  • Standardized license and citation formats

Getting started is easy - just follow the detailed instructions in docs/readme.md to customize the template for your specific project.

πŸ“Œ Project Title

Replace this with your project name.

πŸ‘₯ Authors

List all project contributors. Preferably include links to their professional profiles.

πŸ“– Project Reference

Specify the type and context of the project.

πŸ“ Abstract

Provide a concise summary of the project goals, methodology, and outcomes.

πŸ› οΈ How to Use

Detailed instructions to set up and run the project.

Quick Start

1. Setup the development environment:

./scripts/setup.sh

2. Activate the virtual environment:

source venv/bin/activate

3. Download datasets:

./scripts/download_data.sh

4. Run tests and build:

./scripts/build.sh

Requirements

This repository uses a modern Python environment standard:

  • Python β‰₯ 3.9
  • Dependencies are specified in the pyproject.toml file.

Manual installation:

pip install .

Or using PDM:

pdm install

Available Scripts

Bash Scripts (in scripts/):

  • setup.sh - Sets up the development environment
  • build.sh - Builds, tests, and packages the project
  • download_data.sh - Downloads and processes datasets
  • cleanup.sh - Removes build artifacts and cache files

Python Scripts (in pyscripts/):

  • download_hf_datasets.py - Downloads from Hugging Face Hub
  • process_data.py - Data processing and analysis utilities
  • example_script.py - Example Python utility script

πŸ“š Citations

Please cite the following works if you use this code:

  • [Reference Paper 1]
  • [Reference Paper 2]

πŸ“‚ Repository Structure

β”œβ”€β”€ LICENSE
β”œβ”€β”€ README.md
β”œβ”€β”€ pyproject.toml      # project metadata & dependencies
β”œβ”€β”€ setup.cfg           # optional packaging config
β”œβ”€β”€ environment.yml     # optional environment specification
β”œβ”€β”€ src/                # source code & Python package
β”‚   └── your_package/   # replace with your package name
β”œβ”€β”€ notebooks/          # Jupyter notebooks for experiments or analysis
β”œβ”€β”€ papers/             # manuscript sources (LaTeX, figures, assets)
β”œβ”€β”€ data/               # raw/processed datasets or external links
β”œβ”€β”€ scripts/            # bash/shell scripts for automation
β”œβ”€β”€ pyscripts/          # Python scripts and utilities
β”œβ”€β”€ tests/              # unit and integration tests
β”œβ”€β”€ docs/               # documentation (Sphinx, MkDocs, GitHub Pages)
β”‚   β”œβ”€β”€ index.html      # main documentation page
β”‚   β”œβ”€β”€ images/         # documentation assets (images,..)
└── examples/           # usage examples and demos

The docs/ directory contains the project's documentation website with comprehensive information about the project, including:

  • Project overview and goals
  • Installation and setup instructions
  • Usage examples and tutorials
  • API documentation
  • Links to related resources and publications
  • Team and contributor information

πŸ“„ License

This project is licensed under the Apache License 2.0. See the LICENSE file or read more at apache.org.

πŸ“Š Dataset Hosting

Datasets are either included in data/ or hosted externally:

Ensure external links are functional and persistent.

πŸ“₯ Data Download Utilities

This repository includes utilities for downloading datasets:

Python Script (Hugging Face Hub):

# Install required dependencies
pip install huggingface_hub

# Run the download script
python pyscripts/download_hf_datasets.py

Bash Script (General Data Download):

# Download and process datasets
./scripts/download_data.sh

# Force re-download and verbose output
./scripts/download_data.sh --force --verbose

The Python script (pyscripts/download_hf_datasets.py) provides a robust way to fetch datasets from Hugging Face Hub with automatic retries and error handling. The bash script (scripts/download_data.sh) handles general dataset downloads and preprocessing with the following features:

  • Downloads datasets from various sources
  • Configurable retry mechanism for handling network issues
  • Progress tracking and error reporting
  • Data validation and preprocessing
  • Automatic directory organization

To customize which datasets to download, edit the repo_ids list in the script.

🌐 GitHub Pages

This repository supports GitHub Pages. Request support to enable and configure the page if needed.


For internal use only: This repository conforms to the ESA-PhiLab development and archiving standards.

About

Repository Template for Github projects

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published