Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
366 commits
Select commit Hold shift + click to select a range
f3d1ec8
Refactor ModelCardCompact and ModelComparisonTable components: integr…
Creylay Jul 9, 2026
9ae96de
Refactor ModelCardCompact and SessionVisualization components: adjust…
Creylay Jul 9, 2026
0327586
feat: confirm before deleting a component download
Irozuku Jul 9, 2026
a011d76
Enhance SessionVisualization component: add dataset name display in s…
Creylay Jul 9, 2026
1e51a31
Refactor SessionVisualization and ModelCardCompact components: enhanc…
Creylay Jul 9, 2026
cec0d72
Refactor ScoreRing and ModelCardCompact components: increase sizes fo…
Creylay Jul 9, 2026
f8b8e99
Refactor ModelCardCompact component: improve layout and alignment of …
Creylay Jul 9, 2026
6199d2b
fix: stop delete confirmation clicks from triggering the row underneath
Irozuku Jul 9, 2026
e68025d
Refactor ModelCardCompact and SessionVisualization components: adjust…
Creylay Jul 9, 2026
585cb71
Refactor ModelCardCompact and RunCard components: swap modelDisplayNa…
Creylay Jul 9, 2026
54911d3
Refactor SessionVisualization component: enhance layout for session h…
Creylay Jul 9, 2026
47da57f
feat: show download size on the delete button
Irozuku Jul 9, 2026
eeaa197
Change the benchmark
Felipedino Jul 10, 2026
458b014
Add multilingual row
Felipedino Jul 10, 2026
bde86c8
Only spanish in benchmark ES
Felipedino Jul 10, 2026
9f93457
Merge branch 'feat/benchmarkv2' of https://github.com/DashAISoftware/…
Felipedino Jul 10, 2026
044d60c
Enhance SimpleImputer and SklearnWrapper with type preservation and c…
Felipedino Jul 10, 2026
481b833
PredictJob. now builds the saved prediction dataset from the full loa…
Felipedino Jul 10, 2026
706ba65
Refactor SimpleImputer and SklearnWrapper for improved error handling…
Felipedino Jul 10, 2026
8bb9fb8
Merge branch 'fix/predict-cols' into test/kaggle
Felipedino Jul 10, 2026
d5b5a72
Refactor SimpleImputer and SklearnWrapper for improved column handlin…
Felipedino Jul 10, 2026
8470195
Merge branch 'fix/simple-imputer' into test/kaggle
Felipedino Jul 10, 2026
006cb6f
Add LightGBM and XGBoost classifiers with corresponding schemas and t…
Felipedino Jul 10, 2026
1918286
fix: close model hover popover when clicking a row action
Irozuku Jul 10, 2026
d5bd97a
fix: disable train in the comparison table when the model is not down…
Irozuku Jul 10, 2026
8fb12f8
Refactor components for session visualization: implement ModelDetailV…
Creylay Jul 10, 2026
1d1db7a
fix: improve hover feedback for not downloaded models in ModelListItem
Irozuku Jul 10, 2026
2dec9ca
Add multilingual role/acknowledgments (en, es, pt, de, zh) to institu…
Creylay Jul 10, 2026
0f50088
test: fix download, opus, and job fixtures broken by download changes
Irozuku Jul 10, 2026
647afbc
feat: add typed artifact contract for renderable outputs
Irozuku Jul 10, 2026
3deb712
fix: reuse filetype library for image mime detection
Irozuku Jul 10, 2026
58c6262
feat: return artifacts from explainer plot methods
Irozuku Jul 10, 2026
c7fb3bc
feat: return artifacts from explorer results
Irozuku Jul 10, 2026
ddad3f2
feat: normalize pipeline exploration results as artifacts
Irozuku Jul 10, 2026
ec7399a
feat: render typed artifacts in frontend
Irozuku Jul 10, 2026
d89aa33
Merge pull request #760 from DashAISoftware/feat/benchmarkv2
cristian-tamblay Jul 13, 2026
c069af7
feat: offer model specific explainers in creation dialog
Irozuku Jul 13, 2026
359fcef
feat: merge compatible components across class hierarchy
Irozuku Jul 13, 2026
7bc173d
Refactor session visualization components: redesign ModelComparisonTa…
Creylay Jul 13, 2026
32cf5c4
Refactor ModelCardCompact component: enhance layout and interactions,…
Creylay Jul 13, 2026
f668e8f
Refactor session visualization components: implement RunEditDialog fo…
Creylay Jul 13, 2026
1321da1
Refactor ResultsGraphs and ResultsGraphsPlot components: update axis …
Creylay Jul 13, 2026
32c9a8a
fix: import visualizers keys from shared module
Irozuku Jul 13, 2026
e6b5b02
Merge branch 'feat/explainer-output-artifacts' into feat/explainer-mo…
Irozuku Jul 13, 2026
babdd7a
feat: add grad-cam dice-ml and lime dependencies
Irozuku Jul 13, 2026
9a3e11b
feat: add ten explainers with typed artifact plots
Irozuku Jul 13, 2026
eda5755
feat: declare image explainers on torch image models
Irozuku Jul 13, 2026
d06f950
fix: correct formatting in docstrings and comments
Irozuku Jul 13, 2026
c2b5888
fix: group explanation artifacts per instance in selector
Irozuku Jul 13, 2026
baebd11
Merge branch 'feat/explainer-model-compatibility' into feat/more-expl…
Irozuku Jul 13, 2026
7d588a8
Merge branch 'feat/explainer-output-artifacts' into feat/explainer-mo…
Irozuku Jul 13, 2026
e5f7098
feat: enforce image explainer support via model mixins
Irozuku Jul 13, 2026
22e8f25
Refactor session visualization components: implement ModelConfigSideb…
Creylay Jul 14, 2026
82284f4
Refactor ModelsBreadcrumbs: add root crumb to breadcrumb navigation f…
Creylay Jul 14, 2026
7044201
fix: install cpu torch in CI to avoid nccl cu12/cu13 clash
Irozuku Jul 14, 2026
706f665
fix: skip llama-cpp-python install in CI
Irozuku Jul 14, 2026
011438e
fix: require shap>=0.48 for numpy 2.3+ compatibility
Irozuku Jul 14, 2026
349c006
Refactor run edit logic: replace isDirty with canSave for better save…
Creylay Jul 14, 2026
a5aee87
Refactor RetrainConfirmDialog: replace Dialog with Modal for improved…
Creylay Jul 14, 2026
830871d
Refactor ModelDetailView and RunResults: enhance UI with icon-based s…
Creylay Jul 14, 2026
d29a38d
feat: add explainers sidebar to run detail explainers tab
Irozuku Jul 14, 2026
10ab1be
feat: skip explainer selection step when preselected and remove cente…
Irozuku Jul 14, 2026
dcc98ef
Refactor ModelCardCompact and localization files: update label from "…
Creylay Jul 14, 2026
e1f6495
Merge branch 'feat/more-explainers' into feat/explainers-right-sidebar
Irozuku Jul 14, 2026
76e3665
feat: add type-aware artifact download utility
Irozuku Jul 14, 2026
a8a27ee
feat: add reusable artifact viewer with download, edit and fullscreen
Irozuku Jul 14, 2026
d28d670
feat: render explainer instances with input panel and artifact viewers
Irozuku Jul 14, 2026
1fc59a0
feat: add i18n keys for artifact viewer actions
Irozuku Jul 14, 2026
0e44ff5
feat: make explainer card an always-open instance viewer
Irozuku Jul 14, 2026
b85eea5
feat: redesign explainer artifact card into clean bordered blocks
Irozuku Jul 14, 2026
70a15a7
feat: offer model-specific explainers in the explainers sidebar
Irozuku Jul 14, 2026
4d05028
fix: stop plot edit modal freezing from onUpdate re-render loop
Irozuku Jul 14, 2026
5ce288a
feat: beautify artifact fullscreen view with themed header and large …
Irozuku Jul 14, 2026
91bd7da
Refactor RunResults: enhance tab styling with theme integration, impr…
Creylay Jul 14, 2026
7fc9202
fix: add Typography component import to ArtifactViewer
Irozuku Jul 14, 2026
61e245d
Merge branch 'refactor/session-visualization-redesign' into feat/expl…
Irozuku Jul 14, 2026
9194927
Refactor ModelConfigSidebar: adjust padding for improved layout and v…
Creylay Jul 14, 2026
963ab05
Refactor ResultsGraphs: implement run toggling functionality, manage …
Creylay Jul 14, 2026
f028acc
fix: remove em dashes from comments in models components
Irozuku Jul 15, 2026
85970ec
feat: add role field to render artifacts
Irozuku Jul 15, 2026
1ecf681
feat: add input artifact builders
Irozuku Jul 15, 2026
e245e91
feat: add plot_overrides column to explainer tables
Irozuku Jul 15, 2026
423e12a
feat: persist and apply explainer plot edits as overrides
Irozuku Jul 15, 2026
9549c4c
feat: wire explainer plot edit save and reset to the API
Irozuku Jul 15, 2026
5209e3f
feat: serve original explained rows for local explainer input panel
Irozuku Jul 15, 2026
28cc2fa
feat: show original dataset row in explainer model input panel
Irozuku Jul 15, 2026
2987806
fix: pass selected dataset to input-row serializer instead of a split…
Irozuku Jul 15, 2026
9466884
fix: encode explainer input images via to_pil for image tasks
Irozuku Jul 15, 2026
2cf88a2
feat: store explained rows as a dataset for the explainer input view
Irozuku Jul 15, 2026
dac224c
feat: master detail explainer view with paginated instance table
Irozuku Jul 15, 2026
4fc28f1
fix: remove duplicate explainer name in single instance card
Irozuku Jul 15, 2026
7f85edc
refactor: reuse LeanDatasetTable for explainer instances with list fa…
Irozuku Jul 15, 2026
f6831ae
refactor: remove model input label from ExplainersPlot component
Irozuku Jul 15, 2026
6077750
feat: add conditional rendering to LeanToolbar
Irozuku Jul 15, 2026
12bf063
feat: full height instance table styled like the dataset table
Irozuku Jul 15, 2026
17a532b
feat: replace "-" with null when no types given in LeanHeaderCell
Irozuku Jul 15, 2026
5928181
feat: add NumericExpansion converter for unary numeric transformations
Felipedino Jul 15, 2026
c0608e8
Refactor ResultsGraphsPlot: implement draggable card functionality fo…
Creylay Jul 15, 2026
4ce5f5a
Refactor SessionVisualization: update handleViewDetails to navigate d…
Creylay Jul 15, 2026
9aec352
feat: split partial dependence into per curve plots with a left selector
Irozuku Jul 15, 2026
9feb2c2
feat: split permutation importance into per count plots with a left s…
Irozuku Jul 15, 2026
9038c88
feat: adjust flex property for global explainers in ExplainersPlot
Irozuku Jul 15, 2026
9c72723
Refactor LiveMetricsChart: replace chart implementation with Plotly f…
Creylay Jul 15, 2026
d391934
feat: update artifact grouping logic and enhance ArtifactViewer with …
Irozuku Jul 15, 2026
a8b1333
feat: add sibling navigation and fullscreen enhancements to ArtifactV…
Irozuku Jul 15, 2026
ac089e0
fix: increase z-index for action buttons in ArtifactViewer
Irozuku Jul 15, 2026
6ab917c
feat: add Divider component to ExplainerInstanceTable
Irozuku Jul 15, 2026
2d5161e
Refactor components: enhance LiveMetricsChart, ModelDetailView, RunCa…
Creylay Jul 15, 2026
5ddd33b
refactor: move table artifact into a separated component
Irozuku Jul 15, 2026
1ed291d
feat: add support for grouped artifacts
Irozuku Jul 17, 2026
f379b51
feat: update explainers to use GroupedArtifacts for better organization
Irozuku Jul 17, 2026
c5be21e
feat: update return type of plot method to GroupedArtifacts in BaseLo…
Irozuku Jul 17, 2026
609f15a
feat: enhance artifact normalization to support grouped artifacts in …
Irozuku Jul 17, 2026
9882de2
feat: add test for normalizing local explainer items into grouped art…
Irozuku Jul 17, 2026
166316b
fix: update normalization logic to prevent grouping of already groupe…
Irozuku Jul 17, 2026
3042615
refactor: enhance artifact normalization to handle grouped artifacts …
Irozuku Jul 17, 2026
12e6bc2
feat: update plot method return type to List[GroupedArtifacts] in Bas…
Irozuku Jul 17, 2026
1d4cdc1
Refactor LiveMetricsChart and ResultsGraphsLayout: enhance layout and…
Creylay Jul 17, 2026
41c7c01
fix: allow fullscreen navigation across groups for grouped artifacts
Irozuku Jul 17, 2026
a1300e4
Refactor ResultsGraphs components: add sessionId prop to ResultsGraph…
Creylay Jul 17, 2026
8ef5a4e
feat: drag explainers from sidebar to center to create them
Irozuku Jul 17, 2026
2cb01ce
fix: adjust fullscreen dimensions to optimize content fit and prevent…
Irozuku Jul 17, 2026
c093c01
feat: reuse the explorer plot editor for explainer plot edits
Irozuku Jul 17, 2026
3e09d87
style: compact the plot edit form inputs and spacing
Irozuku Jul 17, 2026
2087c14
Refactor PredictionCard and RunResults components: enhance layout and…
Creylay Jul 17, 2026
8aad5d3
Refactor RunResults component: replace TrendingUpIcon with DatasetIco…
Creylay Jul 17, 2026
42297d6
Add ColumnConcat and TypeCast converters
Felipedino Jul 19, 2026
e998287
Merge branch 'develop' into test/kaggle
Felipedino Jul 19, 2026
24b4ad9
update uvlock
Felipedino Jul 20, 2026
e12c71e
refactor: update documentation and improve type handling in FeatureEn…
Felipedino Jul 20, 2026
83a7d6d
Merge pull request #761 from DashAISoftware/fix/simple-imputer
cristian-tamblay Jul 20, 2026
3a5c787
Merge pull request #762 from DashAISoftware/fix/predict-cols
cristian-tamblay Jul 20, 2026
9e35619
Merge pull request #763 from DashAISoftware/feat/institutions-i18n-role
cristian-tamblay Jul 20, 2026
c4957d1
Merge branch 'develop' into feat/component-download
cristian-tamblay Jul 20, 2026
a4de710
Refactor ResultsGraphsParameters component: enhance styling of the dr…
Creylay Jul 20, 2026
5a6df75
feat: add row and manual input data sources to local explainer job
Irozuku Jul 20, 2026
1714639
feat: add endpoint listing datasets compatible with a run
Irozuku Jul 20, 2026
07da637
feat: extend explainer api for manual inputs and valid datasets
Irozuku Jul 20, 2026
4ae55cf
feat: add optional multi row selection to the lean dataset table
Irozuku Jul 20, 2026
65cd0fc
feat: make manual input title and target column configurable
Irozuku Jul 20, 2026
ef25064
feat: allow hiding the dataset details card in dataset autocomplete
Irozuku Jul 20, 2026
c2c33f5
feat: redesign local explainer creation with three data sources
Irozuku Jul 20, 2026
ccd3bcf
Merge branch 'refactor/session-visualization-redesign' into feat/expl…
Irozuku Jul 20, 2026
295fb17
Refactor ModelCardCompact and RunResults components: update label fro…
Creylay Jul 20, 2026
17ef3bb
Refactor RunResults component: update prediction filter default to 'd…
Creylay Jul 20, 2026
7bda0c5
fix: update explainer tests for grouped artifacts contract
Irozuku Jul 20, 2026
9e0ca54
Merge branch 'feat/explainers-right-sidebar' into feat/local-explaine…
Irozuku Jul 20, 2026
f774f76
Refactor RunResults component: enhance pill toggle button styling for…
Creylay Jul 20, 2026
b451bdc
Merge branch 'refactor/session-visualization-redesign' into feat/expl…
Irozuku Jul 20, 2026
111b888
feat: toggle global/local explainers and focus new card
Irozuku Jul 20, 2026
87fa550
Merge branch 'feat/explainers-right-sidebar' into feat/local-explaine…
Irozuku Jul 20, 2026
8f8a812
perf: share explainer display names instead of per card fetch
Irozuku Jul 20, 2026
1721c73
Merge branch 'feat/explainers-right-sidebar' into feat/local-explaine…
Irozuku Jul 20, 2026
1eee59e
Refactor components: replace MUI Tabs and ToggleButtonGroup with cust…
Creylay Jul 21, 2026
df8de69
Merge pull request #764 from DashAISoftware/feat/component-download
cristian-tamblay Jul 21, 2026
4f7bdc6
Refactor InfoModal component: create a reusable modal for displaying …
Creylay Jul 21, 2026
c622989
Merge pull request #766 from DashAISoftware/feat/explainer-output-art…
cristian-tamblay Jul 21, 2026
9b41cdc
feat: virtualize and cache explainer results list
Irozuku Jul 21, 2026
0fc6a96
Merge remote-tracking branch 'origin/refactor/session-visualization-r…
Irozuku Jul 21, 2026
cea0d83
Refactor ModelCardCompact and ModelDetailView components: replace inl…
Creylay Jul 21, 2026
3ec267d
Refactor PredictionCard component: remove unused date formatting and …
Creylay Jul 21, 2026
c94cfb1
Refactor PredictionCard component: replace Chip status indicator with…
Creylay Jul 21, 2026
adfee8d
Merge branch 'develop' into feat/explainer-model-compatibility
Irozuku Jul 21, 2026
4b9ade3
docs: replace comparison benchmark page and fix base class count
Irozuku Jul 21, 2026
dcd7af6
Merge remote-tracking branch 'origin/refactor/session-visualization-r…
Irozuku Jul 21, 2026
c081fa1
fix: restore detail view fill height layout after merge
Irozuku Jul 21, 2026
f1cb350
Merge pull request #771 from DashAISoftware/docs/comparison-page
cristian-tamblay Jul 21, 2026
388d912
Refactor prediction handling in ManualPredictionPanel: enable individ…
Creylay Jul 21, 2026
b31afac
Refactor dataset tables and related components: add target column fun…
Creylay Jul 21, 2026
7cabd8d
Minor fix to plugin description: its a component packaged as a plugin
cristian-tamblay Jul 21, 2026
322ceb2
Refactor RunResults and ManualInputForm components: improve code form…
Creylay Jul 21, 2026
3fb0ee5
Refactor ManualPredictionsTable and RunResults components: enhance fu…
Creylay Jul 21, 2026
5a19eca
Remove loading indicator for running predictions in ManualPredictions…
Creylay Jul 22, 2026
cb18068
Refactor InfoSessionModal and SessionVisualization components: enhanc…
Creylay Jul 22, 2026
c2271c1
Refactor ManualPredictionsTable, DatasetTable, LeanDatasetTable, and …
Creylay Jul 22, 2026
506c61b
Refactor SessionVisualization component: enhance UI layout by adding …
Creylay Jul 22, 2026
f1cccc8
Merge pull request #772 from DashAISoftware/docs/components-classes
Irozuku Jul 22, 2026
cfbce81
refactor: reposition scope selector to sticky header during scrolling
Irozuku Jul 22, 2026
1387414
Merge branch 'feat/local-explainer-data-sources' into feat/explainers…
Irozuku Jul 22, 2026
fd09e2e
Merge branch 'refactor/session-visualization-redesign' into feat/expl…
Irozuku Jul 22, 2026
3014ebe
Merge remote-tracking branch 'origin' into refactor/session-visualiza…
Creylay Jul 22, 2026
af207fa
Merge branch 'feat/explainers-right-sidebar' into refactor/session-vi…
Irozuku Jul 22, 2026
929b663
style: match manual input form table to lean dataset table
Irozuku Jul 22, 2026
08f9b4c
refactor: streamline ModelDetailView layout and improve status display
Creylay Jul 22, 2026
87b7962
refactor: enhance InfoSessionModal with task display and clean up Ses…
Creylay Jul 22, 2026
ff0976f
perf: dedupe explainer fetches and stabilize poll re renders
Irozuku Jul 22, 2026
189dee8
refactor: simplify layout in ModelDetailView by removing redundant co…
Creylay Jul 22, 2026
8f01ba4
Merge branch 'refactor/session-visualization-redesign' of https://git…
Irozuku Jul 22, 2026
47f3798
feat: remove user facing explainer name
Irozuku Jul 22, 2026
29382e4
feat: add status indicator to explainer cards
Irozuku Jul 22, 2026
b50026b
style: reorder and align dataset split controls in explainer creator
Irozuku Jul 22, 2026
b9b21ab
fix: drop explainer name from explanation API tests
Irozuku Jul 22, 2026
fc6d742
docs: enhance WEKA extension details and update references in compari…
Irozuku Jul 22, 2026
c8dd370
refactor: redesign LiveMetricsChart and RunResults layout for improve…
Creylay Jul 22, 2026
2b16906
Merge pull request #773 from DashAISoftware/docs/comparison-weka
cristian-tamblay Jul 22, 2026
da91de3
refactor: enhance ManualPredictionsTable and RunResults for consisten…
Creylay Jul 22, 2026
f28c329
refactor: update filter_datasets endpoint and related components for …
Creylay Jul 23, 2026
be901f0
refactor: enhance LiveMetricsChart with fallback metrics handling and…
Creylay Jul 23, 2026
249b4c3
refactor: clean up LiveMetricsChart code for improved readability and…
Creylay Jul 23, 2026
dacae68
refactor: split RunResults into data hook and tab components
Irozuku Jul 23, 2026
dc1e08a
refactor: implement bulk delete functionality in ManualPredictionsTab…
Creylay Jul 23, 2026
546fd51
refactor: enhance RunResults and DatasetTable components with improve…
Creylay Jul 23, 2026
0caa152
refactor: simplify RunResults tab handling by removing localStorage p…
Creylay Jul 23, 2026
83986d4
refactor: enhance ModelConfigurationContent integration in ModelDetai…
Creylay Jul 23, 2026
8a1e162
refactor: update hyperparameter plot handling to use typed artifacts …
Creylay Jul 23, 2026
823e4e7
refactor: integrate PlotActions component for enhanced plot interacti…
Creylay Jul 23, 2026
7282b94
refactor: enhance theme handling for Plotly.js dropdowns in dark mode
Creylay Jul 23, 2026
dcdc274
Add images to converter
Felipedino Jul 24, 2026
e150676
Change workflows of github
Felipedino Jul 24, 2026
36178ea
Merge branch 'develop' into test/kaggle
Felipedino Jul 24, 2026
8e7acb7
refactor: optimize layout and styling for HyperparameterPlots and Lea…
Creylay Jul 24, 2026
e17a737
Refactor scoring profiles and remove unused components
Creylay Jul 24, 2026
9a79090
refactor: align metric filter toolbar to the start for improved layout
Creylay Jul 24, 2026
9e2164a
Refactor model configuration and editing components
Creylay Jul 24, 2026
dc2d152
refactor: simplify tab labels in RunInfoSidebar component
Creylay Jul 24, 2026
3c95888
refactor: redesign session visualization and update parameter display…
Creylay Jul 24, 2026
a79cbd0
refactor: reduce padding in FormSchemaFieldCard for improved layout
Creylay Jul 27, 2026
82600eb
docs: enhance WEKA extension details and update references in compari…
Irozuku Jul 22, 2026
15b8b97
refactor: implement download state handling for training models in Mo…
Creylay Jul 27, 2026
6982c39
refactor: move getTraceColors function to a separate utility file for…
Creylay Jul 27, 2026
406f1c1
refactor: optimize schema fetching and state management in form compo…
Creylay Jul 27, 2026
90b492b
refactor: simplify task requirements state management and improve val…
Creylay Jul 27, 2026
bbd2ee0
refactor: enhance metric selection logic and loading state handling i…
Creylay Jul 27, 2026
7122f12
refactor: standardize metric split to "train" in SessionVisualization…
Creylay Jul 27, 2026
e3c1128
refactor: redesign SingleSelectChipGroup to use ToggleButtonGroup for…
Creylay Jul 28, 2026
0b43498
refactor: remove unused theme import and simplify styling in SingleSe…
Creylay Jul 28, 2026
6704623
refactor: enhance model run state management and improve metric selec…
Creylay Jul 28, 2026
428e696
refactor: update layout in PredictionResultsTab to use flexbox for im…
Creylay Jul 28, 2026
2a053b8
refactor: update localization files to enhance pluralization and impr…
Creylay Jul 28, 2026
7d05884
Merge pull request #768 from DashAISoftware/feat/more-explainers
cristian-tamblay Jul 28, 2026
585a04b
Merge pull request #767 from DashAISoftware/feat/explainer-model-comp…
cristian-tamblay Jul 28, 2026
1a656ac
Merge remote-tracking branch 'origin' into refactor/session-visualiza…
Creylay Jul 28, 2026
0558c99
fix: update GlobalExplainer and LocalExplainer models making name nul…
Irozuku Jul 28, 2026
12392e3
Merge pull request #778 from DashAISoftware/refactor/session-visualiz…
cristian-tamblay Jul 28, 2026
5baea4c
Merge branch 'develop' into test/kaggle
Felipedino Jul 29, 2026
d4abb0d
feat: add installation of libomp for macOS in build workflow
Felipedino Jul 29, 2026
783a4a6
fix: hand explainers unprepared model input
Irozuku Jul 29, 2026
848c003
fix: implement dynamic height for OptionBox and SelectOptionMenu comp…
Creylay Jul 29, 2026
2cfe60c
fix: keep the target column typed in the tf-idf model
Irozuku Jul 29, 2026
e3ab6b0
Merge pull request #770 from DashAISoftware/test/kaggle
cristian-tamblay Jul 29, 2026
aaced0a
fix: adjust padding for tab content alignment in RunResults and Predi…
Creylay Jul 29, 2026
7fa8b4c
fix: improve tab alignment and spacing in ResultsTabsHeader component
Creylay Jul 29, 2026
48d2ba5
Merge pull request #779 from DashAISoftware/fix/explainer-raw-model-i…
cristian-tamblay Jul 30, 2026
17f25f0
Merge pull request #780 from DashAISoftware/fix/tf-idf-explainers
cristian-tamblay Jul 31, 2026
6016863
Merge pull request #781 from DashAISoftware/fix/task-card-dynamic-height
cristian-tamblay Jul 31, 2026
1bb9419
Removed XGBoost and LGBM. libomp breaks installers
cristian-tamblay Jul 31, 2026
33d0afb
Merge pull request #782 from DashAISoftware/fix/run-tabs-alignment-an…
cristian-tamblay Jul 31, 2026
313ce0b
Merge pull request #785 from DashAISoftware/fix/remove-libomp
cristian-tamblay Aug 6, 2026
2cfc666
Added some autogenerated test files to gitignore
cristian-tamblay Aug 6, 2026
de3eb76
Bump to 0.9.7
cristian-tamblay Aug 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 6 additions & 12 deletions .github/workflows/build-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,20 +40,14 @@ jobs:

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
enable-cache: true

- uses: actions/cache@v3
with:
path: ${{ env.pythonLocation }}
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('requirements-dev.txt') }}

- name: Upgrade pip tools
run: python -m pip install --upgrade pip setuptools wheel
- run: python -m pip install --upgrade --upgrade-strategy eager -r requirements.txt
- run: python -m pip install --upgrade --upgrade-strategy eager -r requirements-dev.txt
- name: Install dependencies
run: uv sync --locked --extra cpu --no-install-package llama-cpp-python

- name: Prepare frontend build
run: mkdir -p DashAI/front/build
Expand All @@ -63,4 +57,4 @@ jobs:
name: react-build
path: DashAI/front/build
- name: Test with pytest
run: pytest -v
run: uv run --no-sync pytest -v
19 changes: 9 additions & 10 deletions .github/workflows/db-migrations.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,14 @@ jobs:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
enable-cache: true

- name: Install dependencies
run: |
pip install --upgrade --upgrade-strategy eager -r requirements.txt
pip install --upgrade --upgrade-strategy eager -r requirements-dev.txt
run: uv sync --locked --extra cpu --no-install-package llama-cpp-python

- name: Set DB env vars
run: |
Expand All @@ -37,7 +36,7 @@ jobs:

- name: Show Alembic info
run: |
alembic --version
uv run --no-sync alembic --version
echo "DB will be at: $DATABASE_URL"

- name: Prepare temp dir
Expand All @@ -48,15 +47,15 @@ jobs:
# upgrade to head
- name: Upgrade to head
run: |
alembic -x url="$DATABASE_URL" upgrade head
uv run --no-sync alembic -x url="$DATABASE_URL" upgrade head

# Checks downgrade and upgrade again (reversibility)
- name: Downgrade to base and upgrade again (reversibility check)
run: |
alembic -x url="$DATABASE_URL" downgrade base
alembic -x url="$DATABASE_URL" upgrade head
uv run --no-sync alembic -x url="$DATABASE_URL" downgrade base
uv run --no-sync alembic -x url="$DATABASE_URL" upgrade head

- name: Check for pending autogenerate (python-based)
env:
PYTHONPATH: "${PYTHONPATH}:."
run: python -m scripts.ci_alembic_check
run: uv run --no-sync python -m scripts.ci_alembic_check
13 changes: 8 additions & 5 deletions .github/workflows/docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,16 @@ jobs:
uses: actions/setup-python@v4
with:
python-version: "3.10"
cache: "pip"
cache-dependency-path: |
requirements.txt
requirements-dev.txt

- name: Install uv
uses: astral-sh/setup-uv@v6
with:
enable-cache: true

# Installed into the system Python because the Docusaurus build
# invokes `python scripts/generate_components.py` directly.
- name: Install DashAI (needed for component introspection)
run: pip install -e .
run: uv pip install --system -e .

- name: Set up Node.js
uses: actions/setup-node@v3
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/pre-commit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,13 @@ jobs:
with:
python-version: "3.12"

- name: Install uv
uses: astral-sh/setup-uv@v6

# Pillow goes to the system Python because the institutions-readme-sync
# hook is `language: system` and runs `python scripts/render_institutions.py`.
- name: Install pre-commit
run: |
python -m pip install --upgrade pip
pip install pre-commit Pillow
run: uv pip install --system pre-commit Pillow

- name: Cache pre-commit
uses: actions/cache@v3
Expand Down
57 changes: 30 additions & 27 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,13 +59,11 @@ jobs:
with:
python-version: "3.12"

- name: Install build tools
run: |
python -m pip install --upgrade pip
pip install build twine
- name: Install uv
uses: astral-sh/setup-uv@v6

- name: Build Python package
run: python -m build
run: uv build

- name: Verify frontend is included in wheel
run: |
Expand All @@ -75,13 +73,13 @@ jobs:
fi

- name: Check distribution metadata
run: twine check dist/*
run: uvx twine check dist/*

- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
run: twine upload --skip-existing dist/*
run: uvx twine upload --skip-existing dist/*

# ============================================================
# 3. Build Windows Executable
Expand All @@ -97,19 +95,19 @@ jobs:
with:
name: react-build
path: DashAI/front/build
- name: Set up Python 3.12
uses: actions/setup-python@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: "3.12"
enable-cache: true
- name: Install dependencies (CPU-only)
run: |
python -m pip install --upgrade pip
pip install -r requirements-cpu.txt
pip install pyinstaller
uv sync --locked --extra cpu --no-dev
uv pip install pyinstaller
- name: Build executable
shell: cmd
run: |
pyinstaller --clean --noconfirm dashai.spec
uv run --no-sync pyinstaller --clean --noconfirm dashai.spec

- name: Install Inno Setup
run: choco install innosetup -y
Expand Down Expand Up @@ -138,19 +136,20 @@ jobs:
with:
name: react-build
path: DashAI/front/build
- uses: actions/setup-python@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: "3.12"
enable-cache: true
- name: Install dependencies (CPU-only)
run: |
python -m pip install --upgrade pip
pip install -r requirements-cpu.txt
pip install pyinstaller pywebview
uv sync --locked --extra cpu --no-dev
uv pip install pyinstaller
brew install create-dmg

- name: Build ARM64 App Bundle
run: |
pyinstaller --clean --noconfirm dashai.spec
uv run --no-sync pyinstaller --clean --noconfirm dashai.spec

- name: Sign App Bundle (ad-hoc)
run: |
Expand Down Expand Up @@ -190,19 +189,20 @@ jobs:
with:
name: react-build
path: DashAI/front/build
- uses: actions/setup-python@v5
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
python-version: "3.12"
enable-cache: true
- name: Install dependencies (CPU-only)
run: |
python -m pip install --upgrade pip
pip install -r requirements-cpu.txt
pip install pyinstaller pywebview
uv sync --locked --extra cpu --no-dev
uv pip install pyinstaller
brew install create-dmg

- name: Build x86_64 App Bundle
run: |
pyinstaller --clean --noconfirm dashai.spec
uv run --no-sync pyinstaller --clean --noconfirm dashai.spec

- name: Sign App Bundle (ad-hoc)
run: |
Expand Down Expand Up @@ -246,14 +246,17 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@v6
# python-appimage drives its own embedded pip, so it stays pip-based
- name: Install build tooling
run: |
python -m pip install --upgrade pip
pip install build python-appimage
pip install python-appimage
sudo apt-get update
sudo apt-get install -y libfuse2 imagemagick librsvg2-bin
- name: Build wheel (frontend bundled)
run: python -m build --wheel
run: uv build --wheel
- name: Verify frontend is included in wheel
run: |
if ! unzip -l dist/*.whl | grep -q 'DashAI/front/build'; then
Expand Down Expand Up @@ -304,10 +307,10 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Extract version from setup.py
- name: Extract version from pyproject.toml
id: version
run: |
VERSION=$(grep -m 1 ' version=' setup.py | sed -E 's/.*version="([^"]+)".*/\1/')
VERSION=$(grep -m 1 '^version = ' pyproject.toml | sed -E 's/version = "([^"]+)"/\1/')
echo "version=$VERSION" >> "$GITHUB_OUTPUT"

- name: Download Windows installer
Expand Down
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ build/
develop-eggs/
dist/
downloads/
!DashAI/back/dependencies/downloads/
!tests/back/downloads/
eggs/
.eggs/
lib/
Expand Down Expand Up @@ -202,3 +204,8 @@ docs/node_modules/
!docs/docs/build/**
!docs/i18n/**/build/
!docs/i18n/**/build/**

# HuggingFace datasets cache generada al correr los tests
tests/**/csv/default-*/
tests/**/json/default-*/
tests/**/tests_back_models_*.lock
27 changes: 16 additions & 11 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,26 +11,31 @@ DashAI is a desktop/web graphical toolbox for training, evaluating, and deployin
### Backend

```bash
# Install
pip install -e . -r requirements-dev.txt
pre-commit install
# Install (uv creates .venv, installs the package editable + dev deps)
uv sync # add --extra cpu on machines without NVIDIA GPU
uv run pre-commit install

# Run dev server
python -m DashAI --no-browser --logging-level DEBUG
# Run dev server (if you synced with --extra cpu/cuda, pass the same
# --extra to uv run; a plain uv run re-syncs to the default torch build)
uv run python -m DashAI --no-browser --logging-level DEBUG

# Lint / format
ruff check --fix
ruff format
uv run ruff check --fix
uv run ruff format

# Run all tests
pytest tests/
uv run pytest tests/

# Run a single test file or function
pytest tests/back/api/test_components_api.py -v
pytest tests/back/api/test_components_api.py::test_function_name -v
uv run pytest tests/back/api/test_components_api.py -v
uv run pytest tests/back/api/test_components_api.py::test_function_name -v

# Database migrations (auto-runs on startup, but also manually)
alembic upgrade head
uv run alembic upgrade head

# Add / remove a dependency (updates pyproject.toml + uv.lock)
uv add <package>
uv remove <package>
```

### Frontend
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
"""Add plot_overrides to explainers

Revision ID: 9a1b2c3d4e5f
Revises: f1a2b3c4d5e6
Create Date: 2026-07-14 00:00:00.000000

"""

from typing import Sequence, Union

import sqlalchemy as sa
from alembic import op

revision: str = "9a1b2c3d4e5f"
down_revision: Union[str, None] = "f1a2b3c4d5e6"
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
op.add_column(
"global_explainer", sa.Column("plot_overrides", sa.JSON(), nullable=True)
)
op.add_column(
"local_explainer", sa.Column("plot_overrides", sa.JSON(), nullable=True)
)


def downgrade() -> None:
op.drop_column("local_explainer", "plot_overrides")
op.drop_column("global_explainer", "plot_overrides")
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
"""Add model_name to parameter_history

Revision ID: a7d2c9e4f1b0
Revises: f1a2b3c4d5e6
Create Date: 2026-07-02 00:00:00.000000

"""

from typing import Sequence, Union

import sqlalchemy as sa

from alembic import op

revision: str = "a7d2c9e4f1b0"
down_revision: Union[str, None] = "f1a2b3c4d5e6"
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
with op.batch_alter_table("parameter_history", schema=None) as batch_op:
batch_op.add_column(sa.Column("model_name", sa.String(), nullable=True))


def downgrade() -> None:
with op.batch_alter_table("parameter_history", schema=None) as batch_op:
batch_op.drop_column("model_name")
Loading
Loading