English · 日本語
ZASSHA turns your screen recordings into clear, reproducible steps you can share. Upload a video, click Analyze, and export to Word, PowerPoint, or Excel.
— This README focuses on everyday use. A short developer note is at the end.
- Install dependencies
npm install- Set your API key
cp .env.example .env.local
# open .env.local and set GEMINI_API_KEY=...- Start ZASSHA
npm startThen open http://localhost:3000 in your browser.
- Add videos
- Drag & drop files into the left sidebar, or click the upload area and pick
video/*files.
- Choose analysis mode
- Summary: short, concise output (500–800 chars).
- Detail: full step‑by‑step output with timestamps and tools.
- (Optional) Add a hint
- Write a short sentence about the task or goal (e.g., “Change Slack notification settings”). This improves accuracy.
- Click Analyze
- Progress appears per file. Large files (≥ 50 MB) upload in resumable chunks automatically.
- Review the result
- Overview: short description of the video.
- Business Inference: what the operator is trying to check/confirm.
- Business Details: a table of steps and operations. Each operation shows a thumbnail; hover to preview the clip, click to open a larger player.
- Export your document
- Click Export on the file’s card and choose:
- Word (.docx): headings + text with screenshots.
- PowerPoint (.pptx): one slide per operation. Screenshot + caption on the slide; details (Used Tool / Timestamp / Inference) in slide Notes.
- Excel (.xlsx): rows with No., Step, Inference, Used Tool, Timestamp, Operation.
- Filenames are like
zassha_<original>_<YYYYMMDD>.*.
- Switch language and theme
- Footer: EN/JA toggle; light/dark theme toggle.
- Keep the recording focused on the task; avoid rapid app switching.
- Record at 1080p+ if possible; UI text becomes easier to recognize.
- Enter a hint when the goal isn’t obvious from the video alone.
- “API key is not configured”
- Edit
.env.localand setGEMINI_API_KEY, then restartnpm start.
- Edit
- Large file stalls
- Resumable upload is automatic. For very long videos, server‑side segmentation can help (requires
ffmpeg; see “Advanced”).
- Resumable upload is automatic. For very long videos, server‑side segmentation can help (requires
- No thumbnails or previews
- Ensure the video can play in your browser. Some codecs may not preview; export will still work.
- PowerPoint fonts look different
- ZASSHA asks for “Yu Gothic UI”. If unavailable, PowerPoint uses a fallback font.
- Your video is processed via Google’s Gemini Files API. If server‑side segmentation is enabled, the server temporarily splits the video before uploading segments to Gemini. Captured screenshots are generated in your browser for export files.
- A modern browser (Chrome/Edge/Firefox/Safari).
- Node.js 20.9+ (see
.nvmrc). - Optional for very long videos:
ffmpegon the server to enable segmentation.
- Start/stop
npm start(ornpm run dev) — runs athttp://localhost:3000.
- Lint/typecheck
npm run lint,npm run typecheck.
- Folders
src/features/analysis— parsed result, export menu, segment playersrc/features/upload— sidebar uploadersrc/components— UI primitives and contextssrc/lib— parsing/export utilities
- Optional segmentation
- Set
ZASSHA_SEGMENT_LEN(seconds) in.env.local. Requiresffmpegin PATH. If unset, the app analyzes the whole video without splitting.
- Set
The source code in this repository is available under the MIT License. See LICENSE.
The ZASSHA name, logos, and CORe Inc. branding are not granted under the MIT License and remain their respective owners' trademarks.