template-project

Template for a Python project for oceanography

https://github.com/eleanorfrajka/template-project

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Template for a Python project for oceanography

Basic Info
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created over 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme Contributing License Citation

README.md

template-project

🧪 A modern Python template for scientific projects — with clean code, automated tests, documentation, citation, and publication tools, ready out-of-the-box.

This repository is designed to help researchers and developers (especially in the UHH Experimental Oceanography group quickly launch well-structured Python projects with consistent tooling for open science.

📘 Full documentation available at:
👉 https://eleanorfrajka.github.io/template-project/


🚀 What's Included

  • ✅ Example Python package layout: template_project/*.py
  • 📓 Jupyter notebook demo: notebooks/demo.ipynb
  • 📄 Markdown and Sphinx-based documentation in docs/
  • 🔍 Tests with pytest in tests/, CI with GitHub Actions
  • 🎨 Code style via black, ruff, pre-commit
  • 📦 Package config via pyproject.toml + optional PyPI release workflow
  • 🧾 Machine-readable citation: CITATION.cff

Project structure

template-project/ ├── .github/ │ └── workflows/ # GitHub Actions for tests, docs, PyPI ├── docs/ # Sphinx-based documentation │ ├── source/ # reStructuredText + MyST Markdown + static │ └── Makefile # for building HTML docs ├── notebooks/ # Example notebooks ├── templateproject/ # Main Python package │ ├── init.py │ ├── version.py │ ├── tools.py │ ├── readers.py │ ├── writers.py │ ├── utilities.py │ ├── plotters.py │ └── templateproject.mplstyle # Optional: matplotlib style file ├── tests/ # Pytest test suite │ ├── testtools.py │ └── testutilities.py ├── .gitignore ├── .pre-commit-config.yaml ├── CITATION.cff # Sample file for citable software ├── CONTRIBUTING.md # Sample file for inviting contributions ├── LICENSE # Sample MIT license ├── README.md ├── pyproject.toml # Modern packaging config ├── requirements.txt # Package requirements ├── customisation_checklist.md # Development requirements └── requirements-dev.txt # Linting, testing, docs tools


🔧 Quickstart

Install in development mode:

bash git clone https://github.com/eleanorfrajka/template-project.git cd template-project pip install -r requirements-dev.txt pip install -e .

To run tests:

bash pytest

To build the documentation locally:

bash cd docs make html


📚 Learn More


🤝 Contributing

Contributions are welcome! Please also consider adding an issue when something isn't clear.

See the customisation checklist to adapt this template to your own project.


Future plans

I'll also (once I know how) add instructions for how to publish the package to conda forge, so that folks who use conda or mamba for environment management can also install that way.


📣 Citation

This repository includes a CITATION.cff file so that users of this template can include one in their own project.
There is no need to cite this repository directly.

Owner

  • Name: Eleanor Frajka-Williams
  • Login: eleanorfrajka
  • Kind: user
  • Location: Hamburg
  • Company: Universität Hamburg

Citation (CITATION.cff)

cff-version: 1.2.0
message: "This is just a demo of CITATION.cff.  You do not need to cite this software."
authors:
- family-names: Frajka-Williams
  given-names: Eleanor
  orcid: https://orcid.org/0000-0001-8773-7838
  affiliation: University of Hamburg, Bundesstraße 53, 20146 Hamburg, Germany
title: template-project
version: 0.0.0
date-released: 2025-04-12
url: https://github.com/eleanorfrajka/template-project

GitHub Events

Total
  • Watch event: 2
  • Delete event: 23
  • Issue comment event: 4
  • Push event: 83
  • Pull request event: 40
  • Create event: 24
Last Year
  • Watch event: 2
  • Delete event: 23
  • Issue comment event: 4
  • Push event: 83
  • Pull request event: 40
  • Create event: 24