Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jesuscc1993/rom-viewer
Displays a list of ROMs, grouped by platform.
https://github.com/jesuscc1993/rom-viewer
app desktop launcher rom viewer web
Last synced: about 1 month ago
JSON representation
Displays a list of ROMs, grouped by platform.
- Host: GitHub
- URL: https://github.com/jesuscc1993/rom-viewer
- Owner: jesuscc1993
- License: mit
- Created: 2022-08-02T16:50:24.000Z (over 2 years ago)
- Default Branch: develop
- Last Pushed: 2024-11-07T21:27:17.000Z (about 1 month ago)
- Last Synced: 2024-11-07T22:28:56.359Z (about 1 month ago)
- Topics: app, desktop, launcher, rom, viewer, web
- Language: JavaScript
- Homepage:
- Size: 4.51 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ROM Viewer
Displays a list of ROMs, grouped by platform.
![preview](preview.png)
Comes in two versions:
### Web version
Pure HTML version.
Loads faster but does not have the capability to run roms on click.[Web version readme](/web-version/README.md)
### Desktop version
Integrated with NeutralinoJS.
Loads slower but does have the capability to run roms on click.[NeutralinoJS version readme](/src/README.md)
## Cover lookup
The app will look for covers matching the ROM's name. Text between parenthesis or brackets will be ignored.
_e.g.:_
Given ROM filename
`"Foo [bar] (baz) {qux}.iso"`,
a cover with filename
`"Foo.jpg"`
will be looked up.
## Config description
### Application settings
| property | description | required | type | default |
| -------------- | ------------------------------------------------------------- | -------- | ------- | --------- |
| coverFontSize | Font size for the text used when no cover image is available. | optional | string | "1.25em" |
| coverPadding | Padding for the text used when no cover image is available. | optional | boolean | "16px" |
| coverWidth | Width of each game cover. | optional | string | "192px" |
| maxColumns | Maximum cover per row. | optional | integer | 7 |
| minCoverHeight | Minimum cover height. | optional | string | "136px" |
| showRomCount | Show number of roms for each platform. | optional | boolean | true |
| showShadows | Show shadows on some elements, such as rom covers. | optional | boolean | true |
| sidebarWidth | Width of the sidebar. | optional | string | "192px" |
| theme | Theme ("windows", "steam" or "discord"). | optional | string | "windows" |Example:
```
"appSettings": {
"coverFontSize": "1.25em",
"coverPadding": "16px",
"coverWidth": "192px",
"maxColumns": 7,
"minCoverHeight": "136px",
"showRomCount": true,
"showShadows": true,
"sidebarWidth": "192px",
"theme": "windows",
}
```
### Platform elements
| property | description | required | type | example |
| ------------ | ------------------------------------------------------------------------------------------------------ | ----------------------------------- | -------------- | ------------------------------------------------ |
| name | Name of the platform. Must match the name of the folder containing the roms. | required for non-separator elements | string | "PS1" |
| label | Label of the platform. Will only display in the central pane. Defaults to the platform's name. | optional | string | "PS1 (PlayStation 1)" |
| coverPath | Path to the covers for this platform; relative to the root coverPath. Defaults to the platform's name. | optional | string | "PS1" |
| emulatorPath | Path to the emulator to be used to run the platform's games; relative to the root emulatorPath. | required | string | "DuckStation/duckstation-qt-x64-ReleaseLTCG.exe" |
| romPath | Path to the roms for this platform; relative to the root romPath. Defaults to the platform's name. | optional | string | "PS1" |
| roms | List of roms. | optional | Array | (see below) |
| type | Element type. To be used to add empty labels or separators. | optional | string | "label" |Platform example:
```
{
"name": "PS1",
"emulatorPath": "DuckStation/duckstation-qt-x64-ReleaseLTCG.exe",
"roms": [
"Ape Escape [SCUS-94423].bin"
]
}
```Label example:
```
{
"name": "Playstation",
"type": "label"
}
```Separator example:
```
{
"type": "separator"
}
```
### RomType
| property | description | required | type | example |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------ | ------- |
| name | Name to display for the rom; does not need to match the file name. Will also be used for the cover lookup. Defaults to the roms path. | optional | string | "PS1" |
| path | Path to the rom; relative to the platform's romPath. | required | string | "PS1" |
| coverPath | Path to the covers for this platform; relative to the root coverPath. Defaults to the platform's coverPath. | optional | string | "PS1" |Example:
```
{
"name": "Castlevania - Symphony of the Night",
"path": "Akumajou Dracula X - Gekka no Yasoukyoku.bin"
}
```or
```
{
"path": "Ape Escape [SCUS-94423].bin"
}
```or
```
"Ape Escape [SCUS-94423].bin"
```