Skip to content

kochj23/ExcelExplorer

ExcelExplorer v1.2.0

AI-powered Excel file analyzer with native XLSX export, local AI processing, and macOS Widget

View, analyze, and export Excel files with AI-powered insights—all running locally on your Mac with Apple MLX (Machine Learning eXtensions).


What is ExcelExplorer?

ExcelExplorer is a native macOS application for viewing, analyzing, and exporting Excel files (.xlsx, .xls, .csv (Comma-Separated Values)) with built-in AI capabilities. It provides a fast, native interface for working with spreadsheets and includes AI-powered features for data analysis, all running locally on Apple Silicon.

Key Benefits:

  • Native XLSX Export: Full Excel format writing with proper OOXML structure
  • AI Analysis: Summarize data, detect patterns, generate insights
  • MLX Backend: Apple Silicon AI processing, 100% local
  • macOS Widget (v1.2.0): Quick access to recent files and stats from Notification Center
  • Fast Performance: Native Swift implementation, no Electron overhead
  • Privacy First: All processing on your Mac

Perfect For:

  • Data Analysts: Quick Excel file viewing and analysis
  • Privacy-Conscious: Keep sensitive data local
  • Apple Silicon Users: Optimized for M1/M2/M3/M4
  • Developers: Programmatic Excel export from Swift

What's New in v1.2.0 (February 2026)

macOS Widget Extension

WidgetKit integration for quick access:

  • Small Widget: Shows current file name and stats or quick open action
  • Medium Widget: Recent files list + current file stats side-by-side
  • Large Widget: Detailed view with file stats, AI status, and recent files list

Widget Features:

  • Recent files list (up to 10 files)
  • Current file statistics (rows, columns, sheets)
  • AI analysis status indicator
  • Quick open actions via deep links
  • Automatic refresh when files are opened

App Group Data Sharing:

  • Uses group.com.jkoch.excelexplorer for data sharing
  • Syncs file data automatically when workbooks are opened
  • Tracks AI analysis progress in real-time

Deep Link Actions:

  • excelexplorer:// - Open app
  • excelexplorer://open?path=<path> - Open specific file
  • excelexplorer://recent - Show recent files
  • excelexplorer://analyze - Start AI analysis

What's New in v1.1.0 (January 2026)

XLSX Export Implementation

Full Excel format writing:

  • Complete OOXML (Office Open XML) Spec: Proper XML structure ([Content_Types].xml, workbook.xml, worksheets, styles)
  • Shared Strings: Efficient string deduplication
  • Multiple Data Types: Text, numbers, booleans, dates, formulas
  • ZIP Compression: Standard XLSX package format
  • Excel Compatible: Opens in Excel, Numbers, LibreOffice
  • Large Dataset Support: Up to 1,048,576 rows x 16,384 columns

Usage:

try await ExcelWriter.writeXLSX(workbook: workbook, to: outputURL)

MLX Backend Implementation

Apple Silicon native AI:

  • Local Processing: No cloud, no internet required
  • Model Support: mlx-community models (Llama, Mistral, Phi)
  • Process Management: Proper subprocess handling
  • Error Handling: Installation detection and fallback
  • Performance: Neural Engine acceleration

Features

Core Functionality

  • Excel File Viewing: .xlsx, .xls, .csv support
  • Multi-Sheet Support: Navigate between sheets
  • Cell Editing: Modify cell values and formulas
  • XLSX Export: Write native Excel format
  • CSV Export: Standard CSV with customizable delimiters
  • Search & Filter: Find data quickly
  • Formula Evaluation: Calculate formula results

AI Features

  • Data Summarization: AI-generated dataset summaries
  • Pattern Detection: Identify trends and anomalies
  • Column Analysis: Automatic data type detection
  • Insights Generation: AI-powered data insights
  • Query Interface: Natural language data queries
  • MLX Backend: Local AI processing

macOS Widget (v1.2.0)

  • Recent Files: Quick access to recently opened spreadsheets
  • File Stats: View row/column counts at a glance
  • AI Status: Monitor analysis progress
  • Quick Actions: Open files directly from widget

Data Operations

  • Sort: Sort by any column
  • Filter: Filter rows by criteria
  • Search: Find text across all sheets
  • Statistics: Basic stats (sum, avg, min, max)
  • Duplicate Detection: Find duplicate rows
  • Data Validation: Type checking and validation

Security

Privacy & Data Protection

  • 100% Local Processing: Files never leave your Mac
  • No Cloud Upload: All operations offline
  • MLX Backend: AI runs on-device via Apple Neural Engine
  • No Telemetry: Zero analytics or tracking
  • Keychain Storage: API keys stored securely in macOS Keychain (not UserDefaults)
  • App Group Isolation: Widget data isolated to app group container

File Security

  • Read-Only by Default: Protects original files
  • Backup Before Save: .backup files created
  • Input Validation: Prevents malformed file attacks
  • Memory Safety: Bounds checking on all array access

Requirements

System Requirements

  • macOS 14.0 (Sonoma) or later (for Widget support)
  • Architecture: Universal (Apple Silicon recommended for MLX)

For MLX Backend

  • Apple Silicon: M1/M2/M3/M4
  • Python 3.9+
  • mlx-lm: pip install mlx-lm
  • 8GB+ RAM

For Ollama Backend

  • Any Mac
  • Ollama: brew install ollama
  • 8GB+ RAM

Dependencies

Built-in:

  • SwiftUI, AppKit, Foundation, WidgetKit

Optional:

  • mlx-lm (for MLX AI)
  • Ollama (for Ollama AI)

Installation

Pre-built Binary

open "/Volumes/Data/xcode/binaries/[latest]/ExcelExplorer-v1.2.0.dmg"

Build from Source

git clone https://github.com/kochj23/ExcelExplorer.git
cd ExcelExplorer
open "ExcelExplorer.xcodeproj"
# Press Cmd+R to build and run

Adding the Widget

  1. Build and run the app at least once
  2. Right-click on Desktop or open Notification Center
  3. Click "Edit Widgets"
  4. Search for "ExcelExplorer"
  5. Choose Small, Medium, or Large widget size
  6. Drag to your preferred location

Usage

Open Excel File

# Launch app
open ~/Applications/ExcelExplorer.app

# Or open file directly
open -a ExcelExplorer ~/Documents/data.xlsx

Export to XLSX

  1. Open file in ExcelExplorer
  2. Make any edits
  3. File -> Export -> XLSX
  4. Choose location
  5. File saved in Excel format

AI Analysis

  1. Select data range
  2. Click "AI Analyze"
  3. Choose analysis type (summarize, patterns, insights)
  4. View AI-generated analysis

Using the Widget

  1. Add the widget to Notification Center
  2. Recent files appear automatically as you open files
  3. Click any file to open it directly
  4. View current file stats at a glance
  5. Monitor AI analysis progress

Widget Architecture

Files

ExcelExplorer Widget/
  ExcelExplorerWidget.swift  - Main widget with Small/Medium/Large views
  WidgetData.swift           - Data models (RecentFile, CurrentFileStats, etc.)
  SharedDataManager.swift    - App Group data sharing manager
  Info.plist                 - Widget extension configuration
  ExcelExplorer_Widget.entitlements - App Group entitlements

Data Flow

  1. Main app opens a file
  2. ExcelDataManager updates shared UserDefaults via App Group
  3. Widget timeline provider reads shared data
  4. Widget displays current file stats and recent files
  5. Timeline refreshes every 15 minutes or on-demand

App Group

  • Identifier: group.com.jkoch.excelexplorer
  • Shared Data: Recent files, current file stats, AI status
  • Storage: UserDefaults suite

Troubleshooting

Can't Open File:

  • Verify file is valid Excel format
  • Check file permissions
  • Try opening in Excel/Numbers first

XLSX Export Fails:

  • Check disk space available
  • Verify write permissions
  • Try smaller dataset first

MLX Not Working:

  • Install: pip install mlx-lm
  • Verify: which mlx_lm.generate
  • Check Apple Silicon Mac

Widget Not Showing:

  • Build and run the app at least once
  • Check Widget Gallery for "ExcelExplorer"
  • Verify App Group entitlements are correct
  • Check Console.app for widget errors

Widget Not Updating:

  • Open a file in the main app to trigger update
  • Widget refreshes automatically every 15 minutes
  • Force refresh by removing and re-adding widget

Version History

v1.2.0 (February 2026)

  • macOS WidgetKit widget extension
  • Small, Medium, Large widget sizes
  • Recent files list in widget
  • Current file stats display
  • AI analysis status indicator
  • Deep link support for quick actions
  • App Group data sharing

v1.1.0 (January 2026)

  • XLSX export implementation
  • MLX backend integration
  • Performance improvements

v1.0.0 (2025)

  • Initial release
  • Excel viewing
  • CSV export
  • Basic AI features

License

MIT License - Copyright 2026 Jordan Koch


Last Updated: February 4, 2026 Status: Production Ready

About

AI-powered Excel and spreadsheet viewer for macOS — open XLSX, CSV, and XLS files with conversational data analysis using local LLMs. Built with Swift and SwiftUI.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages