A modern web-based JSON viewer built with Vite and TypeScript that provides an intuitive interface for viewing and interacting with JSON data. Specifically designed for working with DSSE (Dead Simple Signing Envelope) and In-toto specifications.
- Clean and modern user interface
- Real-time JSON data visualization
- Automatic base64 decoding of encoded fields
- Specialized support for DSSE and In-toto specifications
- Version tracking through
version.json - Built with TypeScript for type safety
- Fast development server with hot module replacement
- History panel with persistent storage
- Stores up to 20 recent JSON entries
- Individual item deletion
- Automatic loading of previous entries
- Clear all history option
- Persists across page reloads
This viewer is particularly useful for:
- Viewing and validating DSSE envelopes
- Working with In-toto attestations and metadata
- Decoding base64-encoded payloads automatically
- Inspecting signed metadata and attestations
- Maintaining a history of recently viewed JSON documents
- Node.js (latest LTS version recommended)
- npm (comes with Node.js)
- Clone the repository:
git clone [repository-url]
cd json-viewer- Install dependencies:
npm install- Start the development server:
npm run devThe application will be available at http://localhost:5173
This project uses:
- Vite for fast development and building
- TypeScript for type safety
- Modern web technologies for optimal performance
- Local Storage for persistent data
- Vue.js for reactive UI components
The project maintains version information in version.json, which tracks:
- Current version number
- Last update timestamp
The latest version of JSON Viewer is always available at:
� https://avishayh.github.io/json-viewer
- This is the official GitHub Pages site for this repository.
- The app is always up-to-date with the latest release from the
masterbranch.
Every previous release is preserved and can be accessed at:
https://avishayh.github.io/json-viewer/v/{version}/
For example, to view version 1.9:
https://avishayh.github.io/json-viewer/v/1.9/
The latest release is always available at:
https://avishayh.github.io/json-viewer/latest/
- On every push to
master, a GitHub Actions workflow builds and deploys the app to GitHub Pages. - The workflow automatically increments the minor version (e.g.,
1.9→1.10) inversion.json. - The
latestfolder always contains the most recent release. - The previous
latestis backed up to/v/{version}/before each new release. - The
version.jsonfile is present in the root,/latest/, and each/v/{version}/folder, and contains the current version inMAJOR.MINORformat.
- The version is managed automatically by the release workflow.
- Only the
versionfield is present inversion.json. - The About popup in the app displays the current version.
This project is licensed under the Apache License 2.0.
- Clone the repo, make your changes, and open a pull request.
- All changes to
masterare automatically deployed.
[Add contribution guidelines here]
- Start the development server:
npm run devThe application will be available at http://localhost:5173
This project uses:
- Vite for fast development and building
- TypeScript for type safety
- Modern web technologies for optimal performance
- Local Storage for persistent data
- Vue.js for reactive UI components
The project maintains version information in version.json, which tracks:
- Current version number
The latest version of JSON Viewer is always available at:
👉 https://avishayh.github.io/json-viewer
- This is the official GitHub Pages site for this repository.
- The app is always up-to-date with the latest release from the
masterbranch.
Every previous release is preserved and can be accessed at:
https://avishayh.github.io/json-viewer/v/{version}/
For example, to view version 1.9:
https://avishayh.github.io/json-viewer/v/1.9/
The latest release is always available at:
https://avishayh.github.io/json-viewer/latest/
- On every push to
master, a GitHub Actions workflow builds and deploys the app to GitHub Pages. - The workflow automatically increments the minor version (e.g.,
1.9→1.10) inversion.json. - The
latestfolder always contains the most recent release. - The previous
latestis backed up to/v/{version}/before each new release. - The
version.jsonfile is present in the root,/latest/, and each/v/{version}/folder, and contains the current version inMAJOR.MINORformat.
- The version is managed automatically by the release workflow.
- Only the
versionfield is present inversion.json. - The About popup in the app displays the current version.
This project is licensed under the Apache License 2.0.
- Clone the repo, make your changes, and open a pull request.
- All changes to
masterare automatically deployed.
[Add contribution guidelines here]