All Projects → visualize-admin → visualization-tool

visualize-admin / visualization-tool

Licence: BSD-3-Clause license
The tool for visualizing Swiss Open Government Data. Project ownership: Federal Office for the Environment FOEN

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
r
7636 projects
CSS
56736 projects
Dockerfile
14818 projects
HTML
75241 projects

Projects that are alternatives of or similar to visualization-tool

linkedresearch.org
🌐 linkedresearch.org
Stars: ✭ 32 (+60%)
Mutual labels:  linked-data, open-data
CSV2RDF
Streaming, transforming, SPARQL-based CSV to RDF converter. Apache license.
Stars: ✭ 48 (+140%)
Mutual labels:  linked-data, open-data
YALC
🕸 YALC: Yet Another LOD Cloud (registry of Linked Open Datasets).
Stars: ✭ 14 (-30%)
Mutual labels:  linked-data, open-data
us-house
117th United States House of Representatives - Contact Information, including: Phone Number, Mailing Address, Official Website, Twitter & Facebook Accounts.
Stars: ✭ 31 (+55%)
Mutual labels:  open-government, open-data
publicbodies
A database of public bodies such as government departments, ministries etc.
Stars: ✭ 56 (+180%)
Mutual labels:  open-government, open-data
LDWizard
A generic framework for simplifying the creation of linked data.
Stars: ✭ 17 (-15%)
Mutual labels:  linked-data, open-data
link-redux
Linked Data Rendering for humans with React
Stars: ✭ 28 (+40%)
Mutual labels:  linked-data, open-data
data.gouv.fr
Ce dépôt rassemble les tickets techniques qui portent sur data.gouv.fr.
Stars: ✭ 50 (+150%)
Mutual labels:  open-government, open-data
CASS
Competency and Skills System
Stars: ✭ 42 (+110%)
Mutual labels:  linked-data, open-data
open-bus
🚌 Analysing Israel's public transport data
Stars: ✭ 65 (+225%)
Mutual labels:  open-data
opendata
Open data of Cofacts collaborative fact-checking database
Stars: ✭ 35 (+75%)
Mutual labels:  open-data
pyLDAPI
A very small module to add Linked Data API functionality to a Python Flask installation
Stars: ✭ 28 (+40%)
Mutual labels:  linked-data
Open-Data-Portaal
GitHub van het officiële Open Data Portaal van de Tweede Kamer der Staten-Generaal.
Stars: ✭ 39 (+95%)
Mutual labels:  open-data
titanium-json-ld
A JSON-LD 1.1 Processor & API
Stars: ✭ 79 (+295%)
Mutual labels:  linked-data
restatapi
An R package to search and retrieve data from Eurostat database using SDMX
Stars: ✭ 14 (-30%)
Mutual labels:  open-data
congresso em chamas
Congresso em chamas é uma aplicação web que entrega ferramentas para o acompanhamento do trabalho dos deputados federais atualmente em mandato.
Stars: ✭ 20 (+0%)
Mutual labels:  open-data
transitland-atlas
an open directory of mobility feeds and operators — powers both Transitland v1 and v2
Stars: ✭ 55 (+175%)
Mutual labels:  open-data
osmand map creation
OSM data + open address data compiled for use in OSMAnd
Stars: ✭ 22 (+10%)
Mutual labels:  open-data
odufrn-downloader
Pacote para baixar os dados do portal de dados abertos da UFRN
Stars: ✭ 31 (+55%)
Mutual labels:  open-data
rdfa-streaming-parser.js
A fast and lightweight streaming RDFa parser for JavaScript
Stars: ✭ 15 (-25%)
Mutual labels:  linked-data

Visualization Tool

Development Environment

To start the development environment, you need a Docker runtime, e.g. Docker Desktop and Nix.

Setting up the dev environment

  1. Make sure that Docker is running
  2. Start the Postgres database with docker-compose up
  3. Run the setup script:
yarn setup:dev

Dev server

Once the application's set up, you can start the development server with

yarn dev

👉 In Visual Studio Code, you also can run the default build task (CMD-SHIFT-B) to start the dev server, database server, and TypeScript checker (you'll need Nix for that to work).

Postgres database

If the database server is not running, run:

docker-compose up

Building the Embed script /dist/embed.js

Currently, the embed script is not automatically built when the dev server starts.

Run the following command when you're changing the source file in embed/index.ts.

yarn dev:rollup

Currently, this only bundles and initializes iframe-resizer but could be used to render charts without iframes (using custom elements or render to a generic DOM element) in the future.

Database migrations

Database migrations are run automatically when the production app starts. In development, you'll have to run them manually:

yarn db:migrate:dev

Migrations are located in db-migrations/. Write SQL or JS migrations and follow the naming convention of the existing files XXXXX-name-of-migration.{sql|js}. Migrations are immutable, you will get an error if you change an already-run migration.

For detailed instructions, please refer to the postgres-migrations documentation.

Versioning

New versions of package.json are built on GitLab CI into a separate image that will be deployed to the integration env.

yarn version

This will prompt for a new version. The postversion script will automatically try to push the created version tag to the origin repo.

Deployment

Heroku

If a Heroku app is set up (as Git remote heroku), deploy with

git push heroku main -f

Build instructions are defined in heroku.yml.

For details, see https://devcenter.heroku.com/articles/build-docker-images-heroku-yml

Abraxas

With your Abraxas credentials ...

  1. Log in to https://uvek.abx-ras.ch/
  2. This will prompt to open the F5 VPN client (you can download the client software once logged in). The VPN connection will be opened automatically.
  3. Use Microsoft Remote Desktop to log in to the Abraxas Jump Server:
    • Remote address: 192.168.99.9
    • User: cmb\<YOUR_USER_NAME>
  4. Once logged in, you should find yourself on a Windows desktop.
  5. Using PuTTY (a terminal app on the desktop), connect to cmbs0404.cmb.lan via SSH. Again, use the same credentials.
  6. Congrats, you are on the Abraxas dev server!

Useful commands to use:

  • cd /appl/run -> go to the directory containing the docker-compose.yml
  • sudo /usr/local/bin/docker-compose logs web -> display logs of the web service
  • sudo /usr/local/bin/docker-compose up -d -> Rebuild services and restart after a configuration change
  • sudo /usr/local/bin/docker-compose pull web -> Pull latest web image manually (should not be needed much)
  • etc. (remember to use sudo for all Docker commands)

Docker (anywhere)

To pull the latest image from the GitLab registry, run:

docker login registry.ldbar.ch -u <username> -p <deploy_token>

# Pull/Run manually
docker pull registry.ldbar.ch/interactivethings/visualization-tool:main
docker run -it registry.ldbar.ch/interactivethings/visualization-tool:main

Or use docker-compose. Simplified example docker-compose.yml:

version: "3"
services:
  web:
    image: "registry.ldbar.ch/interactivethings/visualization-tool:main"
    ports:
      - "80:3000"
    restart: always
    env: DATABASE_URL=postgres://postgres@db:5432/visualization_tool
  db:
    image: "postgres:11"
    ports:
      - "5432:5432"

E2E tests

Cypress is run on every PR. Screenshots are made and compared with screenshots that are saved in the repository. If a difference is detected, the tests will fail.

A special test page shows all the charts that are screenshotted by Cypress. Those charts configurations are kept in the repository.

At the moment, the screenshots are made from charts using data from int.lindas.admin.ch as for some functionalities, we do not yet have production data.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].