Sharing a learning project that hopefully can help others

I have been working on a project to learn how to use Dash as a front end for an application. I am sharing this project as a learning experience, covering all the solutions to my challenges during this exercise. I only documented a few details about the project, but if it helps, I will answer any questions you might have.

In this project, I cover these Dash uses.

  • Callbacks
  • Clientside callbacks
  • Using custom javascript for clientside work
  • Examining HTML objects inside Javascript
  • How assets are loaded
  • Dynamically adding objects. Particularly for indexed objects
    • Buttons and Inputs for a table-like layout
  • Re-drawing objects when adding items
    • Adding rows to an Accordion object
  • Navigating the state of multiple dynamic objects when invoking a callback
  • Understanding what object triggered a callback
  • Designing the UI
    • Sticky divs
    • Hiding and showing divs
  • Dealing with many, many… object IDs
    • This one I am still working on
  • Reusing callback code
  • Uploading files and limiting rows
    • This one needs work

GitHub repo: GitHub - marcelonyc/xformer-builder

3 Likes

Thank you for sharing your learning project with us, @marceloli

What would you say was the hardest part of the learning process? Did you face a steep learning curve?

@adamschroeder The hardest part for me is building good design patterns for managing many object ids and callback returns. I often get lost when a callback does not behave as I expected. It is usually related to the wrong object id or missing or mispositioned returns for the callback outputs. I am still trying to figure out a pattern to store object IDs and not hardcoding id=“” :slight_smile:

1 Like