diff --git a/src/components/ToolFilters.astro b/src/components/ToolFilters.astro
index 6d8d751..be04c21 100644
--- a/src/components/ToolFilters.astro
+++ b/src/components/ToolFilters.astro
@@ -251,6 +251,11 @@ const sortedTags = Object.entries(tagFrequency)
tool.projectUrl.trim() !== "";
}
+ // Check if item is a method
+ function isMethod(tool) {
+ return tool.type === 'method';
+ }
+
// Update matrix highlighting based on current filters
function updateMatrixHighlighting() {
const currentView = document.querySelector('.view-toggle.active')?.getAttribute('data-view');
@@ -324,8 +329,8 @@ const sortedTags = Object.entries(tagFrequency)
return false;
}
- // Proprietary filter
- if (!includeProprietary && tool.license === 'Proprietary') {
+ // Proprietary filter (skip for methods since they don't have licenses)
+ if (!includeProprietary && !isMethod(tool) && tool.license === 'Proprietary') {
return false;
}
@@ -337,21 +342,30 @@ const sortedTags = Object.entries(tagFrequency)
return true;
});
- // Sort filtered results: server-based first, proprietary last
+// Sort filtered results: methods first, then self-hosted, then OSS, proprietary last
filtered.sort((a, b) => {
+ const aMethod = isMethod(a);
+ const bMethod = isMethod(b);
const aHosted = isToolHosted(a);
const bHosted = isToolHosted(b);
- const aProprietary = a.license === 'Proprietary';
- const bProprietary = b.license === 'Proprietary';
+ const aProprietary = !aMethod && a.license === 'Proprietary';
+ const bProprietary = !bMethod && b.license === 'Proprietary';
- // Self-hosted tools first (regardless of license)
- if (aHosted && !bHosted) return -1;
- if (!aHosted && bHosted) return 1;
+ // Methods first
+ //if (aMethod && !bMethod) return -1;
+ //if (!aMethod && bMethod) return 1;
- // If both have same hosting status, proprietary tools go last
- if (aHosted === bHosted) {
- if (!aProprietary && bProprietary) return -1;
- if (aProprietary && !bProprietary) return 1;
+ // If both are methods or both are tools
+ if (aMethod === bMethod) {
+ // Self-hosted tools first (regardless of license)
+ if (aHosted && !bHosted) return -1;
+ if (!aHosted && bHosted) return 1;
+
+ // If both have same hosting status, proprietary tools go last
+ if (aHosted === bHosted) {
+ if (!aProprietary && bProprietary) return -1;
+ if (aProprietary && !bProprietary) return 1;
+ }
}
return 0;
@@ -359,7 +373,6 @@ const sortedTags = Object.entries(tagFrequency)
// Update matrix highlighting
updateMatrixHighlighting();
-
// Emit custom event with filtered results
window.dispatchEvent(new CustomEvent('toolsFiltered', { detail: filtered }));
}
diff --git a/src/components/ToolMatrix.astro b/src/components/ToolMatrix.astro
index 8e91b4b..d1d3bd0 100644
--- a/src/components/ToolMatrix.astro
+++ b/src/components/ToolMatrix.astro
@@ -107,13 +107,17 @@ domains.forEach((domain: any) => {
{phases.map((phase: any) => (
{matrix[domain.id][phase.id].map((tool: any) => {
+ const isMethod = tool.type === 'method';
const hasValidProjectUrl = tool.projectUrl !== undefined &&
tool.projectUrl !== null &&
tool.projectUrl !== "" &&
tool.projectUrl.trim() !== "";
+ const chipClass = isMethod ? 'tool-chip-method' :
+ hasValidProjectUrl ? 'tool-chip-hosted' :
+ tool.license !== 'Proprietary' ? 'tool-chip-oss' : '';
return (
{
// Re-populate with filtered tools based on domains × phases
filtered.forEach(tool => {
+ const isMethod = tool.type === 'method';
const hasValidProjectUrl = tool.projectUrl !== undefined &&
tool.projectUrl !== null &&
tool.projectUrl !== "" &&
@@ -405,7 +410,10 @@ domains.forEach((domain: any) => {
const cell = document.querySelector(`[data-domain="${domain}"][data-phase="${phase}"]`);
if (cell) {
const chip = document.createElement('span');
- chip.className = `tool-chip ${hasValidProjectUrl ? 'tool-chip-hosted' : tool.license !== 'Proprietary' ? 'tool-chip-oss' : ''}`;
+ const chipClass = isMethod ? 'tool-chip-method' :
+ hasValidProjectUrl ? 'tool-chip-hosted' :
+ tool.license !== 'Proprietary' ? 'tool-chip-oss' : '';
+ chip.className = `tool-chip ${chipClass}`;
chip.setAttribute('title', `${tool.name}${tool.knowledgebase === true ? ' (KB verfügbar)' : ''}`);
chip.innerHTML = `${tool.name}${tool.knowledgebase === true ? '📖' : ''}`;
chip.onclick = () => window.showToolDetails(tool.name);
diff --git a/src/data/tools.yaml b/src/data/tools.yaml
index ef10c6d..3bfba51 100644
--- a/src/data/tools.yaml
+++ b/src/data/tools.yaml
@@ -1,5 +1,6 @@
tools:
- name: Autopsy
+ type: software
description: >-
Die führende Open-Source-Alternative zu kommerziellen Forensik-Suiten mit
intuitiver grafischer Oberfläche. Besonders stark in der Timeline-Analyse,
@@ -34,6 +35,7 @@ tools:
- artifact-extraction
- keyword-search
- name: Volatility 3
+ type: software
description: >-
Das Schweizer Taschenmesser der Memory-Forensik, unverzichtbar für die
Analyse von RAM-Dumps. Mit über 100 Plugins extrahiert es Prozesse,
@@ -69,6 +71,7 @@ tools:
- scripting
- process-analysis
- name: TheHive 5
+ type: software
description: >-
Moderne Security-Orchestrierungs-Plattform für die koordinierte
Incident-Response im Team. Integriert nahtlos mit MISP, Cortex und anderen
@@ -103,6 +106,7 @@ tools:
- incident-tracking
statusUrl: https://uptime.example.lab/api/badge/1/status
- name: MISP
+ type: software
description: >-
Das Rückgrat des modernen Threat-Intelligence-Sharings mit über 40.000
aktiven Instanzen weltweit. Ermöglicht den strukturierten Austausch von
@@ -136,6 +140,7 @@ tools:
- automation
statusUrl: https://status.mikoshi.de/api/badge/34/status
- name: Timesketch
+ type: software
description: >-
Google's Open-Source-Lösung für kollaborative Timeline-Analyse großer
Datensätze. Visualisiert und korreliert Ereignisse aus verschiedenen
@@ -168,6 +173,7 @@ tools:
- correlation
statusUrl: https://uptime.example.lab/api/badge/3/status
- name: Wireshark
+ type: software
description: >-
Der unangefochtene König der Netzwerk-Protokoll-Analyse mit Support für
über 3000 Protokolle. Unverzichtbar für die Untersuchung von
@@ -203,6 +209,7 @@ tools:
- visualization
- filtering
- name: Magnet AXIOM
+ type: software
description: >-
Die Rolls-Royce unter den kommerziellen Forensik-Suiten mit
beeindruckender Automatisierung. Glänzt besonders bei Cloud-Forensik mit
@@ -237,6 +244,7 @@ tools:
- automated-analysis
- reporting
- name: Cellebrite UFED
+ type: software
description: >-
Der Goldstandard der mobilen Forensik mit legendären
Entsperrungsfähigkeiten für aktuelle Smartphones. Nutzt Zero-Day-Exploits
@@ -268,6 +276,7 @@ tools:
- hardware-interface
- automated-analysis
- name: Cuckoo Sandbox 3
+ type: software
description: >-
Die führende Open-Source-Sandbox für automatisierte Malware-Analyse in
isolierten Umgebungen. Zeichnet Systemaufrufe, Netzwerkverkehr und
@@ -299,6 +308,7 @@ tools:
- virtualization
- automated-analysis
- name: Ghidra
+ type: software
description: >-
NSAs Geschenk an die Reverse-Engineering-Community als mächtige
Alternative zu IDA Pro. Der Decompiler verwandelt Maschinencode zurück in
@@ -330,6 +340,7 @@ tools:
- scripting
- static-analysis
- name: Plaso (log2timeline)
+ type: software
description: >-
Der industrielle Staubsauger für Zeitstempel - extrahiert aus hunderten
Quellen eine Super-Timeline. Parst Windows-Event-Logs, Browser-Historie,
@@ -364,6 +375,7 @@ tools:
- artifact-extraction
- scripting
- name: CyberChef
+ type: software
description: >-
Das digitale Schweizer Taschenmesser für Daten-Manipulation mit über 300
Operations. Von Base64-Dekodierung über Verschlüsselung bis zur
@@ -395,6 +407,7 @@ tools:
- visualization
- parsing
- name: Velociraptor
+ type: software
description: >-
Die nächste Evolution der Endpoint-Forensik mit skalierbarer
Remote-Collection-Architektur. Die mächtige VQL-Abfragesprache ermöglicht
@@ -434,6 +447,7 @@ tools:
- hunting
statusUrl: https://status.mikoshi.de/api/badge/33/status
- name: GRR Rapid Response
+ type: software
description: >-
Googles Antwort auf Enterprise-Scale-Forensik für die Untersuchung von
Flotten mit tausenden Clients. Sammelt gezielt Artefakte und führt
@@ -469,6 +483,7 @@ tools:
- live-forensics
- fleet-management
- name: Arkime
+ type: software
description: >-
Das Heavy-Metal-Tool für Full-Packet-Capture mit der Fähigkeit, Petabytes
an Netzwerkverkehr zu speichern. Indiziert in Echtzeit Metadaten für
@@ -502,6 +517,7 @@ tools:
- api
- big-data
- name: NetworkMiner
+ type: software
description: >-
Der benutzerfreundliche kleine Bruder von Wireshark mit Fokus auf Forensik
statt Live-Analyse. Extrahiert automatisch übertragene Dateien, Bilder und
@@ -534,6 +550,7 @@ tools:
- parsing
- session-reconstruction
- name: ExifTool
+ type: software
description: >-
Der Metadaten-Maestro, der aus über 1000 Dateiformaten verborgene
Informationen extrahiert. Findet GPS-Koordinaten in Fotos, Autoren in
@@ -568,6 +585,7 @@ tools:
- scripting
- batch-processing
- name: Chainalysis
+ type: software
description: >-
Der Platzhirsch der Blockchain-Forensik mit Zugriff auf die größte
Krypto-Intelligence-Datenbank weltweit. Clustering-Algorithmen
@@ -598,6 +616,7 @@ tools:
- api
- reporting
- name: Neo4j
+ type: software
description: >-
Die führende Graph-Datenbank verwandelt komplexe Beziehungsgeflechte in
verständliche Visualisierungen. Mit Cypher-Queries lassen sich
@@ -635,6 +654,7 @@ tools:
- query-language
statusUrl: https://status.mikoshi.de/api/badge/32/status
- name: QGIS
+ type: software
description: >-
Das Open-Source-GIS-Kraftpaket für die Visualisierung von Geodaten in
forensischen Untersuchungen. Erstellt aus GPS-Logs von Smartphones
@@ -667,6 +687,7 @@ tools:
- scripting
- reporting
- name: Nextcloud
+ type: software
description: >-
Die Open-Source-Cloud-Suite als sichere Kollaborations-Zentrale für
Forensik-Teams. Bietet verschlüsselte Dateifreigabe, Office-Integration
@@ -703,6 +724,7 @@ tools:
- document-management
statusUrl: https://status.mikoshi.de/api/badge/11/status
- name: Gitea
+ type: software
description: >-
Das leichtgewichtige Git-Repository für die Versionierung von
Forensik-Skripten und Dokumentation. Perfekt für die Verwaltung von
@@ -733,6 +755,7 @@ tools:
- ci-cd
statusUrl: https://status.mikoshi.de/api/badge/18/status
- name: Binwalk
+ type: software
description: >-
Der Firmware-Flüsterer, der aus IoT-Geräten und Routern ihre Geheimnisse
extrahiert. Erkennt eingebettete Dateisysteme, komprimierte Archive und
@@ -763,6 +786,7 @@ tools:
- extraction
- scripting
- name: LibreOffice
+ type: software
description: >-
Die freie Office-Suite, die mehr kann als nur Berichte schreiben. Calc
eignet sich hervorragend für die Analyse von CSV-Exporten und Log-Dateien.
@@ -802,6 +826,7 @@ tools:
- data-processing
- scripting
- name: Microsoft Office 365
+ type: software
description: >-
Der Industriestandard für professionelle Dokumentation mit nahtloser
Cloud-Integration. Excel's Power Query verwandelt komplexe
@@ -842,6 +867,7 @@ tools:
- cloud-based
- reporting
- name: GraphSense
+ type: software
description: >-
Die europäische Alternative zu Chainalysis mit Open-Source-Kern und Fokus
auf Privatsphäre. Clustering-Qualität noch nicht auf Chainalysis-Niveau,
@@ -872,6 +898,7 @@ tools:
- api
- big-data
- name: FTK Imager
+ type: software
description: >-
Der Oldtimer unter den Imaging-Tools, aber immer noch zuverlässig wie ein
Schweizer Uhrwerk. Erstellt bit-genaue Kopien von Festplatten mit
@@ -901,6 +928,7 @@ tools:
- verification
- write-blocking
- name: Guymager
+ type: software
description: >-
Das schlanke Linux-Imaging-Tool mit Fokus auf Performance und
Zuverlässigkeit. Multi-threaded Design nutzt moderne CPUs optimal für
@@ -929,6 +957,7 @@ tools:
- multi-threading
- write-blocking
- name: Fuji
+ type: software
description: >-
Der Geheimtipp für macOS-Forensiker - Live-Imaging ohne
Kernel-Modifikationen. Umgeht geschickt Apples Sicherheitsmechanismen für
@@ -957,6 +986,7 @@ tools:
- filesystem
- macos-specific
- name: ALEAPP
+ type: software
description: >-
Android-Forensik leicht gemacht - parst dutzende Apps und System-Artefakte
automatisch. Von WhatsApp-Chats über Standortdaten bis zu gelöschten
@@ -989,6 +1019,7 @@ tools:
- reporting
- timeline-analysis
- name: iLEAPP
+ type: software
description: >-
Das iOS-Pendant zu ALEAPP mit Fokus auf Apple's geschlossenem Ökosystem.
Extrahiert versteckte Schätze aus iPhone-Backups inklusive gelöschter
@@ -1021,6 +1052,7 @@ tools:
- reporting
- ios-specific
- name: VLEAPP
+ type: software
description: >-
Die Zukunft der Fahrzeug-Forensik für vernetzte Autos und
Infotainment-Systeme. Parst CAN-Bus-Daten, GPS-Tracks und
@@ -1052,6 +1084,7 @@ tools:
- gps-analysis
- can-bus
- name: Kali Linux
+ type: software
description: >-
Die Schweizer Armee-Messer-Distribution mit über 600 vorinstallierten
Security-Tools. Von Forensik über Penetration Testing bis Reverse
@@ -1086,6 +1119,7 @@ tools:
- virtualization
- arm-support
- name: dd
+ type: software
description: >-
Das Unix-Urgestein für bit-genaues Kopieren von Datenträgern seit 1974.
Minimalistisch aber mächtig - der Goldstandard für forensische Disk-Images
@@ -1115,6 +1149,7 @@ tools:
- unix-tool
- scripting
- name: dcfldd
+ type: software
description: >-
Die forensische Weiterentwicklung von dd mit eingebauter
Hash-Verifizierung. Zeigt Fortschrittsbalken, splittet große Images und
@@ -1143,6 +1178,7 @@ tools:
- progress-monitoring
- split-output
- name: ewfacquire
+ type: software
description: >-
Das Kommandozeilen-Tool für Expert Witness Format (E01) Images mit
Kompression. Teil der libewf-Suite, erstellt gerichtsfeste Images mit
@@ -1172,6 +1208,7 @@ tools:
- metadata
- verification
- name: PhotoRec
+ type: software
description: >-
Der Datenretter in der Not - findet gelöschte Dateien ohne
Dateisystem-Strukturen. Signature-basiertes Carving für über 300
@@ -1203,6 +1240,7 @@ tools:
- signature-based
- cross-platform
- name: Kismet
+ type: software
description: >-
Der WLAN-Schnüffler der Extraklasse für Wireless-Forensik und
Sicherheitsaudits. Passives Monitoring deckt versteckte Netzwerke, Rogue
@@ -1232,6 +1270,7 @@ tools:
- passive-scanning
- api
- name: OSFMount
+ type: software
description: >-
Mountet Disk-Images als virtuelle Laufwerke unter Windows für komfortable
Analyse. Unterstützt alle gängigen Formate von RAW über E01 bis zu
@@ -1260,6 +1299,7 @@ tools:
- virtual-drive
- format-support
- name: Thumbcache Viewer
+ type: software
description: >-
Spezialist für Windows Thumbnail-Caches mit Zugriff auf gelöschte
Bildvorschauen. Extrahiert Thumbnails aus thumbcache_*.db Dateien
@@ -1289,6 +1329,7 @@ tools:
- thumbnail-extraction
- deleted-data
- name: RegRipper
+ type: software
description: >-
Der Windows-Registry-Experte mit hunderten Plugins für automatisierte
Analyse. Extrahiert USB-Historie, installierte Software,
@@ -1320,6 +1361,7 @@ tools:
- plugin-system
- artifact-extraction
- name: YARA
+ type: software
description: >-
Die Pattern-Matching-Engine für Malware-Jäger und Threat Hunter.
Regelbasierte Suche nach Strings, Byte-Sequenzen und regulären Ausdrücken.
@@ -1351,6 +1393,7 @@ tools:
- library
- signature-based
- name: Strings
+ type: software
description: >-
Das simple Tool mit großer Wirkung - extrahiert lesbare Texte aus
Binärdateien. Findet URLs, Passwörter, Pfade und andere
@@ -1381,6 +1424,7 @@ tools:
- text-search
- cross-platform
- name: MaxMind GeoIP
+ type: software
description: >-
Die Geolocation-Datenbank für IP-Adressen-Zuordnung zu Ländern und
Städten. Unverzichtbar für die Analyse von Netzwerk-Logs und
@@ -1412,6 +1456,7 @@ tools:
- enrichment
- library
- name: SIFT Workstation
+ type: software
description: >-
SANS' kuratierte Ubuntu-Distribution vollgepackt mit Forensik-Tools und
Skripten. Über 500 Tools vorinstalliert, vorkonfiguriert und dokumentiert
@@ -1443,6 +1488,7 @@ tools:
- documentation
- ubuntu-based
- name: Tsurugi Linux
+ type: software
description: >-
Die von Forensikern entwickelte Forensik-Distribution mit Fokus auf
Benutzerfreundlichkeit. Besonders stark bei Mobile- und Malware-Forensik
@@ -1472,6 +1518,7 @@ tools:
- mobile-focus
- lightweight
- name: Parrot Security OS
+ type: software
description: >-
Die Datenschutz-fokussierte Alternative zu Kali mit Forensik-Werkzeugen.
AnonSurf für anonymisierte Ermittlungen und verschlüsselte Kommunikation
@@ -1502,6 +1549,7 @@ tools:
- lightweight
- anonymization
- name: Eric Zimmerman Tools
+ type: software
description: >-
Die Tool-Sammlung des Windows-Forensik-Gurus für Artefakt-Analyse. Von
ShellBags über Prefetch bis zu Amcache - jedes Tool ein Spezialist. Die
@@ -1530,6 +1578,7 @@ tools:
- tool-collection
- artifact-extraction
- name: Impacket
+ type: software
description: >-
Python-Bibliothek für Netzwerk-Protokoll-Manipulation und
Windows-Forensik. Ermöglicht Remote-Zugriff auf Windows-Systeme für
@@ -1562,6 +1611,7 @@ tools:
- scripting
- api
- name: RSA NetWitness
+ type: software
description: >-
Enterprise-Grade SIEM und Forensik-Plattform für große Netzwerke.
Korreliert Logs, Packets und Endpoints für 360-Grad-Sicht auf Incidents.
@@ -1593,6 +1643,7 @@ tools:
- machine-learning
- enterprise
- name: X-Ways Forensics
+ type: software
description: >-
Der deutsche Präzisionsskalpell unter den Forensik-Tools mit
unübertroffener Effizienz. Besonders geschätzt für blitzschnelle Searches
@@ -1622,6 +1673,7 @@ tools:
- german-made
- hex-editor
- name: EnCase
+ type: software
description: >-
Der Veteran der kommerziellen Forensik-Tools mit 25 Jahren
Gerichtserfahrung. EnScript-Programmierung ermöglicht maßgeschneiderte
@@ -1652,6 +1704,7 @@ tools:
- certification
- scripting
- name: FRED
+ type: software
description: >-
Forensic Recovery of Evidence Device - spezialisierte Hardware für
Imaging. Kombiniert Write-Blocker, Imager und Analyse-Workstation in einem
@@ -1680,6 +1733,7 @@ tools:
- professional-lab
- integrated-system
- name: ICSpector
+ type: software
description: >-
Ein von Microsoft entwickeltes Open-Source-Framework, das eine besondere
Nische bedient: Die Datensammlung bei Industriekontrollsystemen und
@@ -1703,6 +1757,104 @@ tools:
- python
- binary
- scripting
+ - name: "Live Memory Acquisition Procedure"
+ type: method
+ description: >-
+ Standardisiertes Verfahren zur forensisch korrekten Akquisition des
+ Arbeitsspeichers laufender Systeme. Umfasst Bewertung der
+ Systemkritikalität, Auswahl geeigneter Tools, Minimierung der
+ System-Kontamination und Dokumentation der Chain of Custody. Essentiell
+ für die Sicherung flüchtiger Beweise wie Prozess-Informationen,
+ Netzwerkverbindungen und Verschlüsselungsschlüssel.
+ domains:
+ - incident-response
+ - law-enforcement
+ - malware-analysis
+ phases:
+ - data-collection
+ platforms: []
+ domain-agnostic-software: null
+ skillLevel: advanced
+ accessType: null
+ url: https://www.nist.gov/publications/guide-integrating-forensic-techniques-incident-response
+ projectUrl:
+ license: null
+ knowledgebase: false
+ tags:
+ - memory-acquisition
+ - volatile-evidence
+ - live-forensics
+ - ram-dump
+ - evidence-preservation
+ - procedure
+ - name: "Rapid Incident Response Triage on macOS"
+ type: method
+ description: >-
+ Spezialisierte Methodik für die schnelle Incident Response auf
+ macOS-Systemen mit Fokus auf die Sammlung kritischer forensischer
+ Artefakte in unter einer Stunde. Adressiert die Lücke zwischen
+ Windows-zentrierten IR-Prozessen und macOS-spezifischen
+ Sicherheitsarchitekturen. Nutzt Tools wie Aftermath für effiziente
+ Datensammlung ohne zeitaufwändige Full-Disk-Images. Besonders wertvoll
+ für Unternehmensumgebungen mit gemischten Betriebssystem-Landschaften.
+ domains:
+ - incident-response
+ - law-enforcement
+ - malware-analysis
+ phases:
+ - data-collection
+ - examination
+ platforms: []
+ domain-agnostic-software: null
+ skillLevel: intermediate
+ accessType: null
+ url: https://www.sans.org/white-papers/rapid-incident-response-on-macos-actionable-insights-under-hour/
+ projectUrl:
+ license: null
+ knowledgebase:
+ tags:
+ - macos
+ - rapid-response
+ - triage
+ - incident-response
+ - aftermath
+ - enterprise
+ - methodology
+ - apple
+ - name: "Aftermath"
+ type: software
+ description: >-
+ Jamf's Open-Source-Tool für die schnelle Sammlung forensischer Artefakte
+ auf macOS-Systemen. Sammelt kritische Daten wie Prozessinformationen,
+ Netzwerkverbindungen, Dateisystem-Metadaten und Systemkonfigurationen
+ ohne Full-Disk-Imaging. Speziell entwickelt für die Rapid-Response-Triage
+ in Enterprise-Umgebungen mit macOS-Geräten. Normalisiert Zeitstempel und
+ erstellt durchsuchbare Ausgabeformate für effiziente Analyse.
+ domains:
+ - incident-response
+ - law-enforcement
+ - malware-analysis
+ phases:
+ - data-collection
+ - examination
+ platforms:
+ - macOS
+ domain-agnostic-software: null
+ skillLevel: intermediate
+ accessType: download
+ url: https://github.com/jamf/aftermath/
+ projectUrl: ''
+ license: Apache 2.0
+ knowledgebase: false
+ tags:
+ - macos
+ - incident-response
+ - triage
+ - artifact-collection
+ - rapid-response
+ - jamf
+ - enterprise
+ - commandline
domains:
- id: incident-response
name: Incident Response & Breach-Untersuchung
diff --git a/src/pages/index.astro b/src/pages/index.astro
index 3587d74..a532fd9 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -337,6 +337,7 @@ const tools = data.tools;
(window as any).switchToAIView = () => switchToView('ai');
function createToolCard(tool) {
+ const isMethod = tool.type === 'method';
const hasValidProjectUrl = tool.projectUrl !== undefined &&
tool.projectUrl !== null &&
tool.projectUrl !== "" &&
@@ -345,7 +346,9 @@ function createToolCard(tool) {
const hasKnowledgebase = tool.knowledgebase === true;
const cardDiv = document.createElement('div');
- const cardClass = hasValidProjectUrl ? 'card card-hosted tool-card' : (tool.license !== 'Proprietary' ? 'card card-oss tool-card' : 'card tool-card');
+ const cardClass = isMethod ? 'card card-method tool-card' :
+ hasValidProjectUrl ? 'card card-hosted tool-card' :
+ (tool.license !== 'Proprietary' ? 'card card-oss tool-card' : 'card tool-card');
cardDiv.className = cardClass;
cardDiv.style.cursor = 'pointer';
cardDiv.onclick = () => (window as any).showToolDetails(tool.name);
@@ -354,8 +357,9 @@ function createToolCard(tool) {
@@ -392,7 +396,7 @@ function createToolCard(tool) {
- ${tool.license === 'Proprietary' ? 'Prop.' : tool.license.split(' ')[0]}
+ ${isMethod ? 'Methode' : tool.license === 'Proprietary' ? 'Prop.' : tool.license?.split(' ')[0] || 'N/A'}
@@ -402,7 +406,11 @@ function createToolCard(tool) {
|