Open adamkucharski opened 1 year ago
On the branch: adapt_existing. Function documentation added (this was in agreement with edits made by the package maintainer at the same time), vignette in progress outlining the structure of the app (vignettes/epishiny_structure.Rmd).
Coming into this cold, I think this is a great issue to solve.
Once a PR is opened, https://github.com/epiverse-trace/epishiny/commit/e5a2e12143785e3bc9f72c4711905390e513bbfd and https://github.com/epiverse-trace/epishiny/tree/adapt_existing goes a long way to improving the docstrings and general function documentation.
I think it could also be useful to have a couple of starting documents for contributors at a more overview level.
For example a project structure description like in https://github.com/drivendata/cookiecutter-data-science. This would help contributors to know where to put their code and data, and where functions might be that they could use, modify, and extend.
├── LICENSE
├── Makefile <- Makefile with commands like `make data` or `make train`
├── README.md <- The top-level README for developers using this project.
│
├── docs <- A default Sphinx project; see sphinx-doc.org for details
│
├── references <- Data dictionaries, manuals, and all other explanatory materials.
│
├── reports <- Generated analysis as HTML, PDF, LaTeX, etc.
│ └── figures <- Generated graphics and figures to be used in reporting
│
├── requirements.txt <- The requirements file for reproducing the analysis environment, e.g.
│ generated with `pip freeze > requirements.txt`
│
├── setup.py <- makes project pip installable (pip install -e .) so src can be imported
├── src <- Source code for use in this project.
│ ├── __init__.py <- Makes src a Python module
│ │
│ └── data <- Scripts to download or generate data
│ └── make_dataset.py
visualizations
│ └── visualize.py
│
└── tox.ini <- tox file with settings for running tox; see tox.readthedocs.io
In the same spirit, it could also be useful to include a contributing.md
file that describes how to contribute to the project. This could include things like how to set up a development environment, how to run tests on the functions, how to run/deploy the shiny server, and how to submit a PR for improving the functions.
It may be useful to have documentation on the minimal dataset needed and its format to help early package users.
Useful to have overview of how to edit app functionality and how it fits together for experienced R users who have less shiny experience. Could use issue #2 and issue #3 as motivating use cases for this.
Could also expand on when package will be most useful (e.g. frequent data updates relative to plot functionality/customisation required).