flow

View and Browse Code Using Flow Diagrams

https://github.com/moodymudskipper/flow

Science Score: 26.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.6%) to scientific vocabulary

Keywords from Contributors

report standardization prediction interpretability visualisation book anova correlation unit-testing regression-models
Last synced: 10 months ago · JSON representation

Repository

View and Browse Code Using Flow Diagrams

Basic Info
Statistics
  • Stars: 415
  • Watchers: 13
  • Forks: 26
  • Open Issues: 39
  • Releases: 2
Created almost 7 years ago · Last pushed 10 months ago
Metadata Files
Readme Changelog License

README.Rmd

---
output: github_document
---


[![R-CMD-check](https://github.com/moodymudskipper/flow/workflows/R-CMD-check/badge.svg)](https://github.com/moodymudskipper/flow/actions)



```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "100%"
)
```

# flow 

*{flow}* provides tools to visualize as flow diagrams the logic of functions, 
expressions or scripts and ease debugging.

Use cases are : 

* Deciphering other people's code
* Getting more comfortable with our own code by easing a visual understanding of its structure
* Documentation
* Debugging
* Inspect unit test results
* Providing a higher level view of an algorithm to collaborators
* Education

## Installation

Install from CRAN with:

``` r
install.packages("flow")
```

Or install development version from github:

``` r
remotes::install_github("moodymudskipper/flow")
```
## Example

```{r, eval=TRUE}
library(flow)
```

Using default nomnoml engine

```{r, eval=FALSE}
flow_view(rle)
```

![nomnoml](man/figures/README_nomnoml.png)

Using plantuml engine (make sure the [{plantuml}](https://github.com/rkrug/plantuml) package is installed).

```{r, eval=FALSE}
flow_view(rle, engine = "plantuml")
```

![plantuml](man/figures/README_plantuml.png)

## Additional functions

* `flow_run()` to display not only the diagram, but the logical path taken by a specific call
* `flow_compare_runs()` display the logical path of 2 calls to see where they diverge
* `flow_debug()`/`flow_undebug()` to use basically use `flow_run()` on a function wherever it's called
* `flow_view_vars()` to display the dependencies between variables in a function
* `flow_view_deps()` to display recursively all the functions that your function calls
* `flow_view_uses()` to display recursively all the functions that call your function
* `flow_view_shiny()` to display the modular structure of your shiny app
* `flow_view_source_calls()` to display dependency tree of scripts sourcing each other
* `flow_doc()` to build a package's documentation using flow diagrams
* `flow_test()` to show what happens in your unit tests
* `flow_embed()` to embed diagrams in your documentation.

See more in vignettes.

## Notes

Make sure to check the vignettes for a detailed breakdown of all features.


*{flow}* is built on top of Javier Luraschi's *{nomnoml}* package, and 
Rainer M Krug 's *{plantuml}* package, the latter only available from 
[github](https://github.com/rkrug/plantuml)
at the moment.

Owner

  • Name: Antoine Fabri
  • Login: moodymudskipper
  • Kind: user
  • Location: Brussels

GitHub Events

Total
  • Create event: 3
  • Commit comment event: 1
  • Issues event: 2
  • Watch event: 18
  • Issue comment event: 14
  • Push event: 83
  • Pull request event: 48
Last Year
  • Create event: 3
  • Commit comment event: 1
  • Issues event: 2
  • Watch event: 18
  • Issue comment event: 14
  • Push event: 83
  • Pull request event: 48

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 496
  • Total Committers: 7
  • Avg Commits per committer: 70.857
  • Development Distribution Score (DDS): 0.147
Past Year
  • Commits: 40
  • Committers: 4
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.125
Top Committers
Name Email Commits
Antoine Fabri a****i@g****m 423
Kirill Müller k****r 57
Indrajeet Patil p****e@g****m 8
github-actions[bot] 4****] 5
Zhian N. Kamvar z****r@g****m 1
Lluís l****s 1
James Laird-Smith j****h@g****m 1

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 97
  • Total pull requests: 96
  • Average time to close issues: 3 months
  • Average time to close pull requests: 5 months
  • Total issue authors: 21
  • Total pull request authors: 6
  • Average comments per issue: 2.98
  • Average comments per pull request: 0.16
  • Merged pull requests: 43
  • Bot issues: 1
  • Bot pull requests: 53
Past Year
  • Issues: 3
  • Pull requests: 39
  • Average time to close issues: N/A
  • Average time to close pull requests: 20 days
  • Issue authors: 3
  • Pull request authors: 3
  • Average comments per issue: 1.33
  • Average comments per pull request: 0.03
  • Merged pull requests: 28
  • Bot issues: 0
  • Bot pull requests: 8
Top Authors
Issue Authors
  • moodymudskipper (72)
  • smingerson (3)
  • MichaelChirico (3)
  • llrs (2)
  • jpkrooney (1)
  • jwallib (1)
  • azzaea (1)
  • AdrianAntico (1)
  • Lornebradia (1)
  • albersonmiranda (1)
  • krlmlr (1)
  • whtns (1)
  • github-actions[bot] (1)
  • Sheksta (1)
  • jankowtf (1)
Pull Request Authors
  • github-actions[bot] (53)
  • krlmlr (32)
  • moodymudskipper (7)
  • zkamvar (2)
  • llrs (1)
  • jameslairdsmith (1)
Top Labels
Issue Labels
on hold (4) 1 (2) v2 (1) 4 (1) 3 (1) bug (1) 2 (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 278 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 3
  • Total versions: 3
  • Total maintainers: 1
cran.r-project.org: flow

View and Browse Code Using Flow Diagrams

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 3
  • Downloads: 278 Last month
Rankings
Stargazers count: 1.0%
Forks count: 3.2%
Dependent repos count: 16.5%
Average: 17.5%
Dependent packages count: 28.7%
Downloads: 38.1%
Maintainers (1)
Last synced: 10 months ago

Dependencies

DESCRIPTION cran
  • here * imports
  • htmlwidgets * imports
  • lifecycle * imports
  • methods * imports
  • nomnoml * imports
  • rstudioapi * imports
  • styler * imports
  • utils * imports
  • webshot * imports
  • covr * suggests
  • esquisse * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat >= 2.1.0 suggests
  • tidyselect * suggests
.github/workflows/R-CMD-check-dev.yaml actions
  • ./.github/workflows/check * composite
  • ./.github/workflows/custom/after-install * composite
  • ./.github/workflows/custom/before-install * composite
  • ./.github/workflows/dep-matrix * composite
  • ./.github/workflows/install * composite
  • ./.github/workflows/rate-limit * composite
  • ./.github/workflows/update-snapshots * composite
  • actions/checkout v3 composite
  • r-lib/actions/setup-r v2 composite
.github/workflows/R-CMD-check.yaml actions
  • ./.github/workflows/check * composite
  • ./.github/workflows/commit * composite
  • ./.github/workflows/custom/after-install * composite
  • ./.github/workflows/custom/before-install * composite
  • ./.github/workflows/git-identity * composite
  • ./.github/workflows/install * composite
  • ./.github/workflows/pkgdown-build * composite
  • ./.github/workflows/pkgdown-deploy * composite
  • ./.github/workflows/rate-limit * composite
  • ./.github/workflows/roxygenize * composite
  • ./.github/workflows/style * composite
  • ./.github/workflows/update-snapshots * composite
  • actions/checkout v3 composite
.github/workflows/check/action.yml actions
  • actions/upload-artifact main composite
  • r-lib/actions/check-r-package v2 composite
.github/workflows/install/action.yml actions
  • ./.github/workflows/get-extra * composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/lock.yaml actions
  • dessant/lock-threads v2 composite
.github/workflows/pkgdown-deploy/action.yml actions
  • nick-fields/retry v2 composite
.github/workflows/pkgdown.yaml actions
  • ./.github/workflows/custom/after-install * composite
  • ./.github/workflows/custom/before-install * composite
  • ./.github/workflows/git-identity * composite
  • ./.github/workflows/install * composite
  • ./.github/workflows/pkgdown-build * composite
  • ./.github/workflows/pkgdown-deploy * composite
  • ./.github/workflows/rate-limit * composite
  • actions/checkout v3 composite
.github/workflows/pr-commands.yaml actions
  • actions/checkout v3 composite
  • r-lib/actions/pr-fetch master composite
  • r-lib/actions/pr-push master composite
  • r-lib/actions/setup-r master composite
.github/workflows/revdep.yaml actions
  • actions/checkout v3 composite
  • actions/upload-artifact main composite
  • r-lib/actions/setup-pandoc v2 composite
.github/workflows/style/action.yml actions
  • actions/cache v3 composite
.github/workflows/update-snapshots/action.yml actions
  • peter-evans/create-pull-request v4 composite