Juergen Kunz 2edec4013f fix: column view preserves previous columns during navigation
Only reset columns when bucket changes, not when prefix changes.
Internal folder navigation is handled by selectFolder() which
properly appends new columns while preserving previous ones.
2026-01-23 23:38:43 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00
2026-01-23 22:15:51 +00:00

@git.zone/tsview

A CLI tool for viewing S3 and MongoDB data with a web UI.

Installation

npm install -g @git.zone/tsview
# or
pnpm add -g @git.zone/tsview

Usage

CLI

# Start viewer (auto-finds free port from 3010+)
tsview

# Force specific port
tsview --port 3000

# S3 viewer only
tsview s3

# MongoDB viewer only
tsview mongo

Configuration

tsview reads configuration from .nogit/env.json (the same format used by gitzone service):

{
  "S3_ENDPOINT": "localhost",
  "S3_PORT": "9000",
  "S3_ACCESSKEY": "minioadmin",
  "S3_SECRETKEY": "minioadmin",
  "S3_USESSL": false,
  "MONGODB_URL": "mongodb://localhost:27017",
  "MONGODB_NAME": "mydb"
}

Programmatic API

import { TsView } from '@git.zone/tsview';

const viewer = new TsView();

// Option 1: Load from env.json (gitzone service)
await viewer.loadConfigFromEnv();

// Option 2: Custom local config (MinIO + local MongoDB)
viewer.setS3Config({
  endpoint: 'localhost',
  port: 9000,
  accessKey: 'minioadmin',
  accessSecret: 'minioadmin',
  useSsl: false
});

// Option 3: Cloud config (AWS S3 + MongoDB Atlas)
viewer.setS3Config({
  endpoint: 's3.amazonaws.com',
  accessKey: 'AKIAXXXXXXX',
  accessSecret: 'secret',
  useSsl: true,
  region: 'us-east-1'
});

viewer.setMongoConfig({
  mongoDbUrl: 'mongodb+srv://user:pass@cluster.mongodb.net',
  mongoDbName: 'mydb'
});

// Start on auto-found port
const port = await viewer.start();
console.log(`Viewer running on http://localhost:${port}`);

// Or force specific port
await viewer.start(3500);

// Stop when done
await viewer.stop();

Features

S3 Browser

  • Column View: Mac Finder-style navigation with horizontal columns
  • List View: Flat list of all keys with filtering
  • Preview Panel: View images, text, and JSON files
  • Operations: Download, delete files

MongoDB Browser

  • Database/Collection Navigation: Hierarchical sidebar
  • Documents Table: Paginated view with filtering
  • Document Editor: Edit documents with JSON syntax highlighting
  • Index Management: View, create, and drop indexes

Development

# Install dependencies
pnpm install

# Build (bundles UI + compiles TypeScript)
pnpm build

# Run tests
pnpm test

# Run in development mode
./cli.ts.js

License

MIT License - see license for details.

Description
a unified UI for viewing whats going on with an app.
Readme 22 MiB
Languages
TypeScript 99.7%
HTML 0.2%
JavaScript 0.1%