Spaces:
Running
Running
metadata
title: Xet Object Viewer
emoji: π
colorFrom: purple
colorTo: indigo
sdk: static
pinned: false
app_build_command: pnpm run build:dist && ls -la
app_file: dist/index.html
license: mit
short_description: Display the contents of a xorb or a shard
XORB & Shard File Viewer
A static web application built with Svelte that allows you to upload and analyze XORB or Shard object files to view their metadata structure.
Features
- File Upload: Drag & drop or click to upload XORB and Shard files
- Automatic Detection: Automatically detects file type based on binary structure
- Comprehensive Metadata Display: Shows detailed information about file contents
- Responsive Design: Works on desktop and mobile devices
- Error Handling: Provides clear error messages for invalid files
Supported File Types
π¦ XORB Files
XORB (Xet Orb) files contain collections of compressed chunks with metadata. The viewer displays:
- Chunk count and sizes
- Compression ratios
- Hash information
- Boundary offsets
- Individual chunk details
ποΈ Shard Files
MDB Shard files store file metadata and content-addressable storage information for efficient deduplication. The viewer shows:
- File information entries
- CAS (Content Addressable Storage) data
- Lookup tables
- Timestamps and security keys
- Header and footer details
Development
Prerequisites
- Node.js 18+
- pnpm (or npm/yarn)
Setup
cd xorb-shard-viewer
pnpm install
pnpm run dev
The application will be available at http://localhost:5173
Build for Production
pnpm run build
The static files will be generated in the build
directory.
File Format Support
The application implements binary parsers for:
- XORB Format: Based on the CAS object format with chunk compression and merkle hashing
- Shard Format: MDB shard file format v2 with header, footer, file info, and CAS info sections
Architecture
- Frontend: Svelte + TypeScript
- Parsing: Custom binary parsers for both file formats
- Styling: Component-scoped CSS with responsive design
- Type Safety: Full TypeScript support with detailed type definitions
Browser Compatibility
Works in all modern browsers that support:
- File API
- ArrayBuffer/Uint8Array
- ES2020+ features
Security
- All file processing happens client-side
- No data is uploaded to any server
- Files are processed entirely in the browser's memory