{"id":27976451,"url":"https://github.com/misp/skillaegis-dashboard","last_synced_at":"2025-09-15T02:05:08.077Z","repository":{"id":253117321,"uuid":"833609862","full_name":"MISP/SkillAegis-Dashboard","owner":"MISP","description":"SkillAegis-Dashboard is a platform to run a training session and visualize the progress of participants in real-time. Part of SkillAegis.","archived":false,"fork":false,"pushed_at":"2025-08-21T09:22:46.000Z","size":17783,"stargazers_count":3,"open_issues_count":1,"forks_count":2,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-08-21T10:45:06.077Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MISP.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,"zenodo":null}},"created_at":"2024-07-25T11:50:08.000Z","updated_at":"2025-05-13T13:54:16.000Z","dependencies_parsed_at":"2025-08-21T10:32:46.826Z","dependency_job_id":null,"html_url":"https://github.com/MISP/SkillAegis-Dashboard","commit_stats":null,"previous_names":["misp/skillaegis-dashboard"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/MISP/SkillAegis-Dashboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISP%2FSkillAegis-Dashboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISP%2FSkillAegis-Dashboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISP%2FSkillAegis-Dashboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISP%2FSkillAegis-Dashboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MISP","download_url":"https://codeload.github.com/MISP/SkillAegis-Dashboard/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MISP%2FSkillAegis-Dashboard/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275194018,"owners_count":25421441,"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-15T02:00:09.272Z","response_time":75,"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":[],"created_at":"2025-05-08T01:26:54.602Z","updated_at":"2025-09-15T02:05:08.008Z","avatar_url":"https://github.com/MISP.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SkillAegis-Dashboard\n\u003cimg alt=\"SkillAegis Logo\" align=\"right\" src=\"src/assets/skillaegis-logo.svg\"/\u003e \n\n**SkillAegis-Dashboard** is a platform to run a training session and visualize the progress of participants in real-time.\n\nThe Dashboard allows you to deploy and run scenarios under the [Common Exercise Format (CEXF)](https://misp.github.io/cexf/) that can are designed by other application such as **[SkillAegis Editor](https://github.com/MISP/SkillAegis-Editor)**.\n\n\u003e [!NOTE]  \n\u003e Consider running this application with **[SkillAegis](https://github.com/MISP/SkillAegis)** for Production.\n\n![SkillAegis Dashboard Active Exercises](./docs/SkillAegis-Dashboard-recording.gif)\n*Short demo of SkillAegis-Dashboard: Once the application starts, the user selects an exercise. From that point, the application tracks the real-time progression of each players.*\n\n![SkillAegis Dashboard Active Exercises](./docs/SkillAegis-Dashboard_main.png)\n*On the dashboard main page, you can monitor the progress of all participants for the selected exercise and view real-time logs of their activity feed.*\n\n![SkillAegis Dashboard Fullscreen](./docs/SkillAegis-Dashboard_fullscreen.png)\n*The fullscreen view provides an overview of the status of all users in a single, easily accessible display.*\n\n\n## Installation\n\nTo get started with SkillAegis-Editor, follow these steps:\n\n0. Ensure Python **3.10** or higher is installed.\n    ```bash\n    python -V\n    ```\n1. Install dependencies\n   ```bash\n   python3 -m venv venv\n   source venv/bin/activate\n   pip3 install -r requirements.txt\n   ```\n2. Clone the configuration file\n    ```bash\n    cp config.py.sample config.py\n    ```\n    - [optional] Update the configuration\n3. Start the application\n   ```bash\n   # Usage: ./start.sh --exercise_folder \u003cfolder\u003e [--host \u003chost\u003e] [--port \u003cport\u003e]\n   ./start.sh --exercise_folder scenarios/\n   ```\n\n## Development\n\n### Back-end\n```bash\nsource venv/bin/activate\nfastapi dev main.py\n```\n\n### Front-end\n\n#### Project Setup\n\n```sh\nnpm install\n```\n\n#### Compile and Hot-Reload for Development\n\n```sh\nnpm run dev\n```\n\n#### Compile and Minify for Production\n\n```sh\nnpm run build\n```\n\n#### Lint with [ESLint](https://eslint.org/)\n\n```sh\nnpm run lint\n```\n\n\n## Installation\n```bash\n# Setup venv\npython3 -m venv venv\nsource venv/bin/activate\n\n# Install deps\npip3 install -r REQUIREMENTS\n\n# Create config file and adapt it to your needs\ncp config.py.sample config.py\n```\n\n## Running the PROD setup\n```bash\npython3 server.py\n# Access the page http://localhost:4000 with your browser\n```\n\n\n## Running the DEV setup\n```bash\npython3 server.py\n```\n```bash\nnpm run dev\n# Access the page provided by the output of the above command\n```\n## Project Setup\n\n```sh\nnpm install\n```\n\n### Compile and Hot-Reload for Development\n\n```sh\nnpm run dev\n```\n\n### Compile and Minify for Production\n\n```sh\nnpm run build\n```\n\n### Lint with [ESLint](https://eslint.org/)\n\n```sh\nnpm run lint\n```\n\n# License\nThis software is licensed under GNU Affero General Public License version 3\n\n```\nCopyright (c) 2024 Sami Mokaddem\nCopyright (c) 2024 CIRCL - Computer Incident Response Center Luxembourg\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisp%2Fskillaegis-dashboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmisp%2Fskillaegis-dashboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmisp%2Fskillaegis-dashboard/lists"}