Skip to content

Commit

Permalink
Update README
Browse files Browse the repository at this point in the history
  • Loading branch information
ErikKalkoken committed Jul 6, 2024
1 parent 2578240 commit 324466f
Showing 1 changed file with 67 additions and 15 deletions.
82 changes: 67 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,94 @@
# JSON Viewer

JSON Viewer is a desktop app for browsing large JSON files. It runs on Linux, Windows 10/11 and Mac OS X (Experimental).
JSON Viewer is a desktop app for browsing large JSON files. It runs on Linux, Windows and Mac (Experimental).

[![GitHub Release](https://img.shields.io/github/v/release/ErikKalkoken/jsonviewer)](https://github.com/ErikKalkoken/jsonviewer)
[![build status](https://github.com/ErikKalkoken/jsonviewer/actions/workflows/ci-cd.yml/badge.svg)](https://github.com/ErikKalkoken/jsonviewer/actions/workflows/ci-cd.yml)
[![GitHub License](https://img.shields.io/github/license/ErikKalkoken/jsonviewer)](https://github.com/ErikKalkoken/jsonviewer)

## Installation
## Contents

Please follow the instructions below to install JSON viewer on your platform.
- [Key Features](#key-features)
- [Screenshots](#screenshots)
- [How to run](#how-to-run)
- [Attributions](#attributions)

## Key Features

- Browse through a JSON document in classic tree structure
- Ability to view large JSON files (>100MB, >1M elements)
- Single executable file, no installation required
- Desktop app that runs on Windows, Linux and macOS (experimental)
- Automatic dark and light mode

## Screenshots

![screenshot](https://cdn.imgpile.com/f/fkuNdSB_xl.png)

## How to run

JSON Viewer is designed to run directly on all platforms without requiring installation. You find the latest packages for all supported platforms on the [releases page](https://github.com/ErikKalkoken/jsonviewer/releases):

- [Linux AppImage](#appimage)
- [Linux TAR file](#tar)
- [Windows](#windows)
- [MAC](#mac-os)
- [Build and run directly](#build-and-run-directly)

### Linux

tbd.
There are two packages for Linux:

### Windows
- AppImage
- TAR

We recommend the AppImage package, since it does not require local installation or root privileges to run. The TAR package is there as backup, in case your system can not run AppImages. For more information on the AppImage format please see the [Appimage website](https://appimage.org/).

#### AppImage

tbd.
Download the latest AppImage file from the releases page and place it a local folder of your choosing (e.g. `~/Applications` or `~/.local/bin`).

### MAC
Make the AppImage file executable. The execute it ot start the app.

tbd.
> [!TIP]
> Should you get the following error: `AppImages require FUSE to run.`, you need to first install FUSE on your system. Please see [this page](https://docs.appimage.org/user-guide/troubleshooting/fuse.html#the-appimage-tells-me-it-needs-fuse-to-run) for details.
### Build and run on-the-fly
#### TAR

If your system is configured to run [Fyne](https://fyne.io/) apps, you can build and run this app directly from the command line:
First download the TAR file from the release page.

Then install the app on your desktop with:

```sh
go run github.com/ErikKalkoken/jsonviewer@latest
sudo tar xvfJ evebuddy-v1.0.0-linux-amd64.tar.xz -C /
```

For more information on how to configure your system for Fyne please see: [Getting Started](https://docs.fyne.io/started/).
The above command will install the app for all users on your system. User specific data will be stored in the home directories of each user.

This app is currently under development. Use at your own risk.
### Windows

First download the windows zip file from the latest release on Github.

Then unzip the file into a directory of your choice and run the .exe file to start the app.

### Mac OS

> [!NOTE]
> The MAC version is currently experimental only, since we have not been able to verify that the release process actually works. We would very much appreciate any feedback on wether the package works or what needs to be improved.
First download the darwin zip file from the latest release on Github.

Then unzip the file into a directory of your choice and run the .app file to start the app.

## Application performance
### Build and run directly

JSON viewer is designed to view and browse large JSON files. We found that the key limiting factor for viewing large JSON files is physical RAM. For example on a Linux laptop with 8 GB RAM we were able to view JSON files with ~350 MB size and ~20M elements. Viewing a file of that size consumed ~6.5 GB of RAM, which was about the maximum amount of memory available to applications on that system.
If your system is configured to build [Fyne](https://fyne.io/) apps, you can build and run this app directly from the repository with the following command:

```sh
go run github.com/ErikKalkoken/jsonviewer@latest
```

For more information on how to configure your system for Fyne please see: [Getting Started](https://docs.fyne.io/started/).

## Attributions

Expand Down

0 comments on commit 324466f

Please sign in to comment.