LOCAL-FIRST CSV EDITOR
Edit the values. Leave the file alone.
Browser-only, format-preserving CSV editor with Shift_JIS support
Refrain Sheet is a format-preserving CSV and spreadsheet editor that runs entirely in your browser. You edit field values; delimiters, quoting, surrounding whitespace, line endings, encodings, BOMs, undecodable bytes and malformed regions all stay exactly as they were.
Open and save with no edits, and the output is byte-for-byte identical.
THE PROBLEM
Most editors damage a CSV just by opening it.
Open a CSV in a normal spreadsheet app and the encoding shifts, quotes appear and disappear, line endings get unified, leading zeros and dates turn into something else. A one-cell change becomes a whole-file diff. Refrain Sheet does the opposite.
What a normal save never does
- unify line-ending styles or delimiters
- alter the header layout
- add or remove whitespace
- add or remove quotes unnecessarily
- add or remove BOMs
- repair malformed CSV
- replace undecodable bytes in unmodified fields
An edit touches one field's byte range
Change a cell and only that field is reserialized. Every other byte is left alone. A quoted field stays quoted, and an unquoted one gains quotes only when the new value truly needs them.
FEATURES
Built for the messy CSVs people actually get.
Encoding detection, honest diagnostics for malformed files, IME-safe editing — the parts that usually go wrong, handled deliberately.
Encodings and save options
UTF-8 (with or without BOM), Shift_JIS / CP932 and EUC-JP are supported, detected automatically, and reinterpretable at any time via Reopen with Encoding — which never alters the original bytes. On save you choose encoding, BOM and line endings independently.
- Characters the target encoding can't represent cancel the save by default, with a per-cell report
- Line-ending conversion rewrites terminators only — a missing final newline is never added
- The status bar always shows encoding, delimiter, line endings and file size
Malformed CSV opens — unrepaired
Unclosed quotes, invalid text after a closing quote, inconsistent field counts — every problem is listed with its row, column and a plain explanation. Nothing is normalized. Choose Open Anyway and malformed regions are preserved byte-for-byte as long as you don't edit them.
Menu-first UI, IME-safe editing
A desktop-style menu bar is the single visible set of commands, and every one of them is reachable from the keyboard. Japanese and CJK input is safe from the very first keystroke — the first Romaji character joins the composition instead of leaking as a Latin letter.
- While composing, Enter / Esc / arrows belong to the IME, never to the cell
- Browser-reserved keys (Ctrl+W, Ctrl+F, Ctrl+T, reload, zoom) are never intercepted
- Alt+Enter inserts a line break; multi-line values round-trip through CSV, RSF and the clipboard
RSF SPREADSHEET
When you need a spreadsheet, there's RSF
Plain CSV can't hold formulas, structural edits or metadata without breaking the guarantee. So those live in a separate .rsf document, created only by an explicit conversion that never touches the original .csv.
FORMULAS
55 functions: SUM, XLOOKUP, SUMIFS, TEXT, FILTER, UNIQUE and more
WORKBOOKS
Multiple worksheets, cross-sheet references, absolute/relative refs, cycle detection
DATA TOOLS
Filtering, auto-fit, selection statistics, CSV and XLSX export
NO EVAL
A hand-written formula engine — no eval, no new Function, no macros
DETAILS
English UI and dark theme, built in.
Japanese and English are both first-class UI languages. The theme follows your system by default and can be pinned to light or dark. Display state never changes CSV bytes, RSF data or formula results.
COMPARISON
How it differs from a normal spreadsheet app.
Refrain Sheet is not an Excel replacement. It is a tool for fixing a CSV without damaging the file it lives in.
| Excel / typical spreadsheet apps | Online CSV editors | Refrain Sheet | |
|---|---|---|---|
| Open and save, no edits | Encoding, quoting and line endings may all change | Usually reserialized in full | Byte-for-byte identical |
| Editing a single cell | The whole file is rewritten | The whole file is rewritten | Only that field's byte range |
| Shift_JIS / CP932 | Environment-dependent; mojibake and silent conversion are common | Often unsupported | Detected, reinterpretable, and selectable on save |
| Malformed CSV | Silently repaired and normalized | Frequently fails to load | Diagnosed, then opened with the damage preserved |
| Leading zeros, dates, long numbers | Type inference can rewrite them | Varies by implementation | Values stay as written — no inference |
| Where your data goes | Local (server for cloud editions) | Uploaded to a server | Nowhere. Zero network access |
| Setup | License and installation | Sometimes an account | One HTML file — works over file:// |
Comparisons describe typical behaviour in common setups. Refrain Sheet's own guarantees are defined by its README and test suite.
SECURITY
Designed so nothing leaves the page.
Built on the assumption that your CSV is confidential. There are no runtime network connections at all.
Zero network access
The CSP sets default-src 'none' and connect-src 'none'. No CDN, external fonts, APIs, analytics or telemetry.
Nothing is executed
Cell content is never interpreted as HTML; there is no innerHTML, eval, new Function or macro anywhere. Formulas run in a sandboxed engine.
Supply chain discipline
One production dependency, enforced lockfiles, install scripts disabled, and releases shipped with SHA-256 checksums, an SBOM and signed build provenance.
GET STARTED
Three steps.
Open it in a browser
Just open the hosted web app. No installation, no account, no setup.
Drag and drop a CSV
Drop files anywhere in the window; each one opens in its own tab.
Or run it offline
Download a release ZIP, extract it, and double-click index.html. It works over file://.
Questions
Where does my data go?
Nowhere. Files are read inside the browser and saved back to your own device. Runtime network access is blocked at the CSP level.
Is this an Excel replacement?
No — different purpose. Refrain Sheet fixes CSV files without damaging them; formulas and structural edits require an explicit conversion to an .rsf spreadsheet. Excel compatibility is not claimed.
How large a file can it open?
The default limit is 512 MiB (adjustable from 16 MiB to 2 GiB) and oversized files are refused before their bytes are read. Rendering is virtualized, but hundred-megabyte files can still feel slow.
Which encodings are unsupported?
UTF-16 and ISO-2022-JP are not supported in this release. Such files still open with a best-effort interpretation and a warning, and their bytes remain untouched.
Can it always overwrite the original file?
In Chromium-based browsers, yes, via the File System Access API. Firefox and Safari fall back to a download save, and the app tells you which kind of save happened.
Open one of your own CSVs.
No install. In a few seconds you can confirm that saving produces no diff at all.