Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
83d6bd2
Update/remove files for JavaScript-based graph browser
mstimberg Feb 28, 2024
d43fb76
Add initial version of JS-based graph browser
mstimberg Feb 28, 2024
370b873
Minor fixes
mstimberg Feb 28, 2024
d7bb0d6
Include all simulators (but pre-filter)
mstimberg Feb 28, 2024
f7b240b
Introduce short names for some tools
mstimberg Feb 28, 2024
43d42e4
add icons as assets
mstimberg Feb 28, 2024
10d38dc
Trying to make layout re-run after node drag (not quite working)
mstimberg Feb 28, 2024
c2fe2bc
Use newer cytoscape-cola version and try aligning things
mstimberg Feb 28, 2024
bb0c53a
Convert markdown descriptions to HTML
mstimberg Feb 28, 2024
838fed2
Install requirements in GitHub workflow via requirements.txt
mstimberg Feb 28, 2024
ab6b49e
Update JSON from yaml files
mstimberg Feb 28, 2024
faf3185
wip: tinkering with layout
sanjayankur31 Mar 12, 2024
39ceb37
wip: attempt to make left and right side bars scroll
sanjayankur31 Mar 12, 2024
27cdb30
chore(index): add header/footer
sanjayankur31 May 8, 2024
e3d2341
wip: boostrapify
sanjayankur31 May 8, 2024
d27310d
chore: use `nhood` traverser
sanjayankur31 Jun 5, 2024
23432d7
feat: concentric on highlight
sanjayankur31 Jun 5, 2024
f3e1180
Very basic integration of table and graph view
mstimberg Jun 5, 2024
7ab644c
Removed unused function
mstimberg Jun 5, 2024
499ab7f
Merge branch 'feat/graph-ankur' into graph
mstimberg Jun 5, 2024
ca95abf
Select three simulators at random on start
mstimberg Jun 5, 2024
4b4d82d
Minor style tweaks
mstimberg Jun 5, 2024
3904153
Merge branch 'graph' into feat/concentric
sanjayankur31 Jun 19, 2024
90648c1
Added background image svgs
ree-gupta Jul 3, 2024
7cbc937
Modified styling
ree-gupta Jul 3, 2024
4afe5d9
Fixing pre commit errors
ree-gupta Jul 3, 2024
93771ed
Fixing pre commit errors
ree-gupta Jul 3, 2024
ab8dace
Minor layout tweaks
mstimberg Oct 9, 2024
cbd6f18
Merge pull request #67 from OCNS/feat/styling
mstimberg Oct 9, 2024
1e9d9a3
Simplify table view (not actually a table anymore)
mstimberg Oct 23, 2024
2ef257a
first rough version of collapsable side panes
mstimberg Oct 23, 2024
2e27108
Merge branch 'graph' into feat/concentric
sanjayankur31 Nov 5, 2024
f5ddfc8
feat: include toggle filter in navbar
sanjayankur31 Nov 5, 2024
78ed6ec
feat: fix graph container dimensions
sanjayankur31 Nov 5, 2024
16803f7
Merge pull request #66 from OCNS/feat/concentric
sanjayankur31 Nov 6, 2024
97b1ea4
Merge pull request #68 from OCNS/feat/graph-ankur
sanjayankur31 Nov 6, 2024
1afcb06
feat: add selected node to URL
sanjayankur31 Nov 6, 2024
fa3dc82
feat: make details pane constant
sanjayankur31 Dec 4, 2024
ae6819c
feat: use single click for select, double to show info
sanjayankur31 Dec 4, 2024
0ee9b04
feat: also handle `select` events
sanjayankur31 Dec 4, 2024
a417b98
feat: use `container-fluid` to use full screen width
sanjayankur31 Dec 4, 2024
883dcc9
chore: remove remaining offcanvas details pane
sanjayankur31 Dec 4, 2024
8d5cd7a
feat: add default usage message when no nodes are selected
sanjayankur31 Dec 4, 2024
98de969
feat: use `bezier` line style to make edges clearer
sanjayankur31 Dec 4, 2024
5b004cc
Slightly improved layout and filtering behaviour
mstimberg Dec 4, 2024
c6e81c1
Merge branch 'graph' into feat-graph-ankur
mstimberg Dec 4, 2024
96bb942
Merge pull request #70 from OCNS/feat-graph-ankur
mstimberg Dec 4, 2024
67b901b
Minor datafix (Brian2CUDA)
mstimberg Dec 4, 2024
bebf35e
Update JSON from yaml files
mstimberg Dec 4, 2024
16a15cf
manual layout tweaking (needs a better approach)
mstimberg Dec 4, 2024
02ae0c9
feat: Create "meta-node" to avoid unconnected nodes in graph
mstimberg Jan 13, 2025
cb05814
feat: Simplify filtering and add search
mstimberg Jan 14, 2025
4354b86
feat: Make filter slide in from right
mstimberg Jan 15, 2025
6588bf2
feat: verify that yaml file names are correct
mstimberg Jan 22, 2025
5ee18c6
chore: rename yaml files to match their short_name
mstimberg Jan 22, 2025
2221132
feat: Add links to edit tools on GitHub
mstimberg Jan 22, 2025
0808aa5
fix(clicks): double to center, single for details
sanjayankur31 Jan 28, 2025
649934a
feat(clicks): only let dbtlap on background reset things
sanjayankur31 Jan 28, 2025
ac410c6
chore(vim): set shiftwidth to 4 for consistency
sanjayankur31 Jan 28, 2025
db79299
feat: Add navigation via details pane
mstimberg Jan 29, 2025
8347177
Merge pull request #72 from OCNS/feat-fix-clicks
mstimberg Jan 29, 2025
e72c0b9
chore: yaml files should be dicts not lists
mstimberg Feb 19, 2025
b56bb8d
fix: biological_level is only for simulators
mstimberg Feb 19, 2025
b5238ec
chore: update README and validation script
mstimberg Feb 19, 2025
a995ad7
chore: update JSON generation script
mstimberg Feb 19, 2025
532833c
chore: update parsing script for new format
mstimberg Feb 19, 2025
2d96c7b
Merge pull request #73 from OCNS/yaml_simplification
sanjayankur31 Feb 26, 2025
a313864
feat: restore graph to initial state
sanjayankur31 Jan 29, 2025
5a28d49
feat: remember if user manually drags nodes
sanjayankur31 Feb 26, 2025
4f4fb23
Merge pull request #74 from OCNS/feat-graph-concentric-restore
mstimberg Feb 26, 2025
90ec2d3
test: verify urls as part of CI
mstimberg Feb 26, 2025
2a12da6
chore: remove unused/outdated simtools.yaml file
mstimberg Feb 26, 2025
7c7be67
fix(data): Update broken links
mstimberg Feb 26, 2025
6f197ac
Update JSON from yaml files
mstimberg Feb 26, 2025
76ac57e
fix(data): Use http for doc.netpyne.org
mstimberg Feb 26, 2025
2141787
Update JSON from yaml files
mstimberg Feb 26, 2025
f9b8b5a
feat: Always show all link buttons
mstimberg Feb 19, 2025
d4aba77
feat: Details pane: show links on bottom and use max height for top
mstimberg Feb 27, 2025
b86ea4d
feat: Details pane: display relations in both directions and make the…
mstimberg Feb 27, 2025
904563a
Merge pull request #76 from OCNS/url_check
sanjayankur31 Feb 27, 2025
7a0f575
Merge pull request #77 from OCNS/detail_view_improvements
mstimberg Feb 27, 2025
29471ea
feat: Details pane: make title stick to the top
mstimberg Feb 27, 2025
b4f8c11
feat: Details pane: use different colors for button categories
mstimberg Feb 27, 2025
748c994
fix: Details pane: bring back "Back to simulators" and "Edit this des…
mstimberg Feb 27, 2025
1b9499d
feat: Detail pane: zoom in/out via button next to title
mstimberg Feb 27, 2025
791b28e
fix: Fix errors after clicking edges
mstimberg Mar 11, 2025
db47422
feat: set apart top and bottom with background color
mstimberg Mar 11, 2025
ac10825
feat: replace background by more subtle border
mstimberg Mar 12, 2025
803db6b
Merge pull request #78 from OCNS/more_details_view_improvements
sanjayankur31 Mar 12, 2025
98dea8d
feat: return edges to curves when resetting
sanjayankur31 Mar 12, 2025
1916fbf
feat: no op when edges are clicked
sanjayankur31 Mar 12, 2025
6fc8aa2
feat: make edges not clickable
sanjayankur31 Mar 12, 2025
02f7673
fix: do not show edge labels after going back to initial view
mstimberg Mar 12, 2025
55ad2d1
feat: configure zoom levels and wheel sensitivity
mstimberg Mar 12, 2025
75fe7df
Merge pull request #79 from OCNS:feat-tweaks
mstimberg Mar 12, 2025
00355eb
feat: Switch to fCose layout
mstimberg Mar 14, 2025
c14e375
feat: ship the layout js files instead of relying on a CDN
mstimberg Mar 14, 2025
74ce540
Merge pull request #81 from OCNS/layout_change
mstimberg Mar 14, 2025
ee2a33c
fix: disable remoto URLs (not reachable ATM)
mstimberg Mar 26, 2025
858239b
Update JSON from yaml files
mstimberg Mar 26, 2025
5c2ee94
fix: Remove `urls` entry for ReMoto
mstimberg Mar 26, 2025
a36ff91
Update JSON from yaml files
mstimberg Mar 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 0 additions & 26 deletions .github/workflows/deploy.yml

This file was deleted.

7 changes: 7 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,10 @@ jobs:
run: python tests/validate_data.py
- name: Parsing YAML files (checking for correct relations)
run: python src/data.py
- name: Verify URLs
uses: urlstechie/urlchecker-action@0.0.34
with:
subfolder: simtools
file_types: .yaml
retry_count: 3
force_pass: false
4 changes: 2 additions & 2 deletions .github/workflows/update_json.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: install yaml
run: python -m pip install pyyaml
- name: install dependencies
run: python -m pip install -r requirements.txt
- name: update json file
run: python yaml2json.py
- name: commit if necessary
Expand Down
5 changes: 0 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,3 @@ Now, the pre-commit checks will be run before each commit.

Data on each tool is included in individual files in the `simselect` directory.
To make changes, please fork the repository, make any necessary changes, and open pull requests for community review.

### Deployment
The web app is hosted on [fly.io](https://fly.io/). It gets deployed automatically
via a [GitHub Action](.github/workflows/deploy.yml). When a pull request is merged into ``main``, it will be deployed
to https://simselect-dev.fly.dev. A tagged release will be deployed to https://simselect.fly.dev.
21 changes: 21 additions & 0 deletions LICENSE.MIT
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2018 - present, iVis@Bilkent.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
2 changes: 0 additions & 2 deletions Procfile

This file was deleted.

31 changes: 19 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,30 @@ simulator. See OCNS/SoftwareWG#117 For more details, and announcements of the re
meetings.

## Development notes
A fresh virtual environment is suggested for development:
The website is built with ["vanilla JS"](http://vanilla-js.com/) and uses the [cytoscape.js](https://js.cytoscape.org/)
library for graph visualisation. The full code runs in the browser, but in order to make it able to access the data, it
needs to run in a local webserver. You can either use such a webserver as provided by your IDE (e.g. the
[Live Server extension](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer)) for VS Code,
or use Python's built-in webserver:
```
python -m http.server
```

Python is also used to pre-process and validate the data when simulator descriptions are changed in one of the YAML files.

If you want to work on that part, we suggest a virtual environment for development:
```
python -m venv .venv
source .venv/bin/activate
```
One can also use `conda` and other tools to set up virtual environments.

This project is an app built using [Holoviz Panel](https://panel.holoviz.org/).
You can install it using
To install the dependencies, you can use:
```
python -m pip install -r requirements.txt
```
To run the app, use:
```
panel serve --show src/project_browser.py --static-dirs assets=./assets
```
This will open a browser window with the app.
Firefox/Chrome based browsers are supported.
Please file an issue if the app does not work with your browser.



### Contribution notes
Please install the necessary linters/pre-commit hooks using the `requirements-dev.txt` file:
Expand All @@ -47,9 +52,11 @@ pre-commit install
Now, the pre-commit checks will be run before each commit.

## Deployment
The web app is hosted on [fly.io](https://fly.io/). See https://simselect.fly.dev/ for the latest released (tagged) version, and
https://simselect-dev.fly.dev for the latest version directly built from the ``main`` branch.
The website is hosted on https://ocns.github.io/simselect

## Dependencies
The layout is using the fCoSE algorithm by the [i-Vis Research Lab at Bilkent University](http://www.cs.bilkent.edu.tr/~ivis/).
The files in the `assets/js` directory are minified versions of the original files, licensed under the [MIT license](LICENSE.MIT).

## Contributors

Expand Down
69 changes: 69 additions & 0 deletions assets/api-circle.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions assets/book.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
63 changes: 0 additions & 63 deletions assets/buttons.css

This file was deleted.

1 change: 1 addition & 0 deletions assets/check-circle.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
67 changes: 67 additions & 0 deletions assets/code-circle.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions assets/code.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading