You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A dashboard to display survey data in an interactive way.
3
+
A dashboard to display survey data in an interactive way using Panel and Bokeh.
4
4
5
5
## Overview
6
6
7
-
This repository contains a dashboard using Panel and Bokeh, developed to display data from
8
-
HMC surveys in an interactive exploratory way. It is designed such that the code for the interactive
9
-
visualizations might be reused for other projects.
10
-
Example of a deployed version can be found [here](https://dashboard.survey.helmholtz-metadaten.de/survey_dashboard)
7
+
This repository contains an interactive dashboard developed to display data from HMC surveys in an exploratory way. The dashboard is designed to be reusable for other survey visualization projects.
* Navigate to `http://localhost:5006/` in your browser after starting the server.
155
+
This project uses:
156
+
- Black for code formatting
157
+
- Flake8 for linting
158
+
- MyPy for type checking
66
159
67
-
##Deployment
160
+
### Making Changes
68
161
69
-
To embed the dashboard into any website, first you have to host a bokeh server with this application somewhere and then you can embed it with bokehs `sever_document` function [see](https://docs.bokeh.org/en/latest/docs/user_guide/embed.html#app-documents)
162
+
1. Create a feature branch
163
+
2. Make your changes
164
+
3. Test locally with `poetry run survey-dashboard`
165
+
4. Test with Docker if deployment-related
166
+
5. Submit a pull request
70
167
71
-
Do steps under `usage` above, but for a public exposed URL, or what ever is used for deployment.
72
-
The Language verison of the dashboard can be set with the environment variable: 'L
168
+
## Documentation
73
169
170
+
Detailed documentation can be found in the `docs/refactoring/` directory:
171
+
- Architectural overview
172
+
- Module structure
173
+
- Development guide
174
+
- Migration guide
74
175
75
-
Add the code from 'script' to you website:
176
+
## Troubleshooting
76
177
77
-
```python
78
-
from bokeh.embed import server_document
79
-
script = server_document("url_to_running_server")
80
-
script
178
+
### Port Already in Use
179
+
180
+
If port 5006 is already in use:
181
+
```bash
182
+
lsof -ti:5006 | xargs kill -9
81
183
```
82
184
83
-
## Copyright and Licence
185
+
### Docker Issues
186
+
187
+
Check container logs:
188
+
```bash
189
+
docker compose logs -f dashboard
190
+
```
191
+
192
+
Rebuild without cache:
193
+
```bash
194
+
docker compose build --no-cache
195
+
```
196
+
197
+
### Font Loading Issues
198
+
199
+
Clear browser cache (Ctrl+Shift+Del) or test in incognito mode.
200
+
201
+
## Technology Stack
202
+
203
+
### Core Framework
204
+
-**Panel** (1.7.5) - High-level app and dashboarding solution
-**Tornado** (6.5.2) - Async web framework (used by Bokeh)
86
218
87
-
### Main used libraries and dependencies
219
+
### Deployment
220
+
-**Docker** - Containerization
221
+
-**nginx-proxy** - Automatic reverse proxy
222
+
-**acme-companion** - Let's Encrypt automation
88
223
89
-
The following libraries are used directly (i.e. not only transitively) in this project:
224
+
## License
90
225
226
+
See [LICENSE](./LICENSE) for details.
91
227
92
228
## Acknowledgements
93
229
@@ -98,7 +234,41 @@ The following libraries are used directly (i.e. not only transitively) in this p
98
234
</div>
99
235
<br />
100
236
101
-
This project was developed at the Institute for Materials Data Science and Informatics
102
-
(IAS-9) of the Jülich Research Center and funded by the Helmholtz Metadata Collaboration
103
-
(HMC), an incubator-platform of the Helmholtz Association within the framework of the
104
-
Information and Data Science strategic initiative.
237
+
This project was developed at the **Institute for Materials Data Science and Informatics (IAS-9)** of the Forschungszentrum Jülich and funded by the **Helmholtz Metadata Collaboration (HMC)**, an incubator-platform of the Helmholtz Association within the framework of the Information and Data Science strategic initiative.
238
+
239
+
## Citation
240
+
241
+
If you use this dashboard in your research, please cite:
242
+
243
+
```bibtex
244
+
@software{survey_dashboard,
245
+
title = {Survey Dashboard},
246
+
author = {Bröder, Jens and Gerlich, Silke Christine and Hofmann, Volker},
0 commit comments