Viewport is a native macOS application for inspecting Apache Parquet and CSV files efficiently. It combines the performance of native SwiftUI with the data processing power of the Python scientific stack (Pandas, PyArrow) served via a local FastAPI backend.
- Native Experience: Built with SwiftUI for a smooth, native macOS look and feel.
- Large Dataset Support: Implements virtualization and pagination to load data on-demand, ensuring the UI remains responsive even with large files.
- Self-Contained: Uses PyInstaller to bundle a complete Python environment inside the app bundle. No need for users to install Python or dependencies.
- Robust Typing: Handles complex Parquet data types (timestamp normalization, null handling) via Pandas.
- Hybrid Architecture: Leverages local Uvicorn/FastAPI server for reliable IPC and async data serving.
Download the latest version from the Releases Page.
- Download
Viewport.dmg. - Open the disk image and drag Viewport to your Applications folder.
- Launch Viewport.
- Click Open Parquet File.
- Select any
.parquetfile to instantly view its contents.
To build the standalone app manually or for development:
- macOS
- Xcode (or Swift command line tools)
- Python 3
# 1. Clone the repository
git clone https://github.com/dillorr/viewport.git
cd viewport
# 2. Make the build script executable
chmod +x scripts/bundle.sh
# 3. Create the App
./scripts/bundle.shOnce complete, Viewport.app will appear in the project folder. You can drag this to your Applications folder or open it directly.
open Viewport.appTo distribute the app, you can create a standard macOS disk image (.dmg) using the included utility script:
# Make the dmg script executable (if not already)
chmod +x scripts/create_dmg.sh
# Generate the DMG
./scripts/create_dmg.shThis will generate Viewport.dmg containing the signed application and an Applications folder shortcut.
This project is licensed under the terms of the MIT License.
