{"id":18888668,"url":"https://github.com/dlr-sc/vesa","last_synced_at":"2025-09-04T09:33:28.264Z","repository":{"id":256926281,"uuid":"846041877","full_name":"DLR-SC/VESA","owner":"DLR-SC","description":"Visualization Enabled Search Application","archived":false,"fork":false,"pushed_at":"2025-03-19T13:24:31.000Z","size":13597,"stargazers_count":3,"open_issues_count":12,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-04T09:45:31.214Z","etag":null,"topics":["analytics","data-repository","data-search","research-data-management","visual","visualisations"],"latest_commit_sha":null,"homepage":"https://vesa.webapps.nfdi4earth.de/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DLR-SC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-22T12:26:44.000Z","updated_at":"2025-04-30T09:57:51.000Z","dependencies_parsed_at":"2024-09-13T23:51:39.294Z","dependency_job_id":"dc248d23-6e24-4b21-9860-eff713d449e0","html_url":"https://github.com/DLR-SC/VESA","commit_stats":null,"previous_names":["dlr-sc/vesa"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/DLR-SC/VESA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLR-SC%2FVESA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLR-SC%2FVESA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLR-SC%2FVESA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLR-SC%2FVESA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DLR-SC","download_url":"https://codeload.github.com/DLR-SC/VESA/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLR-SC%2FVESA/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273583428,"owners_count":25131824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-04T02:00:08.968Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","data-repository","data-search","research-data-management","visual","visualisations"],"created_at":"2024-11-08T07:45:29.066Z","updated_at":"2025-09-04T09:33:27.372Z","avatar_url":"https://github.com/DLR-SC.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VESA\nVisualization Enabled Search Application\nDemo version is available [here](https://vesa.webapps.nfdi4earth.de/)\n\u003cp align=\"center\"\u003e \n  \u003cimg src=\"./assets/Hero.png\" alt=\"Hero image\"\u003e \n\u003c/p\u003e\n\nRepository for the Visualisation Enabled Search Application (VESA). It is a visual exploration and search tool that assists users in navigating through a graph in an intuitive way. Different visualizations help in finding information across different dimensions. For example:\n\n- **Map** → Spatial Context\n- **Line Charts** → Temporal Context\n- **Network Diagrams or Graphs** → Interrelations\n- **Word Cloud** → Thematic Context\n\nThese dimensions provide various contexts, such as dataset locations (Map), measurement data (Temporal Charts), and word clouds to show different thematic contexts of datasets.\n\n## 🛠 Setting Up the Local Development Environment\n\nThis section provides a detailed guide on how to set up the VESA project for local development, including setting up ArangoDB, restoring the database dump, and configuring and running the backend and frontend components.\n\n### 1. Prerequisites\n\nBefore starting, ensure you have the following software installed on your machine:\n\n- [Node.js](https://nodejs.org/) (v14 or above recommended)\n- [npm](https://www.npmjs.com/) (comes with Node.js)\n- [ArangoDB](https://www.arangodb.com/download-major/)\n\n### 2. Setting Up ArangoDB\n\nVESA uses ArangoDB as its database. Follow these steps to set up ArangoDB:\n\n1. **Download and Install ArangoDB**:\n   - Visit the [ArangoDB Download Page](https://www.arangodb.com/download-major/) and download the appropriate version for your operating system.\n   - Follow the installation instructions provided on the website for your OS.\n\n2. **Start the ArangoDB Server**:\n   - After installation, start the ArangoDB server. You can usually start it from the command line or through the service management tools provided by your OS.\n   - By default, ArangoDB will run on `http://127.0.0.1:8529/`.\n\n3. **Access the ArangoDB Web Interface**:\n   - Open a web browser and go to `http://127.0.0.1:8529/` to access the ArangoDB web interface.\n   - Log in using the default credentials (`username: root`, `password: root`). You can change these credentials if necessary.\n\n4. **Restoring the Database Dump**:\n   - In the VESA repository, there is a directory named `DB` containing the file `arango-dump.zip`.\n   - Unzip the `arango-dump.zip` file:\n\n     ```bash\n     unzip DB/arango-dump.zip -d DB/arango-dump/\n     ```\n\n   - Use the ArangoDB `arangorestore` command to restore the database:\n\n     ```bash\n     arangorestore --server.endpoint http+tcp://127.0.0.1:8529 --server.database \u003cdatabase-name\u003e --server.username root --server.password root --input-directory DB/arango-dump/\n     ```\n\n     Replace `\u003cdatabase-name\u003e` with the name you want for your database.\n\n### 3. Setting Up the Backend\n\nThe backend is built using Node.js and connects to the ArangoDB database.\n\n1. **Navigate to the Backend Directory**:\n\n    ```bash\n    cd BACKEND\n    ```\n\n2. **Install Dependencies**:\n\n    ```bash\n    npm install\n    ```\n\n3. **Create the `.env` File**:\n   - The backend requires environment variables to be configured. You can use the `.env.template` file as a starting point.\n   - Copy the `.env.template` file to create a `.env` file:\n\n     ```bash\n     cp .env.template .env\n     ```\n\n   - Open the `.env` file in a text editor and set the values for `ARANGO_URL`, `ARANGO_USER`, and `ARANGO_PASS`:\n\n     ```env\n     ARANGO_URL=http://127.0.0.1:8529/\n     ARANGO_USER=root\n     ARANGO_PASS=root\n     ```\n\n4. **Run the Backend**:\n\n    ```bash\n    npm run dev\n    ```\n\n    This command will start the backend server in development mode. The server will automatically reload if you make any changes to the source files.\n\n### 4. Setting Up the Frontend\n\nThe frontend is built using React.js and communicates with the backend to fetch data and display it through various visualizations.\n\n1. **Navigate to the Frontend Directory**:\n\n    ```bash\n    cd ../FRONTEND\n    ```\n\n2. **Install Dependencies**:\n\n    ```bash\n    npm install\n    ```\n\n3. **Create the `.env` File**:\n   - The frontend also requires some environment variables, particularly the API URL.\n   - Copy the `.env.template` file to create a `.env` file:\n\n     ```bash\n     cp .env.template .env\n     ```\n\n   - Open the `.env` file in a text editor and set the value for `REACT_APP_API_URL`:\n\n     ```env\n     REACT_APP_API_URL=http://127.0.0.1:3001\n     ```\n\n   - Ensure this URL points to where your backend is running.\n\n4. **Run the Frontend**:\n\n    ```bash\n    npm start\n    ```\n\n    This command will start the frontend development server. It will be accessible in your web browser at `http://localhost:3000/` by default.\n\n### 5. Final Steps\n\nNow that both the backend and frontend are running, you can interact with the VESA application by navigating to `http://localhost:3000/` in your web browser.\n\n- **Backend** runs on port `3001` (or the port specified in your `.env` file).\n- **Frontend** runs on port `3000`.\n\nEnsure that both components are communicating correctly by verifying that the frontend is successfully retrieving and displaying data from the backend.\n\n### 6. Troubleshooting\n\nIf you encounter any issues during setup:\n\n- **ArangoDB**: Check the [official documentation](https://www.arangodb.com/docs/stable/) for troubleshooting common problems.\n- **Node.js/NPM**: Ensure you are using the correct versions by running `node -v` and `npm -v`.\n- **Logs**: Check the terminal/console logs for any error messages and refer to the error documentation.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdlr-sc%2Fvesa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdlr-sc%2Fvesa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdlr-sc%2Fvesa/lists"}