excentis /
ByteBlower_dashboard
A small yet powerful web-based dashboard showing live graphs of each ByteBlower interface in our lab
Loading repository data…
AmadeusITGroup / repository
A web-based dashboard built on graphs and their metadata.
GraphDash is a web-based dashboard built on graphs and their
metadata. For example, if you have two graphs in a directory:
.. code:: bash
$ cd default_graph_dir
$ ls
graph.svg graph2.svg
Then you can create two metadata files using YAML format, where you can configure how the graphs will be displayed:
.. code:: bash
$ cat graph.yaml
name: graph.svg
family: 'Category 1'
title: '*Real serious* graph'
text: |
The description
$ cat graph2.yaml
name: graph2.svg
family: 'Category 2'
title: 'Another important graph'
You may then start the graph dashboard. You will get a nice web interface displaying your graphs, and a search box with autocompletion. You can easily navigate and share your graphs.
.. code:: bash
$ GraphDash --root .
* Running on http://0.0.0.0:5555/ (Press CTRL+C to quit)
.. figure:: https://raw.githubusercontent.com/AmadeusITGroup/GraphDash/master/docs/example.gif :alt:
Clone and install (in user space):
.. code:: bash
git clone https://github.com/AmadeusITGroup/graphdash.git
cd graphdash
pip install --user .
Or use the Python package:
.. code:: bash
pip install --user graphdash
For user-space installation, make sure your $PATH includes
~/.local/bin.
.. code:: bash
$ GraphDash -r default_graph_dir
* Running on http://0.0.0.0:5555/ (Press CTRL+C to quit)
The dashboard can be configured with a YAML config file and the
-c/--conf option:
.. code:: bash
$ cat docs/graphdash.yaml
root: ../default_graph_dir
title: "Example of title ;)"
subtitle: "Example of subtitle"
$ GraphDash -c docs/graphdash.yaml
* Running on http://0.0.0.0:5555/ (Press CTRL+C to quit)
You can generate a template of configuration file:
.. code:: bash
$ GraphDash -C template.yaml
If not already installed on your machine, install Gunicorn:
.. code:: bash
pip install --user gunicorn setproctitle # on Fedora you may need to install libffi-devel before
Since you can import the webapp through graphdash:app, you can serve
it with Gunicorn:
.. code:: bash
gunicorn -b 0.0.0.0:8888 --pid server.pid graphdash:app
The configuration file of the webapp can be set with the CONF
environment variable. With Gunicorn, you can pass environment
variables to the workers with --env:
.. code:: bash
gunicorn -b 0.0.0.0:8888 --pid server.pid --env CONF=docs/graphdash.yaml graphdash:app
But you should not use these commands yourself, that is what
GraphDashManage is for!
GraphDashManage is used to start, stop, restart the
instances of Gunicorn serving graphdash:app. It needs a
configuration file in the current directory:
.. code:: bash
$ cat settings.sh
ALL_MODES=(
['prod']="docs/graphdash.yaml"
['test']="docs/graphdash.yaml"
)
ALL_PORTS=(
['prod']=1234
['test']=5678
)
WORKERS=3
Then you can manage multiple instances of GraphDash using
Gunicorn with:
.. code:: bash
$ GraphDashManage start prod
[INFO] Listening at: http://0.0.0.0:1234
[INFO] Booting worker with pid: 30403
[INFO] Booting worker with pid: 30404
[INFO] Booting worker with pid: 30405
$ GraphDashManage start test
[INFO] Listening at: http://0.0.0.0:5678
...
You can generate a template of settings:
.. code:: bash
$ GraphDashManage template > template.sh # to be moved to settings.sh
Possible entries (everything is optional):
root: the root directory of the graphsfamilies: path to the families metadata file (optional)title: the title of the webappsubtitle: the subtitle of the webappplaceholder: the default text in the search fieldheader: an optional message at the top (markdown syntax)footer: an optional message at the bottom (markdown syntax)showfamilynumbers: a boolean to toggle family numbering (default
is true)showgraphnumbers: a boolean to toggle graph numbering (default is
true)theme: change css theme (default is dark)keep: the proportion of common words kept for autocompletionlogfile: change default log file of the webappraw: when loading, look for all graphs and ignore metadataverbose: a boolean indicating verbosity when loading applicationdebug: debug mode (enable Grunt livereload, enable Flask debug
mode)headless: headless mode (only search is available, no page is
rendered)port: when launched with Flask development server only, portSeveral attributes are supported:
name: the path to the graphtitle: title of the graph, recommended for display purposes
(markdown syntax)family: the subsection in which the graph isindex: an optional list of keywords describing the graph (useful
for search feature)text: an optional description of the graph (markdown syntax)pretext: an optional message appearing before the graph (markdown
syntax)file: optional path to the raw dataexport: optional path to the exportable graph (for example, a PNG
file)rank: integer, optional value used to change graphs order
(default uses titles)showtitle: a boolean to toggle title display for the graph
(default is false)labels: a list of labels (like 'new') which will be rendered
in the UI as colored circlesother: other metadata not used by GraphDash, but may be
needed by other things reading the metadataNote that if the name attribute is missing, the graph will not be
shown and the text will be displayed anyway, like a blog entry.
You may put a .FAMILIES.yaml file at the root of the graph
directory. This file may contain metadata for families. It should be a
YAML list:
.. code:: yaml
- family: chairs
rank : 0
- family: tables
rank : 1
text: This is a description
alias: This text will appear instead of "tables"
labels: new
Each element of the list should be a dict containing:
family: the family consideredrank: integer, optional value used to change families order
(default uses family name)text: an optional description of the family (markdown syntax)alias: an optional name who may be longer than the one in the url
(useful to build nice urls)labels: a list of labels (like new) which will be rendered in
the UI as colored circlesAvailable labels are new, update, bugfix, warning,
error, ongoing, obsolete. You may give other labels which
will be rendered with defaults colors. For customization, you may
specify your own labels with a dict syntax:
.. code:: yaml
labels:
- name: newlabel
color: white
text_color: black
text: "NEW LABEL"
tooltip: null
If you wish to contribute, you need Grunt to generate new css/js
files from sass/coffee source files.
.. code:: bash
npm install --no-bin-links # may need to repeat
grunt
Debugging can be made with source map files for browser supporting them
in their debugging tools. If not, the Gruntfile.js enables an option
to generate non-minified assets.
.. code:: bash
grunt --dev
With the debug mode enabled, Grunt will use the livereload mechanism
to reload the browser if any file has changed (and Flask debug mode will
reload the server as well).
.. code:: bash
GraphDash --debug & # or python -m graphdash
grunt watch
If you used Gunicorn with a PID file, Grunt will automatically
reload it if any Python files change.
.. code:: bash
gunicorn -b 0.0.0.0:8888 --pid server.pid graphdash:app &
grunt watch
You can use tox build packages and run tests.
.. code:: bash
tox
Selected from shared topics, language and repository description—not editorial ratings.
excentis /
A small yet powerful web-based dashboard showing live graphs of each ByteBlower interface in our lab
JPaek2000 /
A web-based personal finance dashboard that tracks income, expenses, and savings goals, featuring expense categorization, interactive graphs, and budget recommendations.
BhumikaBhakte /
A web based interactive financial graph. Get Stock Market data of Google via Python, analyse the data using Python Pandas and visualise using Bokeh Library. Embed Bokeh Charts in a Flask Webpage and deploy the chart website to a live server.
meetk5 /
Website Title: Restaurant Finder NYC Tagline for the website: Your healthy neighborhood restaurant finder Brief description of the project: To create a web-based site that will provide information about all the restaurants in NYC (location and cuisine served) and the violations associated with it based on recent inspection result (2020 – 2021) from New York City Department of Health and Mental Hygiene List of Data sources: DOHMH New York City Restaurant Inspection Results Dataset - (https://dev.socrata.com/foundry/data.cityofnewyork.us/43nn-pn8j) Technologies: Python Jupyter Notebook, Pandas JavaScript Libraries (Leaflet, Mapbox, Plotly, D3) HTML/ CSS (Bootstrap) SQL/ Postgres DB APIs Quick DBD Excel Steps: GitHub repo creation Cleanup of dataset (remove duplicates, blank rows, extra columns etc.) (using CSV, Jupyter notebook, Python) ERD (optional) Creating and updating SQL database (Python SQL integration) Creating app routes to call our data from the SQL database and rendering Flask app (Python and JavaScript) Creating 3 HTML pages with Navbar using Bootstrap CSS oIndex page/homepage will contain restaurant info on NYC map (visualization 1) with their phone number and cuisine description displayed on popup. oThe second page will contain a graph describing number of restaurants per cuisines (visualization 2) oThe third page will contain info on violations and will flag restaurants that have many violations (visualization 3) Use JavaScript libraries to create all the three visualizations and interactive dashboard Presentation Readme Team Members: Jay Dhruv Meet K Kaur Sahni Kate Yayla Brian Johnson Saleha Ahmed Dennis Smith
YassirErrami /
Developed a web-based dashboard that visualizes real-time asteroid data from NASA’s Near-Earth Object Web Service API. Built with Python, Pandas, and Streamlit, the app allows users to explore, filter, and analyze asteroids by date, size, distance, and velocity, providing interactive graphs and summary statistics for planetary defense awareness.
parth-9876 /
Built a C++17 exchange simulator with microsecond-precision order matching, segment tree range queries, and graph-based market analysis. Designed a REST API layer in Python and a responsive web dashboard for real-time order management and analytics visualization.