- 0 minutes to read

Search and Discovery

Overview

The Search and Discovery feature provides powerful, enterprise-grade search capabilities across your entire integration landscape in Mapify. Whether you manage 10 integrations or 10,000+ entities, global search with autocomplete, fuzzy matching, and advanced filters helps you find exactly what you need in seconds.


  • Find entities in seconds – Locate specific integrations, systems, services, or resources instantly without manual graph navigation
  • Typo tolerance – Fuzzy matching finds results even when search terms are misspelled or partially entered
  • Advanced filters – Narrow results by entity type, domain, owner, compliance tags, and custom metadata
  • Saved searches – Reuse common queries for recurring analysis tasks (e.g., "Show all GDPR-regulated SAP integrations")
  • Enterprise scalability – Optimized for datasets with 10,000+ entities and sub-second response times
  • Keyboard-first design – Power users can search without touching the mouse

Target Users:

  • Integration Architects – Quickly locate specific integration patterns or dependencies
  • Operations Teams – Find systems by owner, status, or compliance tags during incident response
  • Compliance Officers – Search for all entities tagged with regulatory requirements (GDPR, HIPAA, SOX)
  • Business Stakeholders – Discover which integrations connect to critical business systems

What is Search and Discovery?

Search and Discovery is Mapify's intelligent search system that indexes all entities in your Repository Model and provides:

  1. Global search bar – Prominent search input accessible from any Mapify view
  2. Real-time autocomplete – Instant suggestions as you type, ranked by relevance
  3. Fuzzy matching – Finds results even with typos (e.g., "SAP Finanace" → "SAP Finance")
  4. Multi-entity search scope – Search across Integrations, Systems, Services, Resources, Domains, and Custom Metadata fields
  5. Advanced filter syntax – Use operators like type:, owner:, status:, tag: for precise queries
  6. Saved searches – Store frequently used queries for one-click re-execution
  7. Visual result highlighting – Search results are highlighted in the graph with zoom-to-fit behavior

Search Scope

Mapify searches the following entity types and fields:

Entity Type Indexed Fields Example Query
Integrations Name, Description, Domain, Owner, Tags, Custom Metadata SAP to Salesforce
Systems Name, Description, SystemType, Version, Owner, Tags type:system ERP
Services Name, Description, ServiceType, Endpoint, Protocol OrderProcessing REST
Resources Name, Description, ResourceType, Connection String, Owner type:database Production
Domains Name, Description, Owner, Compliance Tags tag:GDPR Finance
Custom Metadata All custom field names and values CostCenter:12345

Fuzzy Search and Typo Tolerance

Fuzzy search uses Levenshtein distance algorithms to find approximate matches when exact matches fail. This handles:

  • Typos: "Salesforse" → "Salesforce"
  • Spelling variations: "Authorize" vs "Authorise"
  • Case insensitivity: "sap finance" matches "SAP Finance"
  • Partial matches: "Order" matches "OrderProcessingService"
  • Word transposition: "Finance SAP" matches "SAP Finance"

Fuzzy Match Tolerance Levels

Query Length Max Edit Distance Example
1-3 characters 0 (exact match only) "SAP" requires exact match
4-7 characters 1 character difference "Ordr" matches "Order"
8-12 characters 2 character differences "Salesfore" matches "Salesforce"
13+ characters 3 character differences "OrderProcesing" matches "OrderProcessing"

Configuration Note: Administrators can adjust fuzzy matching sensitivity in Mapify settings (Mapify > Search > Fuzzy Tolerance).


Autocomplete Behavior and Ranking

Autocomplete suggestions appear as you type (minimum 2 characters) with results ranked by:

Ranking Algorithm Priority

  1. Exact prefix match – Highest priority (e.g., "SAP" → "SAP Finance Integration" ranks #1)
  2. Word boundary match – Second priority (e.g., "Finance" → "SAP Finance Integration")
  3. Fuzzy match – Third priority (typo tolerance)
  4. Recently accessed – Boosts entities you've viewed in the last 7 days
  5. Entity type priority – Integrations > Systems > Services > Resources > Domains
  6. Custom metadata matches – Lower priority than core fields

Autocomplete Example

User types: sales

Autocomplete dropdown displays:

🔍 Search Results (5 matches)

1. ⭐ Salesforce CRM Integration                      [Integration]
   Last accessed: 2 hours ago

2. 📊 Sales Order Processing Service                  [Service]
   System: SAP ERP

3. 💾 SalesDB Production                              [Database]
   Owner: Finance Team

4. 🔗 Salesforce to SAP Sync                          [Integration]
   Status: Active

5. 📁 Sales Domain                                    [Domain]
   3 integrations, 12 services

Visual Indicators:

  • Recently accessed – Star icon for entities viewed in last 7 days
  • Active status – Green checkmark for healthy/active entities
  • Issues detected – Warning icon for entities with monitoring alerts
  • Restricted access – Lock icon for entities user has read-only permissions

Advanced Filter Syntax

Power users can combine search terms with filter operators for precise queries.

Filter Operators

Operator Description Example
type: Filter by entity type type:integration SAP
owner: Filter by owner name or team owner:john type:service
status: Filter by monitoring status status:active Finance
tag: Filter by compliance/custom tags tag:GDPR tag:Production
domain: Filter by domain name domain:Finance SAP
protocol: Filter by communication protocol protocol:REST API
modified: Filter by last modified date modified:7d owner:john
created: Filter by creation date created:30d type:integration

Date Filter Syntax

Use relative or absolute dates:

  • Relative: 7d (7 days), 2w (2 weeks), 3m (3 months), 1y (1 year)
  • Absolute: 2026-01-01 (ISO format), 2026-01 (month), 2026 (year)
  • Range: created:2025-01-01..2025-12-31

Complex Query Examples

Example 1: Find all GDPR-regulated SAP integrations modified in last 30 days

tag:GDPR type:integration SAP modified:30d

Example 2: Show REST APIs owned by Finance team with active status

protocol:REST owner:"Finance Team" status:active

Example 3: Find all database resources in Production domain

type:database domain:Production

Example 4: Locate integrations created in 2025 with unassigned owners

type:integration created:2025 owner:unassigned

Boolean Operators

Combine filters with logical operators:

  • AND (default): SAP Finance (both terms required)
  • OR: SAP OR Salesforce (either term matches)
  • NOT: SAP NOT Finance (exclude matches)
  • Grouping: (SAP OR Salesforce) AND tag:GDPR

Saved Searches Feature

Saved searches store frequently used queries for one-click re-execution. This is ideal for:

  • Recurring compliance auditstag:GDPR modified:7d (weekly GDPR compliance check)
  • Team-specific dashboardsowner:"Sales Team" status:active (Sales team integrations)
  • Incident responsestatus:error modified:1d (recent failures)
  • Architecture reviewstype:integration domain:Finance protocol:SOAP (legacy SOAP integrations in Finance)

Saved Search Workflow

graph TD A[User Enters Search Query] --> B[Apply Filters and Execute] B --> C{Results Satisfactory?} C -->|No| A C -->|Yes| D[Click 'Save Search' Button] D --> E[Enter Search Name and Description] E --> F{Set Visibility} F -->|Personal| G[Save to User Profile] F -->|Shared| H[Save to Team Workspace] G --> I[Search Appears in 'My Saved Searches' Dropdown] H --> J[Search Appears in 'Team Saved Searches' Dropdown] I --> K[One-Click Re-Execution Anytime] J --> K

Saved Search Data Structure

Saved searches are stored with the following fields:

{
  "searchId": "550e8400-e29b-41d4-a716-446655440000",
  "searchName": "Weekly GDPR Compliance Check",
  "searchDescription": "All GDPR-regulated entities modified in last 7 days",
  "searchQuery": "tag:GDPR modified:7d",
  "createdBy": "john.smith@company.com",
  "createdDate": "2026-01-19T10:30:00Z",
  "lastExecuted": "2026-01-19T14:22:00Z",
  "executionCount": 47,
  "visibility": "shared",
  "sharedWith": ["compliance-team", "finance-team"],
  "schedule": {
    "enabled": true,
    "frequency": "weekly",
    "dayOfWeek": "monday",
    "time": "09:00",
    "emailResults": true
  }
}

Scheduled Saved Searches

Administrators can schedule saved searches to run automatically and email results:

  • Daily compliance checks – Run tag:GDPR status:error every morning at 8 AM
  • Weekly architecture reviews – Email protocol:SOAP domain:Finance results to architecture team every Monday
  • Monthly capacity reports – Run type:system modified:30d on first day of each month

Configuration: Mapify > Search > Saved Searches > [Search Name] > Schedule Settings


Performance Considerations for Large Datasets

Mapify search is optimized for enterprise-scale deployments with 10,000+ entities.

Performance Optimization Strategies

Strategy Implementation Benefit
**Indexed Search** Full-text indexing on all searchable fields (SQL Server FTS or Elasticsearch) Sub-second search response for 100,000+ entities
**Client-Side Caching** Cache search index in browser localStorage (max 5,000 entities) Instant autocomplete for frequently accessed entities
**Pre-Filtered Results** Apply domain/owner filters before fuzzy matching Reduces search space by 70-90% for most queries
**Lazy Loading** Load top 50 results initially, fetch more on scroll Improves perceived performance for broad queries
**Query Debouncing** Wait 300ms after last keystroke before executing search Prevents server overload during fast typing
**Result Compression** Compress search results before sending to client (gzip) Reduces network bandwidth by 60-80%

Client-Side vs Server-Side Search Trade-Offs

Approach Pros Cons Best For
**Client-Side** • Instant autocomplete (no latency)
• Works offline after initial load
• Reduces server load
• Limited to ~5,000 entities (browser memory)
• Requires full data download
• No real-time updates
Small to medium deployments (<5,000 entities)
**Server-Side** • Scales to millions of entities
• Real-time data consistency
• Advanced filtering (joins, aggregations)
• Network latency (50-200ms typical)
• Requires persistent connection
• Higher server resource usage
Enterprise deployments (>5,000 entities)
**Hybrid (Recommended)** • Best of both worlds
• Client-side for autocomplete
• Server-side for complex queries
• More complex implementation
• Requires cache invalidation logic
Most production environments

Recommended Approach: Hybrid search with client-side autocomplete for top 1,000 most-accessed entities and server-side execution for complex filters.

Search Performance Benchmarks

Expected performance targets:

  • Autocomplete response: <100ms for 10,000 entities
  • Simple search (1-2 terms): <200ms for 50,000 entities
  • Complex filter query: <500ms for 100,000 entities
  • Fuzzy search: <1 second for 100,000 entities
  • Saved search execution: <2 seconds for queries with aggregations

Note: Performance depends on SQL Server hardware, indexing configuration, and network latency. Run Mapify > Diagnostics > Search Performance Test to benchmark your environment.


Search Syntax Examples

Basic Search Examples

Find integrations by name:

SAP Finance

Find systems by type:

type:system CRM

Find services by protocol:

protocol:REST API

Intermediate Search Examples

Find all entities owned by specific person:

owner:john.smith

Find entities modified in last week:

modified:7d

Find entities with specific tag:

tag:GDPR

Advanced Search Examples

Find GDPR-regulated integrations owned by Finance team, modified in last 30 days:

type:integration tag:GDPR owner:"Finance Team" modified:30d

Find all REST or SOAP services in Production domain with active status:

(protocol:REST OR protocol:SOAP) domain:Production status:active

Find database resources created in 2025 but not owned by anyone:

type:database created:2025 owner:unassigned

Find all entities except those owned by John:

NOT owner:john.smith

Find integrations with specific custom metadata value:

type:integration CostCenter:12345

Search UI Elements

All search UI components use Font Awesome icons with proper accessibility attributes.

<div class="mapify-search-container">
  <label for="global-search" class="visually-hidden">Search integrations, systems, services, and resources</label>
  <div class="search-input-wrapper">
    <i class="fas fa-magnifying-glass" aria-hidden="true"></i>
    <input 
      type="search" 
      id="global-search" 
      name="globalSearch"
      placeholder="Search integrations, systems, services..."
      aria-autocomplete="list"
      aria-controls="search-results"
      aria-expanded="false"
      aria-describedby="search-help"
      autocomplete="off"
    >
    <button 
      type="button" 
      class="clear-search" 
      aria-label="Clear search"
      hidden
    >
      <i class="fas fa-xmark" aria-hidden="true"></i>
    </button>
  </div>
  <span id="search-help" class="help-text">
    Try: "type:integration SAP" or "owner:john status:active"
  </span>
</div>

Autocomplete Dropdown

<ul id="search-results" role="listbox" aria-label="Search results" hidden>
  <li role="option" aria-selected="false" data-entity-id="123">
    <div class="result-icon">
      <i class="fas fa-diagram-project" aria-hidden="true"></i>
    </div>
    <div class="result-content">
      <div class="result-title">
        <strong>Salesforce CRM Integration</strong>
        <i class="fas fa-star" aria-hidden="true" title="Recently accessed"></i>
      </div>
      <div class="result-metadata">
        <span class="entity-type">Integration</span>
        <span class="separator">•</span>
        <span class="owner">Owner: Sales Team</span>
        <span class="separator">•</span>
        <span class="status">
          <i class="fas fa-circle-check" aria-hidden="true"></i>
          Active
        </span>
      </div>
    </div>
  </li>
  <!-- More results... -->
</ul>

Saved Searches Dropdown

<div class="saved-searches-menu">
  <button 
    type="button" 
    class="btn-saved-searches"
    aria-label="Open saved searches menu. Currently 8 saved searches available."
    aria-haspopup="true"
    aria-expanded="false"
  >
    <i class="fas fa-clock-rotate-left" aria-hidden="true"></i>
    Saved Searches
    <i class="fas fa-caret-down" aria-hidden="true"></i>
  </button>
  
  <div class="saved-searches-dropdown" role="menu" hidden>
    <div class="dropdown-section">
      <h3 class="dropdown-heading">My Saved Searches</h3>
      <button type="button" role="menuitem" data-search-id="550e8400">
        <i class="fas fa-magnifying-glass" aria-hidden="true"></i>
        Weekly GDPR Compliance Check
        <span class="search-count">(23 results)</span>
      </button>
      <button type="button" role="menuitem" data-search-id="660e9511">
        <i class="fas fa-magnifying-glass" aria-hidden="true"></i>
        Sales Team Active Integrations
        <span class="search-count">(47 results)</span>
      </button>
    </div>
    
    <div class="dropdown-divider"></div>
    
    <div class="dropdown-section">
      <h3 class="dropdown-heading">Team Saved Searches</h3>
      <button type="button" role="menuitem" data-search-id="770ea622">
        <i class="fas fa-magnifying-glass" aria-hidden="true"></i>
        Recent Failures
        <span class="search-count">(3 results)</span>
      </button>
    </div>
    
    <div class="dropdown-divider"></div>
    
    <button type="button" class="btn-manage-searches" role="menuitem">
      <i class="fas fa-gear" aria-hidden="true"></i>
      Manage Saved Searches
    </button>
  </div>
</div>

Visual Highlighting

When you execute a search query in Mapify, matching entities are visually highlighted in the interactive graph to help you quickly identify and navigate to relevant nodes. This visual feedback is critical for large integration landscapes where search results may be scattered across different domains or hierarchies.

Highlighting Styles

Search results are highlighted using multiple visual indicators to ensure accessibility and clarity:

Node Highlighting

Visual Element Style Purpose Accessibility
Border Color 4px solid #0066CC (blue) Primary highlight indicator 4.5:1 contrast ratio on white background (WCAG AA)
Glow Effect 8px box-shadow with 60% opacity Draw attention to highlighted nodes Visible to users with reduced vision
Size Increase Node scaled to 115% of original size Make highlighted nodes stand out in crowded graphs Shape differentiation (not color-only)
Icon Badge icon in top-right corner Visual indicator for colorblind users Non-color-based differentiation
Z-Index Elevation Bring highlighted nodes to foreground Prevent occlusion by other nodes Ensure visibility in dense graphs

CSS Example:

/* Highlighted search result node */
.mapify-node.search-highlight {
  border: 4px solid #0066CC;
  box-shadow: 0 0 8px rgba(0, 102, 204, 0.6);
  transform: scale(1.15);
  z-index: 1000;
  position: relative;
}

.mapify-node.search-highlight::after {
  content: "\f002"; /* Font Awesome magnifying-glass */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  top: -8px;
  right: -8px;
  background-color: #0066CC;
  color: white;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
}

/* Ensure high contrast for accessibility */
@media (prefers-contrast: high) {
  .mapify-node.search-highlight {
    border-color: #003D7A;
    box-shadow: 0 0 12px rgba(0, 61, 122, 0.8);
  }
}

/* Colorblind-friendly patterns (optional overlay) */
.mapify-node.search-highlight.pattern-overlay {
  background-image: repeating-linear-gradient(
    45deg,
    transparent,
    transparent 10px,
    rgba(0, 102, 204, 0.1) 10px,
    rgba(0, 102, 204, 0.1) 20px
  );
}

Zoom-to-Fit Behavior

When search results are returned, Mapify automatically adjusts the graph view to ensure all matching nodes are visible:

Single Result

  • Behavior: Graph zooms and pans to center the highlighted node
  • Zoom level: 150% zoom for optimal visibility
  • Animation: Smooth 500ms transition with easing

Example:

User searches: "Salesforce CRM Integration"
Result: 1 match found
Action: Graph pans to Salesforce node, zooms to 150%, highlights with blue border + glow

Multiple Results (2-10 matches)

  • Behavior: Graph fits all highlighted nodes within viewport
  • Padding: 50px margin around outermost nodes
  • Zoom level: Adjusted automatically to fit all results
  • Animation: Smooth 750ms transition

Example:

User searches: "type:integration SAP"
Result: 7 matches found (scattered across Finance, HR, and Logistics domains)
Action: Graph zooms out to show all 7 nodes with padding, all highlighted with blue border

Many Results (10+ matches)

  • Behavior: Graph displays result count and provides navigation controls
  • Initial view: Zooms to first 10 results with "Next" button
  • Navigation: Previous / Next buttons cycle through result clusters
  • Result counter: "Showing 1-10 of 47 results"

Example:

User searches: "status:active"
Result: 342 matches found
Action: Graph shows first 10 results with counter: "Showing 1-10 of 342 results"
User clicks Next: Graph pans to results 11-20

HTML Controls Example:

<div class="search-results-navigation" role="navigation" aria-label="Search results navigation">
  <button 
    type="button" 
    class="btn-prev-results"
    aria-label="Previous 10 search results"
    disabled
  >
    <i class="fas fa-arrow-left" aria-hidden="true"></i>
    Previous
  </button>
  
  <span class="results-counter" aria-live="polite">
    Showing <strong>1-10</strong> of <strong>342</strong> results
  </span>
  
  <button 
    type="button" 
    class="btn-next-results"
    aria-label="Next 10 search results"
  >
    Next
    <i class="fas fa-arrow-right" aria-hidden="true"></i>
  </button>
</div>

Multi-Result Differentiation

When multiple search results are highlighted simultaneously, Mapify uses sequential numbering and color gradients to differentiate them:

Numbered Badges

Each highlighted node displays a numbered badge (1, 2, 3, ...) indicating its rank in search results:

  • Badge location: Top-left corner of node
  • Ranking logic: Based on autocomplete ranking algorithm (exact match → fuzzy → recent)
  • Badge style: White text on blue circle background
  • Maximum displayed: First 99 results (100+ shows "99+")

HTML Example:

<div class="mapify-node search-highlight" data-search-rank="1">
  <span class="search-rank-badge" aria-label="Search result rank 1">1</span>
  <div class="node-content">
    <i class="fas fa-diagram-project" aria-hidden="true"></i>
    <strong>Salesforce CRM Integration</strong>
  </div>
</div>

CSS Example:

.search-rank-badge {
  position: absolute;
  top: -10px;
  left: -10px;
  background-color: #0066CC;
  color: white;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: bold;
  border: 2px solid white;
  z-index: 1001;
}

Color Gradient (Optional)

For advanced visualizations, highlighted nodes can use a color gradient from dark blue (highest relevance) to light blue (lower relevance):

  • Rank 1-3: Dark blue (#0066CC) – Highest relevance
  • Rank 4-10: Medium blue (#3399FF)
  • Rank 11+: Light blue (#66CCFF)

Accessibility Note: Color gradient is supplementary to numbered badges. Users who cannot perceive color differences still see rank numbers.


Keyboard Navigation Through Results

Users can navigate through highlighted search results using keyboard shortcuts, enhancing accessibility and efficiency:

Action Windows/Linux macOS Behavior
Next Result Tab or Ctrl + ↓ Tab or ⌘ + ↓ Pan and zoom to next highlighted node in sequence
Previous Result Shift + Tab or Ctrl + ↑ Shift + Tab or ⌘ + ↑ Pan and zoom to previous highlighted node
Select Result Enter Return Open detail panel for currently focused highlighted node
Clear Highlights Esc Esc Remove all search highlights and return to default view
Jump to First Result Ctrl + Home ⌘ + Home Pan and zoom to first search result (rank #1)
Jump to Last Result Ctrl + End ⌘ + End Pan and zoom to last search result

Implementation Notes:

  • Focus indicator (dashed outline) shows currently selected result
  • Screen readers announce "Search result 3 of 12: Salesforce CRM Integration"
  • Keyboard navigation wraps around (pressing Next on last result returns to first)

Animation and Timing

Visual feedback timing is critical for usability. Mapify uses carefully tuned animations to draw attention without causing motion sickness:

Highlight Animation

Fade-In + Pulse Effect:

@keyframes search-highlight-appear {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
  }
  100% {
    opacity: 1;
    transform: scale(1.15);
  }
}

.mapify-node.search-highlight {
  animation: search-highlight-appear 600ms ease-out;
}

/* Subtle pulse to maintain attention */
@keyframes search-pulse {
  0%, 100% {
    box-shadow: 0 0 8px rgba(0, 102, 204, 0.6);
  }
  50% {
    box-shadow: 0 0 16px rgba(0, 102, 204, 0.8);
  }
}

.mapify-node.search-highlight {
  animation: search-highlight-appear 600ms ease-out,
             search-pulse 2s infinite ease-in-out 600ms;
}

/* Respect user preference for reduced motion */
@media (prefers-reduced-motion: reduce) {
  .mapify-node.search-highlight {
    animation: none;
    transition: none;
  }
}

Zoom Transition

Smooth Camera Movement:

  • Duration: 500ms for single result, 750ms for multiple results
  • Easing: cubic-bezier(0.4, 0.0, 0.2, 1) for natural deceleration
  • User control: Press Esc to cancel zoom animation mid-flight

Accessibility Considerations

Mapify's search highlighting follows WCAG 2.1 AA standards:

Color Contrast

  • Highlighted border: #0066CC on white background = 6.9:1 contrast ratio (exceeds 4.5:1 requirement)
  • Badge text: White on #0066CC = 7.1:1 contrast ratio
  • Glow effect: Adds visual emphasis without relying solely on color

Non-Color Indicators

To support colorblind users, highlighted nodes include:

  1. Icon badge () – Visual shape indicator
  2. Size increase (115% scale) – Shape differentiation
  3. Numbered badges – Rank order regardless of color perception
  4. Optional pattern overlay – Diagonal stripes for deuteranopia/protanopia users

Pattern Overlay Example (for colorblind mode):

/* Enable in Mapify > Settings > Accessibility > Colorblind Mode */
.colorblind-mode .mapify-node.search-highlight {
  background-image: repeating-linear-gradient(
    45deg,
    transparent,
    transparent 10px,
    rgba(0, 102, 204, 0.2) 10px,
    rgba(0, 102, 204, 0.2) 20px
  );
}

Screen Reader Support

  • ARIA live regions announce search result count: "12 results found"
  • Keyboard focus management announces current result: "Search result 3 of 12: Salesforce CRM Integration, Integration entity, owned by Sales Team"
  • Result navigation buttons include aria-label with context

HTML Example:

<div aria-live="polite" aria-atomic="true" class="search-status">
  <i class="fas fa-magnifying-glass" aria-hidden="true"></i>
  <span>12 results found for "SAP"</span>
</div>

<!-- When user navigates to result #3 -->
<div 
  class="mapify-node search-highlight" 
  role="button" 
  tabindex="0"
  aria-label="Search result 3 of 12: Salesforce CRM Integration, Integration entity, owned by Sales Team, status active"
>
  <!-- Node content -->
</div>

Mobile and Touch Considerations

On mobile and tablet devices, search result highlighting adapts for touch interaction:

Touch Targets

  • Minimum tap target: 44×44px for numbered badges
  • Swipe gestures: Swipe left/right to navigate between results
  • Pinch-to-zoom: Preserved during search highlighting (users can manually adjust zoom)

Mobile-Specific Behaviors

Breakpoint: max-width: 768px (tablets and smaller)

  1. Result counter always visible – Sticky header shows "3 of 12 results"
  2. Larger badges – Numbered badges increase to 32×32px for easier tapping
  3. Reduced animation – Pulse effect disabled on mobile to preserve battery
  4. Tap to focus – Tapping highlighted node opens bottom sheet with entity details

Example Mobile View:

┌─────────────────────────────────────┐
│ ┌─────────────────────────────────┐ │ ← Sticky Search Bar
│ │ 🔍 SAP          [×] 12 results  │ │
│ └─────────────────────────────────┘ │
├─────────────────────────────────────┤
│                                     │
│       [Graph View]                  │
│                                     │
│    ┏━━━━━━━━━━┓                    │
│  ①┃ SAP HR   ┃  ← Highlighted      │
│    ┗━━━━━━━━━━┛                    │
│                                     │
│           ┏━━━━━━━━━━━━┓           │
│         ②┃ SAP Finance ┃           │
│           ┗━━━━━━━━━━━━┛           │
│                                     │
├─────────────────────────────────────┤
│  [◀ Prev]  Showing 1-2  [Next ▶]   │ ← Navigation Controls
└─────────────────────────────────────┘

Mockup: Visual Highlighting in Action

Desktop View (Graph with 5 Search Results):

┌──────────────────────────────────────────────────────────────────┐
│  Mapify - Integration Landscape                   🔍 [Search Bar] │
├──────────────────────────────────────────────────────────────────┤
│                                                                    │
│   Finance Domain                 HR Domain                        │
│   ╔════════════╗                 ╔═══════════╗                   │
│ ①─║  SAP ERP   ║─────────────────║ Workday   ║─② ← Highlighted   │
│   ╚════════════╝                 ╚═══════════╝    (Blue border)  │
│         │                              │                          │
│         │                              │                          │
│   ╔════════════╗                 ╔═══════════╗                   │
│   │ Salesforce │               ③─║  ADP      ║    ← Result #3    │
│   ╚════════════╝                 ╚═══════════╝                   │
│         │                                                          │
│         │                                                          │
│   ╔════════════╗                 ╔═══════════╗                   │
│ ④─║ NetSuite   ║                 │ Kronos    │                   │
│   ╚════════════╝                 ╚═══════════╝                   │
│                                                                    │
│                          ⑤ ╔═══════════╗                         │
│                            ║ QuickBooks║                         │
│                            ╚═══════════╝                         │
│                                                                    │
├──────────────────────────────────────────────────────────────────┤
│  ℹ️ 5 results found for "type:system SAP OR ADP OR NetSuite"     │
│  [◀ Prev]     Showing 1-5 of 5 results      [Next ▶]             │
└──────────────────────────────────────────────────────────────────┘

Legend:
╔═══╗ = Highlighted node (blue border + glow)
│   │ = Standard node (no highlight)
①②③ = Search result rank badges

Example Highlighting Scenarios

Scenario 1: Single Entity Lookup

Query: "Salesforce CRM Integration"
Results: 1 match

Behavior:

  1. Graph pans to center Salesforce node
  2. Zooms to 150%
  3. Highlights node with blue border + glow + magnifying glass icon
  4. Status message: "1 result found"
  5. User can press Enter to open detail panel

Scenario 2: Compliance Audit

Query: tag:GDPR status:active
Results: 23 matches across 4 domains

Behavior:

  1. Graph zooms out to fit all 23 nodes
  2. All matching nodes highlighted with numbered badges (1-23)
  3. Navigation controls appear: "Showing 1-10 of 23 results"
  4. User presses Tab to cycle through results
  5. Screen reader announces: "Search result 1 of 23: Customer Data Sync, Integration entity, GDPR compliance tag, owned by Data Protection Team"

Query: owner:"Sales Team" type:integration
Results: 12 matches

Behavior:

  1. Graph displays first 10 results with zoom-to-fit
  2. All 10 highlighted with gradient coloring (dark blue for top-ranked, lighter blue for lower)
  3. User clicks "Next" button → Graph pans to results 11-12
  4. User presses Esc → All highlights cleared, graph returns to default view

Best Practices

  • Use autocomplete – Let autocomplete guide you to valid entity names and reduce typos
  • Leverage filters early – Start with type: or domain: to narrow search space before adding keywords
  • Save recurring queries – Create saved searches for weekly/monthly compliance checks and audits
  • Use quotes for exact phrases"Order Processing Service" (exact match) vs Order Processing Service (fuzzy match)
  • Combine keyboard shortcuts – Press Ctrl+K to focus search, arrow keys to navigate results, Enter to select
  • Review search tips – Hover over icon in search bar for context-specific syntax examples
  • Avoid overly broad queries – Searching just "Service" without filters may return thousands of results
  • Don't rely on fuzzy search alone – Use filters for precise compliance/audit queries
  • Be cautious with wildcards – Wildcard searches (*Order*) are slower on large datasets

Troubleshooting

No Results Found

Problem: Search returns "No results found" even though entity exists.

Solutions:

  1. Check spelling – Use fuzzy search tolerance (allow 1-2 character differences)
  2. Verify entity visibility – Ensure you have permissions to view the entity
  3. Check active filters – Remove status: or domain: filters that may be excluding results
  4. Try partial search – Search "SAP" instead of "SAP Finance Integration Complete"
  5. Use entity type filter – Add type:integration to search specific entity types

Slow Search Performance

Problem: Search takes >3 seconds to return results.

Solutions:

  1. Use more specific filters – Add type:, owner:, or domain: to reduce search space
  2. Avoid wildcard searches – Remove leading wildcards (*Order is slower than Order*)
  3. Clear browser cache – Old cached search index may be causing conflicts
  4. Contact administrator – Server-side indexing may need rebuilding

Autocomplete Not Working

Problem: Autocomplete dropdown doesn't appear when typing.

Solutions:

  1. Type at least 2 characters – Autocomplete requires minimum 2 characters
  2. Check browser JavaScript – Ensure JavaScript is enabled and no console errors
  3. Verify network connection – Autocomplete requires server communication for server-side search
  4. Clear autocomplete cache – Mapify > Settings > Search > Clear Autocomplete Cache

  • [Saved Views]:/Mapify/Features/Saved%20Views.md – Save graph configurations with filters
  • [Repository Model]:/Repository%20Model/Overview.md – Understand entity types and relationships
  • [Custom Metadata]:/Repository%20Model/Custom%20Metadata/Overview.md – Add searchable custom fields
  • [Monitoring]:/Monitoring/Overview.md – Search entity status and health metrics
  • [Ownership and Team Management]:/Mapify/Features/Ownership%20and%20Team%20Management.md – Filter by owner and team

Next Steps

  • Learn about visual highlighting – See how search results are highlighted in the graph: [Search Results Highlighting]:/Mapify/Features/Search%20and%20Discovery.md#visual-highlighting
  • Try search examples – Follow step-by-step guide: [Getting Started with Search]:/Mapify/Getting%20Started/Searching%20and%20Filtering.md
  • Configure advanced filters – Customize entity types and metadata indexed for search
  • Share saved searches with team – Create team-wide saved searches for common compliance checks

Need Help? Contact Nodinite Support or consult the [Mapify User Community]:/Community/Overview.md for search tips and best practices.