piw

Potsdam Interactive Webapp (PIW) framework library

https://github.com/philippverpoort/piw

Science Score: 67.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
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.8%) to scientific vocabulary

Keywords

interactive interactive-visualizations plotly plotly-dash plotly-python plotting plotting-in-python plotting-library research research-project research-tool
Last synced: 6 months ago · JSON representation ·

Repository

Potsdam Interactive Webapp (PIW) framework library

Basic Info
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 4
Topics
interactive interactive-visualizations plotly plotly-dash plotly-python plotting plotting-in-python plotting-library research research-project research-tool
Created over 2 years ago · Last pushed 11 months ago
Metadata Files
Readme License Citation Zenodo

README.md

DOI

Potsdam Interactive Webapp (PIW) framework library

Summary

This Python package can be used to host interactive webapps that make research available in an interactive and reusable way.

It is maintained and used at the Potsdam Institute for Climate Impact Research, a German research institute conducting integrated research for global sustainability.

How to use this library

This package can be added as a dependency: ```commandline poetry install git+https://github.com/PhilippVerpoort/piw.git # when using poetry

OR

pipenv install git+https://github.com/PhilippVerpoort/piw.git # when using pipenv ```

You can then create a webapp via: ```python from piw import Webapp from dash.dependencies import Input, State

webapp = Webapp( piwid='mywebappid', load=[myloadfunc], ctrls=[myctrlfunc], generateargs=[ Input('my-update-button', 'nclicks'), State('my-parameter-table', 'data'), ], update=[myupdatefunc], proc=[myprocess_func], plots=[MyFirstPlot, MySecondPlot], ) ```

The classes MyFirstPlot and MySecondPlot must be subclasses of piw.AbstractPlot. You can then export the figures into files via: python webapp.export() You can also launch the webapp on your local machine via: python webapp.start() webapp.run() To host this webapp as a service with a WSGI-capable webserver (such as Apache2 with mod_wsgi), you need to create a file wsgi.py as such: ```python import sys, os sys.path.insert(0,os.path.dirname(file))

from webapp import webapp

webapp.start() application = webapp.flask_app ``` More details on hosting Flask apps with WSGI can be found here.

A more extensive tutorial on getting started with piw will soon be made available. Meanwhile, the following examples may serve as a starting point: * green-value-chains * blue-green-H2

Owner

  • Name: Philipp Verpoort
  • Login: PhilippVerpoort
  • Kind: user
  • Location: Berlin, Germany
  • Company: researcher @pik-piam (+ associate @sortitionfoundation)

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Verpoort
  given-names: Philipp C.
orcid: https://orcid.org/0000-0003-1319-5006
title: Potsdam Interactive Webapp (PIW) framework library
version: v0.8.2
date-released: 2024-02-09

GitHub Events

Total
  • Release event: 2
  • Delete event: 1
  • Push event: 3
  • Create event: 2
Last Year
  • Release event: 2
  • Delete event: 1
  • Push event: 3
  • Create event: 2

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 49
  • Total Committers: 1
  • Avg Commits per committer: 49.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 49
  • Committers: 1
  • Avg Commits per committer: 49.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Philipp Verpoort p****v@p****e 49
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels