Closed dkedar7 closed 11 months ago
Hi @dkedar7, welcome to pyOpenSci and thank you for taking the time to submit this detailed presubmission inquiry.
We also appreciate your patience while our editorial board discussed whether Fast Dash is in scope.
First of all, let me say you have done a lot of great work developing the package. As is, it meets most if not all of the requirements to start a review.
That said, we have decided that that Fast Dash is not in scope at this time. Our understanding is that the tool is very general: it is designed to make dashboard tools easier to use (specifically, plotly). This is definitely a great goal for a package. However, its use is too broad for pyOpenSci. We base this in part on our read of the documentation: while it's great you have examples in the documentation, they do not read as very specific to any one domain or set of domains. Thus, Fast Dash does not currently appear to be designed for specific scientific application.
I understand if you feel that this is not very clearly stated in our guide. We plan to update with language like I am using here, to make sure the scope for visualization tools is better defined. We are basing this decision in part on similar scoping by our sister organization, rOpenSci, that no longer considers data visualization packages in scope. If it helps you understand our scope here, I would point to two packages we do consider in scope: pyGMT, that is in scope because (1) it provides a Python wrapper for a library that is widely used for (2) a specific application, visualizations of mapping; and EOMaps that similarly provides functionality specific to mapping.
Please let me know if that decision is clear to you. I am happy to clarify here further if needed. We could definitely be open to a review at a later date, if you do decide to focus on more specific scientific application.
I understand. Thanks for your time and sharing the decision @NickleDave!
Thank you @dkedar7 -- you're doing great work and I hope it doesn't sound like we're discouraging you. Looking forward to seeing where you go with Fast Dash
Submitting Author: Kedar Dabhadkar (@dkedar7)
Package Name: Fast Dash One-Line Description of Package: Turn Python functions into interactive web applications with minimal code changes. Repository Link (if existing): https://github.com/dkedar7/fast_dash
Code of Conduct & Commitment to Maintain Package
Description
Include a brief paragraph describing what your package does:
Fast Dash conceptualizes and offers a unique approach to building and deploying interactive web applications. By reading a function name, docstring, and input/output type hints, Fast Dash can automatically generate both an application layout and a fully interactive web application. Owing to its design as a function wrapper, it can also be used as a decorator (
@fastdash
) to simplify building interactive web applications. Fast Dash applications can be deployed to external ports as well as inside Jupyter notebooks using the inline property. Its Flask backend makes it possible to deploy applications to cloud-hosted instances.Although Fast Dash can be used in many domains, its main objective is to help researchers and students convert their analyses or data visualization scripts into web applications without any specialized web development knowledge.
Community Partnerships
We partner with communities to support peer review with an additional layer of checks that satisfy community requirements. If your package fits into an existing community please check below:
Scope
Scope
Please indicate which category or categories. Check out our package scope page to learn more about our scope. (If you are unsure of which category you fit, we suggest you make a pre-submission inquiry):
Domain Specific & Community Partnerships
Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of: Fast Dash translates data visualizations and insights into sharable, interactive web dashboards, allowing researchers to disseminate their findings with the entire research community. Students and instructors can use Fast Dash to learn Python programming, debug scripts, and deploy web applications without specialized web development knowledge.
Who is the target audience and what are the scientific applications of this package? Researchers, students, and instructors would find Fast Dash a very handy tool. Rapid prototyping is a cornerstone of scientific research, which is characterized by evolving hypotheses, iterative experimentation, and validation. Fast Dash addresses a critical need in this landscape, enabling researchers to communicate not just final results but also intermediate findings. By facilitating early-stage data visualization and sharing, Fast Dash fosters a collaborative environment, enabling swift feedback, hypothesis validation, and debugging.
Are there other Python packages that accomplish similar things? If so, how does yours differ? There are a few different Python packages in this landscape: Plotly Dash, Streamlit, Gradio, and Vizro. However, all these packages require writing multiple additional scripts or code to declare a web application. Moreover, most of them don't support common Python data visualization libraries like Matplotlib off the shelf, requiring further type conversions to build an application successfully. On the other hand, the Fast Dash premise is to warrant minimum code modifications to transform a well-annotated Python function into a web application. It currently supports using most common data types as type hints directly, like Matplotlib figures, Pandas data frames, Pillow images, and so on.
Any other questions or issues we should be aware of:
P.S. Have feedback/comments about our review process? Leave a comment here