-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding a new search app with specific filter for the Perovskite Database entries #41
Conversation
Reviewer's Guide by SourceryThis PR adds a new search application specifically for the Perovskite Database entries. The implementation includes a comprehensive UI configuration with various search filters, visualization options, and data columns. Additionally, it includes a minor schema update to change the band_gap_graded field from string to boolean type. ER diagram for the Perovskite schema updateerDiagram
Perovskite {
bool band_gap_graded
string band_gap_estimation_basis
}
Class diagram for the new Perovskite Database AppclassDiagram
class App {
+String label
+String path
+String category
+String description
+SearchQuantities search_quantities
+List~Column~ columns
+Menu menu
+Dashboard dashboard
+Map~String, List~String~ filters_locked
}
class Column {
+String quantity
+Boolean selected
+String label
+Map~String, Object~ format
+String unit
}
class Menu {
+List~MenuItem~ items
}
class Dashboard {
+Object widgets
}
class SearchQuantities {
+List~String~ include
}
class MenuItem {
+String title
+MenuSizeEnum size
+List~MenuItem~ items
}
class MenuItemTerms {
+String search_quantity
+Boolean show_input
+Integer width
+Integer options
+String title
}
class MenuItemHistogram {
+Axis x
+AxisScale y
+String title
+Integer width
+Boolean show_input
+Integer nbins
}
class Axis {
+String search_quantity
+String title
+String scale
+String unit
}
class AxisScale {
+ScaleEnum scale
}
App --> SearchQuantities
App --> Column
App --> Menu
App --> Dashboard
Menu --> MenuItem
MenuItem <|-- MenuItemTerms
MenuItem <|-- MenuItemHistogram
MenuItemHistogram --> Axis
MenuItemHistogram --> AxisScale
File-Level Changes
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @Pepe-Marquez - I've reviewed your changes and they look great!
Here's what I looked at during the review
- 🟡 General issues: 1 issue found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟡 Complexity: 1 issue found
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
src/perovskite_solar_cell_database/apps/perovskite_solar_cell_database_app.py
Show resolved
Hide resolved
src/perovskite_solar_cell_database/apps/perovskite_solar_cell_database_app.py
Show resolved
Hide resolved
@lauri-codes: this PR adds a new search page for the perovskite database with custom filters. I might add an additional section later, but I believe it's ready for you to start reviewing from your perspective. It should work with the current solar cell entries. The PR also includes a search page for the ions database that we’ve compiled. To test the ions entries, you can drop the .xlsx file into the test/data folder. Additionally, I’ve updated the category of the apps. Regarding the possibility of having the plots in the left panel: for instance, in the Publication section, we could have a plot of efficiency vs. publication date, with other topical plots in subsequent sections. This way, users would have pre-configured plots under different categories that they could push to the main dashboard with the plus button, serving as both a functional feature and a source of inspiration. However, I’m completely fine with it if you think this approach isn’t ideal. After the first deployment, I could ask people from Eva's group to give feedback on the database. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few small comments, also played around with the apps a bit.
In "The Perovskite Solar Cell Database" you are loading 4 scatter plots into the dashboard: this takes a while, maybe test a bit to see that the initial loading time is reasonable.
In general, I see that you are using the menus more as an extension of the dashboard: maybe we should see if that is in general a direction where we want to go.
src/perovskite_solar_cell_database/apps/perovskite_solar_cell_database_app.py
Outdated
Show resolved
Hide resolved
src/perovskite_solar_cell_database/apps/perovskite_solar_cell_database_app.py
Outdated
Show resolved
Hide resolved
@lauri-codes, I think it would be good to see how the 4 plots behave in production. I think if you agree we can try to deploy this and see. If not, I can try to reduce it to one or two plots in te dashboard. Would it be ok if we merge and try to deploy? @hampusnasstrom, is it also ok with you to dump the ions database in staging? |
I made a few small fixes in the llm-extraction-branch so I will pull those here as well. |
Yes, you can just deploy this and see how the scatter plots behave themselves in the oasis distro. |
Summary by Sourcery
Add a new search application for the Perovskite Solar Cell Database with specific filtering capabilities, update the schema for better data handling, and ensure the application is correctly integrated and tested.
New Features:
Enhancements:
Build:
Tests: