conceptmappr
ConceptMappR is a Shiny dashboard designed to help students and teachers draw, analyze, and compare concept maps.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.2%) to scientific vocabulary
Repository
ConceptMappR is a Shiny dashboard designed to help students and teachers draw, analyze, and compare concept maps.
Basic Info
- Host: GitHub
- Owner: brunoruetsche
- License: gpl-3.0
- Language: R
- Default Branch: main
- Homepage: https://doi.org/10.5281/zenodo.14938858
- Size: 11.3 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 3
Metadata Files
README.md
ConceptMappR
Project Description
ConceptMappR is a Shiny dashboard designed to help students and teachers draw, analyze, and compare concept maps. Currently, a running version of ConceptMappR is hosted at: https://conceptmappr.vlab.ethz.ch/. The development of ConceptMappR was funded by Innovedum to advance education at ETH Zurich.
Project Team: Christian Thurn (ETH Zurich), Simona Daguati (ETH Zurich), Bruno Ruetsche (PH Schwyz)
Development: Bruno Ruetsche (PH Schwyz)
Project Duration: 01.05.2023 - 31.05.2024
Maintenance and Development Notice: This project has reached the end of its funded development period. While the repository remains available for public use, active maintenance and further development cannot be guaranteed. We encourage users to fork the project for their own modifications and enhancements as needed. Contributions, issue reports, and discussions are still welcome, though they may not receive immediate attention.
Features
General
- Draw and edit concept maps with customizable nodes and edges
- Analyze concept maps using network analysis techniques
- Generate interactive plots and tables for deeper exploration
- Export visualizations and analysis results in various formats
- Support for multiple file formats for both import and export
Drawing
- Add, reorder and delete nodes
- Draw edges and add explanations
- Customize node layout, color and size
- Modify edge color and thickness
Analysis
- Explore central nodes and edges
- Compare learner and expert maps to investigate differences
- Aggregate multiple concept maps to generate average or meta maps
Import / export
- Import concept maps from various file formats (e.g., .csv, .tsv, .txt, .xlsx, .cxl)
- Export network structures in formats like .cxl and .xlsx
- Export images of the concept maps in .png and .svg formats
- Export analysis results in .xlsx format
Installation
Note: These installation instructions have been tested on a Mac computer with Apple silicon. Users on other devices, operating systems, or architectures (e.g., Intel-based Macs, Windows, Linux) may need to make slight adjustments to the installation process, such as different Docker settings, platform compatibility tweaks, or different dependencies.
Getting the App
To get the app, you can:
- Use a CLI:
bash
# Run this in a system or Docker CLI
git clone https://github.com/brunoruetsche/ConceptMappR.git
- Download as a ZIP file: Download the app as a ZIP file and extract it to your desired directory.
Option 1: Manual
Install R and RStudio: Ensure that you have R and RStudio installed on your machine. You can download them from CRAN and RStudio.
Install Required Packages: Open RStudio and run the following commands to install the necessary packages:
```r
Run this in the R console
install.packages(c("shiny", "shinydashboard", "shinyWidgets", "shinyBS", "shinyjs", "readr", "readxl", "xml2", "writexl", "rjson", "stringr", "stringdist", "dplyr", "tidyr", "tibble", "igraph", "visNetwork", "DiagrammeR", "DiagrammeRsvg", "rsvg", "reactable", "htmltools", "tippy", "conflicted")) ```
Run the App: Open a R console and run the app:
```r
Run this in the R console
library(shiny) runApp("path/to/app") ```
Replace
"path/to/app"with the actual path where the app files are located.
Option 2: Docker
If you prefer to run ConceptMappR using Docker, follow these steps:
Install Docker: Ensure that Docker is installed on your system. You can download Docker from Docker's official website.
Create a Dockerfile: In the root directory of the project, create a file named
Dockerfilewith the following content:```dockerfile
Use the latest rocker/shiny image
FROM rocker/shiny:latest
Install system dependencies
RUN apt-get update && apt-get install -y \ libglpk40 \ librsvg2-2
Install required R packages
RUN install2.r --error --skipinstalled \ shiny \ shinydashboard \ shinyWidgets \ shinyBS \ shinyjs \ readr \ readxl \ xml2 \ writexl \ rjson \ stringr \ stringdist \ dplyr \ tidyr \ tibble \ igraph \ visNetwork \ DiagrammeR \ DiagrammeRsvg \ rsvg \ reactable \ htmltools \ tippy \ conflicted
Remove existing files and directories in /srv/shiny-server
RUN rm -rf /srv/shiny-server/*
Copy the app code directly into the shiny-server directory
COPY . /srv/shiny-server/
Change ownership of the 'tmp' directory to the 'shiny' user
RUN chown -R shiny:shiny /srv/shiny-server/tmp
Change permissions of the 'tmp' directory
RUN chmod -R 700 /srv/shiny-server/tmp
Use shiny user
USER shiny
Expose the port the app runs on
EXPOSE 3838
Run the Shiny app
CMD ["/usr/bin/shiny-server"] ```
Build: Build the Docker image using the following command:
```bash
Run this in a system or Docker CLI
Specifying platform for compatibility with Apple silicon
docker build --platform linux/amd64 -t conceptmappr . ```
Run: Once the image is built, run the app in a Docker container:
```bash
Run this in a system or Docker CLI
Specifying platform for compatibility with Apple silicon
docker run --platform linux/amd64 -p 3838:3838 conceptmappr ```
Access the app: Open a web browser and navigate to
http://localhost:3838/to access the app.
Option 3: Docker Compose
To quickly set up and run the Shiny app using Docker Compose, follow these steps:
Create a Dockerfile: Save the Dockerfile from Option 2 in the root directory of your project, as it will be used to build the Docker image.
Create a
docker-compose.ymlfile: In the root directory of the project, create a file nameddocker-compose.ymlwith the following content:yaml services: shiny: container_name: conceptmappr image: rocker/shiny:latest platform: "linux/amd64" # Platform specification for Apple silicon build: context: . dockerfile: Dockerfile restart: unless-stopped ports: - '3838:3838' volumes: - './logs:/var/log/shiny-server'Build: Build the services using Docker Compose.
```bash
Run this in a system or Docker CLI
docker compose build ```
Run: Build and start the services using the following command:
```bash
Run this in a system or Docker CLI
docker compose up -d ```
Access the app: Open a web browser and navigate to
http://localhost:3838/to access the app.
License
This project is licensed under the terms of the GNU General Public License v3.0. See the LICENSE file for details.
References
Daguati, S., Rütsche, B., & Thurn, C. M. (2024). Describing Conceptual Knowledge in Concept Maps by Network Analysis. 13th International Conference on Conceptual Change, Munich, Germany. http://hdl.handle.net/20.500.11850/711121
Thurn, C. M., Daguati, S., & Rütsche, B. (2024). ConceptMappR: Ein digitales Tool zum Erstellen und zur Analyse von Concept Maps. 6. Tagung Fachdidaktiken, Kreuzlingen, Switzerland. http://hdl.handle.net/20.500.11850/711127
Owner
- Name: Bruno Rütsche
- Login: brunoruetsche
- Kind: user
- Repositories: 1
- Profile: https://github.com/brunoruetsche
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Rütsche" given-names: "Bruno" orcid: "https://orcid.org/0000-0002-5432-2721" - family-names: "Daguati" given-names: "Simona" orcid: "https://orcid.org/0009-0001-4706-2909" - family-names: "Thurn" given-names: "Christian Maximilian" orcid: "https://orcid.org/0000-0002-5942-3273" title: "ConceptMappR" version: v1.0.2 doi: 10.5281/zenodo.14938858 date-released: 2025-07-31 url: "https://github.com/brunoruetsche/ConceptMappR"
GitHub Events
Total
- Release event: 3
- Delete event: 2
- Push event: 3
- Fork event: 1
- Create event: 5
Last Year
- Release event: 3
- Delete event: 2
- Push event: 3
- Fork event: 1
- Create event: 5