diff --git a/.gitignore b/.gitignore
index 0d76c852f..ea62aef3b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -40,4 +40,4 @@ envs.env
mariadb
# data test
-emulation
\ No newline at end of file
+library
\ No newline at end of file
diff --git a/README-DEV.md b/README-DEV.md
new file mode 100644
index 000000000..5bbc0680e
--- /dev/null
+++ b/README-DEV.md
@@ -0,0 +1,89 @@
+# romm
+
+## Project Setup for development
+
+### Create python virtualenv
+
+```sh
+python3 -m venv backend/venv/romm
+```
+
+### Activate romm virtualenv
+
+```sh
+source backend/venv/romm/bin/activate
+```
+
+### Install venv dependencies
+
+```sh
+pip install -r backend/dependencies/requirements.txt
+```
+
+### Create environment variables file with the following variables
+
+```sh
+touch envs.env
+
+# IGDB auth
+CLIENT_ID=""
+CLIENT_SECRET=""
+
+# STEAMGRIDDB API KEY
+STEAMGRIDDB_API_KEY=""
+
+# Library path
+LIBRARY_PATH="library_path/"
+
+# DB related config
+ROMM_DB_HOST=""
+ROMM_DB_PORT=
+ROMM_DB_ROOT_PASSWD=""
+ROMM_DB_USER=""
+ROMM_DB_PASSWD=""
+ROMM_DB_CONFIG_PATH=""
+```
+
+### Export environment variables
+
+```sh
+export $(cat envs.env | xargs)
+```
+
+### Create mariadb docker container
+
+```sh
+docker-compose up -d (to your docker-compose file for run mariadb)
+```
+
+### Install node.js dependencies
+
+```sh
+npm install
+```
+
+## Project Testing
+
+### Activate romm virtualenv
+
+```sh
+source backend/venv/romm/bin/activate
+```
+
+### Export environment variables
+
+```sh
+export $(cat envs.env | xargs)
+```
+
+### Start backend API
+
+```sh
+python3 backend/src/main.py
+```
+
+### Start frontend (compile and hot-reload)
+
+```sh
+npm run dev
+```
diff --git a/README.md b/README.md
index f282fc96e..cb5ea491c 100644
--- a/README.md
+++ b/README.md
@@ -1,93 +1,68 @@
-# romm
+
+

+
RomM (Rom Manager)
+
+
-## Docker image
+# Overview
-[romm](https://hub.docker.com/r/zurdi15/romm)
+Inspired by [Jellyfin](https://jellyfin.org/) and after found that the awesome [Gameyfin](https://github.com/grimsi/gameyfin) project is not supported for arm64 architectures (since my own homelab is only made by 3 rpis) and it is a general game library manager, I decided to develop my own game library solution, focused on retro gaming.
-## Project Setup for development
+For now, it is only available as a docker [image](https://hub.docker.com/r/zurdi15/romm) (amd64/arm64)
-### Create python virtualenv
+## Features
-```sh
-python3 -m venv backend/venv/romm
+* Scans your game library (all at once or by platform) and enriches it with IGDB metadata
+* Access your library via your web-browser
+* Possibility to select one of the matching IGDB results if the scan doesn't get the right one
+* Download games directly from your web-browser
+* Edit your game files directly from your web-browser
+* Set a custom cover for each game [WIP]
+* Upload games directly from your web-browser [WIP]
+* Manage save files directly from your web-browser [WIP]
+* Responsive design
+* Light and dark theme
+
+# Prerequisites
+
+To allow RomM scan your retro games library, it should follow the following structure:
+
+```
+library/
+├─ gbc/
+│ ├─ roms/
+│ │ ├─ rom_1.gbc
+│ │ ├─ rom_2.gbc
+|
+├─ gba/
+│ ├─ roms/
+│ │ ├─ rom_1.gba
+│ │ ├─ rom_2.gba
+|
+├─ gb/
+│ ├─ roms/
+│ │ ├─ rom_1.gb
+│ │ ├─ rom_1.gb
```
-### Activate romm virtualenv
+# Preview
-```sh
-source backend/venv/romm/bin/activate
-```
+## Desktop
-### Install venv dependencies
-```sh
-pip install -r backend/dependencies/requirements.txt
-```
-### Create environment variables file with the following variables
+## Mobile
-```sh
-touch backend/envs.env
+[WIP]
-# IGDB auth
-CLIENT_ID=""
-CLIENT_SECRET=""
+# Docker image
-# STEAMGRIDDB API KEY
-STEAMGRIDDB_API_KEY=""
+Last version of the docker [image](https://hub.docker.com/r/zurdi15/romm/tags)
-# Platforms system path
-PLATFORMS_SYSTEM_BASE_PATH="emulation"
+## Installation
-# DB related config
-ROMM_DB_HOST=""
-ROMM_DB_PORT=
-ROMM_DB_ROOT_PASSWD=""
-ROMM_DB_USER=""
-ROMM_DB_PASSWD=""
-ROMM_DB_CONFIG_PATH=""
-```
+Check the [docker-compose.yml](https://github.com/zurdi15/romm/blob/master/docker/docker-compose.example.yml) example
-### Export environment variables
+## Troubleshoot
-```sh
-export $(cat backend/envs.env | xargs)
-```
-
-### Create mariadb docker container
-
-```sh
-docker-compose up -d (to your docker-compose file for run mariadb)
-```
-
-### Install node.js dependencies
-
-```sh
-npm install
-```
-
-## Project Testing
-
-### Activate romm virtualenv
-
-```sh
-source backend/venv/romm/bin/activate
-```
-
-### Export environment variables
-
-```sh
-export $(cat backend/envs.env | xargs)
-```
-
-### Start backend API
-
-```sh
-python3 backend/src/main.py
-```
-
-### Start frontend (compile and hot-reload)
-
-```sh
-npm run dev
-```
+After the first installation, sometimes the RomM container can have problems connecting with the database. Restarting the RomM container may solve the problem.
diff --git a/backend/src/config/config.py b/backend/src/config/config.py
index d5b060bcf..98fb96104 100644
--- a/backend/src/config/config.py
+++ b/backend/src/config/config.py
@@ -6,15 +6,15 @@ DEV_PORT: int = 5000
DEV_HOST: str = "0.0.0.0"
# PATHS
-EMULATION_BASE_PATH: str = f"{pathlib.Path(__file__).parent.parent.parent.parent.resolve()}/emulation"
+LIBRARY_BASE_PATH: str = f"{pathlib.Path(__file__).parent.parent.parent.parent.resolve()}/library"
DEFAULT_URL_LOGO: str = "https://images.igdb.com/igdb/image/upload/t_cover_big/nocover.png"
-DEFAULT_PATH_LOGO: str = f"/assets/emulation/resources/default/logo_l.png"
+DEFAULT_PATH_LOGO: str = f"/assets/library/resources/default/logo_l.png"
DEFAULT_URL_COVER_L: str = "https://images.igdb.com/igdb/image/upload/t_cover_big/nocover.png"
-DEFAULT_PATH_COVER_L: str = f"/assets/emulation/resources/default/cover_l.png"
+DEFAULT_PATH_COVER_L: str = f"/assets/library/resources/default/cover_l.png"
DEFAULT_URL_COVER_S: str = "https://images.igdb.com/igdb/image/upload/t_cover_small/nocover.png"
-DEFAULT_PATH_COVER_S: str = f"/assets/emulation/resources/default/cover_s.png"
+DEFAULT_PATH_COVER_S: str = f"/assets/library/resources/default/cover_s.png"
# IGDB
diff --git a/backend/src/emulation b/backend/src/emulation
deleted file mode 120000
index e1a9ca31e..000000000
--- a/backend/src/emulation
+++ /dev/null
@@ -1 +0,0 @@
-../../emulation
\ No newline at end of file
diff --git a/backend/src/utils/fs.py b/backend/src/utils/fs.py
index 276374983..4eb7ddd95 100644
--- a/backend/src/utils/fs.py
+++ b/backend/src/utils/fs.py
@@ -5,7 +5,7 @@ from pathlib import Path
import requests
from fastapi import HTTPException
-from config.config import EMULATION_BASE_PATH, DEFAULT_URL_LOGO, DEFAULT_URL_COVER_L, DEFAULT_PATH_COVER_L, DEFAULT_URL_COVER_S, DEFAULT_PATH_COVER_S
+from config.config import LIBRARY_BASE_PATH, DEFAULT_URL_LOGO, DEFAULT_URL_COVER_L, DEFAULT_PATH_COVER_L, DEFAULT_URL_COVER_S, DEFAULT_PATH_COVER_S
from logger.logger import log
@@ -33,7 +33,7 @@ def p_logo_exists(slug: str) -> bool:
Returns
True if logo exists in filesystem else False
"""
- logo_path: str = f"{EMULATION_BASE_PATH}/resources/{slug}/logo.png"
+ logo_path: str = f"{LIBRARY_BASE_PATH}/resources/{slug}/logo.png"
return True if os.path.exists(logo_path) else False
@@ -43,7 +43,7 @@ def get_p_path_logo(slug: str) -> str:
Args:
slug: shor name of the platform
"""
- return f"/assets/emulation/resources/{slug}/logo.png"
+ return f"/assets/library/resources/{slug}/logo.png"
def store_p_logo(slug: str, url_logo: str) -> None:
@@ -54,7 +54,7 @@ def store_p_logo(slug: str, url_logo: str) -> None:
url_logo: url to get logo
"""
logo_file: str = f"logo.png"
- logo_path: str = f"{EMULATION_BASE_PATH}/resources/{slug}"
+ logo_path: str = f"{LIBRARY_BASE_PATH}/resources/{slug}"
res = requests.get(url_logo, stream=True)
if res.status_code == 200:
Path(logo_path).mkdir(parents=True, exist_ok=True)
@@ -68,11 +68,11 @@ def store_p_logo(slug: str, url_logo: str) -> None:
def get_platforms() -> list:
"""Gets all filesystem platforms
- Returns list with all the filesystem platforms found in the EMULATION_BASE_PATH.
+ Returns list with all the filesystem platforms found in the LIBRARY_BASE_PATH.
Automatically discards the default directory.
"""
try:
- platforms: list[str] = list(os.walk(EMULATION_BASE_PATH))[0][1]
+ platforms: list[str] = list(os.walk(LIBRARY_BASE_PATH))[0][1]
if 'resources' in platforms: platforms.remove('resources')
log.info(f"filesystem platforms found: {platforms}")
return platforms
@@ -91,7 +91,7 @@ def r_cover_exists(p_slug: str, filename_no_ext: str, size: str) -> bool:
Returns
True if cover exists in filesystem else False
"""
- logo_path: str = f"{EMULATION_BASE_PATH}/resources/{p_slug}/{filename_no_ext}_{size}.png"
+ logo_path: str = f"{LIBRARY_BASE_PATH}/resources/{p_slug}/{filename_no_ext}_{size}.png"
return True if os.path.exists(logo_path) else False
@@ -103,7 +103,7 @@ def get_r_cover_path(p_slug: str, filename_no_ext: str, size: str) -> str:
filename_no_ext: name of rom file without extension
size: size of the cover -> big as 'l' | small as 's'
"""
- return f"/assets/emulation/resources/{p_slug}/{filename_no_ext}_{size}.png"
+ return f"/assets/library/resources/{p_slug}/{filename_no_ext}_{size}.png"
def store_r_cover(p_slug: str, filename_no_ext: str, url_cover: str, size: str) -> None:
@@ -116,7 +116,7 @@ def store_r_cover(p_slug: str, filename_no_ext: str, url_cover: str, size: str)
size: size of the cover -> big as 'l' | small as 's'
"""
cover_file: str = f"{filename_no_ext}_{size}.png"
- cover_path: str = f"{EMULATION_BASE_PATH}/resources/{p_slug}/"
+ cover_path: str = f"{LIBRARY_BASE_PATH}/resources/{p_slug}/"
sizes: dict = {'l': 'big', 's': 'small'}
res = requests.get(url_cover.replace('t_thumb', f't_cover_{sizes[size]}'), stream=True)
if res.status_code == 200:
@@ -150,14 +150,14 @@ def get_roms(p_slug: str) -> list:
Args:
p_slug: short name of the platform
- Returns: list with all the filesystem roms for a platform found in the EMULATION_BASE_PATH.
+ Returns: list with all the filesystem roms for a platform found in the LIBRARY_BASE_PATH.
Automatically discards the default directory.
"""
try:
- roms_filename = list(os.walk(f"{EMULATION_BASE_PATH}/{p_slug}/roms/"))[0][2]
+ roms_filename = list(os.walk(f"{LIBRARY_BASE_PATH}/{p_slug}/roms/"))[0][2]
roms: list[dict] = [
{'filename': rom,
- 'size': str(round(os.stat(f"{EMULATION_BASE_PATH}/{p_slug}/roms/{rom}").st_size / (1024 * 1024), 2))}
+ 'size': str(round(os.stat(f"{LIBRARY_BASE_PATH}/{p_slug}/roms/{rom}").st_size / (1024 * 1024), 2))}
for rom in roms_filename]
log.info(f"filesystem roms found for {p_slug}: {roms}")
except IndexError:
@@ -175,7 +175,7 @@ def r_exists(p_slug: str, filename: str) -> bool:
Returns
True if rom exists in filesystem else False
"""
- rom_path: str = f"{EMULATION_BASE_PATH}/{p_slug}/roms/{filename}"
+ rom_path: str = f"{LIBRARY_BASE_PATH}/{p_slug}/roms/{filename}"
exists: bool = True if os.path.exists(rom_path) else False
return exists
@@ -183,12 +183,12 @@ def r_exists(p_slug: str, filename: str) -> bool:
def rename_rom(p_slug: str, filename: str, data: dict) -> None:
if data['filename'] != filename:
if r_exists(p_slug, data['filename']): raise HTTPException(status_code=500, detail=f"Can't rename: {data['filename']} already exists.")
- os.rename(f"{EMULATION_BASE_PATH}/{p_slug}/roms/{filename}",
- f"{EMULATION_BASE_PATH}/{p_slug}/roms/{data['filename']}")
+ os.rename(f"{LIBRARY_BASE_PATH}/{p_slug}/roms/{filename}",
+ f"{LIBRARY_BASE_PATH}/{p_slug}/roms/{data['filename']}")
def delete_rom(p_slug: str, filename: str) -> None:
try:
- os.remove(f"{EMULATION_BASE_PATH}/{p_slug}/roms/{filename}")
+ os.remove(f"{LIBRARY_BASE_PATH}/{p_slug}/roms/{filename}")
except FileNotFoundError:
log.warning(f"Rom not found in filesystem: {p_slug}/{filename}")
diff --git a/docker/.dockerignore b/docker/.dockerignore
index ebba929a3..51564637d 100644
--- a/docker/.dockerignore
+++ b/docker/.dockerignore
@@ -7,5 +7,5 @@ venv/
**/__pycache__
__pycache__/
-**/assets/emulation
-../frontend/assets/emulation/
\ No newline at end of file
+**/assets/library
+../frontend/assets/library/
\ No newline at end of file
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 879e66bc3..622e322b8 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -10,7 +10,7 @@ RUN npm run build
FROM ubuntu/nginx:1.18-22.04_edge as production-stage
COPY --from=front-build-stage /front/dist /var/www/html
COPY ./frontend/assets/platforms /var/www/html/assets/platforms
-RUN ln -s /emulation /var/www/html/assets/emulation
+RUN ln -s /library /var/www/html/assets/library
# setup backend
RUN apt update
diff --git a/docker/docker-compose.example.yml b/docker/docker-compose.example.yml
index c5e30bfb6..e8e4e1709 100644
--- a/docker/docker-compose.example.yml
+++ b/docker/docker-compose.example.yml
@@ -12,7 +12,7 @@ services:
- CLIENT_SECRET=${CLIENT_SECRET}
- STEAMGRIDDB_API_KEY=WIP
volumes:
- - ${EMULATION_PATH}:/emulation'
+ - ${LIBRARY_PATH}:/library'
ports:
- '${ROMM_PORT}:80'
restart: "no"
diff --git a/emulation/3ds/roms/metroid samus returns.3ds b/emulation/3ds/roms/metroid samus returns.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/pokemon sun.3ds b/emulation/3ds/roms/pokemon sun.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/pokemon ultra moon.3ds b/emulation/3ds/roms/pokemon ultra moon.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/pokemon ultra sun.3ds b/emulation/3ds/roms/pokemon ultra sun.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/pokemon x.3ds b/emulation/3ds/roms/pokemon x.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/pokemon y.3ds b/emulation/3ds/roms/pokemon y.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/zelda majoras mask.3ds b/emulation/3ds/roms/zelda majoras mask.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/3ds/roms/zelda.3ds b/emulation/3ds/roms/zelda.3ds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gb/roms/pokemon blue.gb b/emulation/gb/roms/pokemon blue.gb
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gb/roms/pokemon red.gb b/emulation/gb/roms/pokemon red.gb
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gb/roms/pokemon yellow.gb b/emulation/gb/roms/pokemon yellow.gb
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/bios/gba.bios b/emulation/gba/bios/gba.bios
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/Need for Speed Underground 2.gba b/emulation/gba/roms/Need for Speed Underground 2.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/pokemon emerald.gba b/emulation/gba/roms/pokemon emerald.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/pokemon firered.gba b/emulation/gba/roms/pokemon firered.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/pokemon leafgreen.gba b/emulation/gba/roms/pokemon leafgreen.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/pokemon ruby.gba b/emulation/gba/roms/pokemon ruby.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/pokemon sapphire.gba b/emulation/gba/roms/pokemon sapphire.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gba/roms/wario land 4.gba b/emulation/gba/roms/wario land 4.gba
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gbc/roms/pokemon gold.gbc b/emulation/gbc/roms/pokemon gold.gbc
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/gbc/roms/pokemon silver.gbc b/emulation/gbc/roms/pokemon silver.gbc
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/n64/bios/n64.bios b/emulation/n64/bios/n64.bios
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/n64/roms/super mario 64.n64 b/emulation/n64/roms/super mario 64.n64
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/castlevania - dawn of sorrow.nds b/emulation/nds/roms/castlevania - dawn of sorrow.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/castlevania - order of ecclesia.nds b/emulation/nds/roms/castlevania - order of ecclesia.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/pokemon black 2.nds b/emulation/nds/roms/pokemon black 2.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/pokemon black.nds b/emulation/nds/roms/pokemon black.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/pokemon white 2.nds b/emulation/nds/roms/pokemon white 2.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/nds/roms/pokemon white.nds b/emulation/nds/roms/pokemon white.nds
deleted file mode 100644
index e69de29bb..000000000
diff --git a/emulation/resources/3ds/Metroid - Samus Returns_l.png b/emulation/resources/3ds/Metroid - Samus Returns_l.png
deleted file mode 100644
index 39fdde10e..000000000
Binary files a/emulation/resources/3ds/Metroid - Samus Returns_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/Metroid - Samus Returns_s.png b/emulation/resources/3ds/Metroid - Samus Returns_s.png
deleted file mode 100644
index b10906e45..000000000
Binary files a/emulation/resources/3ds/Metroid - Samus Returns_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/logo.png b/emulation/resources/3ds/logo.png
deleted file mode 100644
index ecf62156e..000000000
Binary files a/emulation/resources/3ds/logo.png and /dev/null differ
diff --git a/emulation/resources/3ds/metroid samus returns_l.png b/emulation/resources/3ds/metroid samus returns_l.png
deleted file mode 100644
index 2ab1689e1..000000000
Binary files a/emulation/resources/3ds/metroid samus returns_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/metroid samus returns_s.png b/emulation/resources/3ds/metroid samus returns_s.png
deleted file mode 100644
index 5c53b703c..000000000
Binary files a/emulation/resources/3ds/metroid samus returns_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon alpha saphire_l.png b/emulation/resources/3ds/pokemon alpha saphire_l.png
deleted file mode 100644
index 13594c4b4..000000000
Binary files a/emulation/resources/3ds/pokemon alpha saphire_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon alpha saphire_s.png b/emulation/resources/3ds/pokemon alpha saphire_s.png
deleted file mode 100644
index b66b0b55c..000000000
Binary files a/emulation/resources/3ds/pokemon alpha saphire_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon alpha_l.png b/emulation/resources/3ds/pokemon alpha_l.png
deleted file mode 100644
index 13594c4b4..000000000
Binary files a/emulation/resources/3ds/pokemon alpha_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon alpha_s.png b/emulation/resources/3ds/pokemon alpha_s.png
deleted file mode 100644
index b66b0b55c..000000000
Binary files a/emulation/resources/3ds/pokemon alpha_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon moon_l.png b/emulation/resources/3ds/pokemon moon_l.png
deleted file mode 100644
index ba7b9d506..000000000
Binary files a/emulation/resources/3ds/pokemon moon_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon moon_s.png b/emulation/resources/3ds/pokemon moon_s.png
deleted file mode 100644
index e9335c86b..000000000
Binary files a/emulation/resources/3ds/pokemon moon_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon omega ruby_l.png b/emulation/resources/3ds/pokemon omega ruby_l.png
deleted file mode 100644
index 443d42194..000000000
Binary files a/emulation/resources/3ds/pokemon omega ruby_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon omega ruby_s.png b/emulation/resources/3ds/pokemon omega ruby_s.png
deleted file mode 100644
index f6f839260..000000000
Binary files a/emulation/resources/3ds/pokemon omega ruby_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ruby_l.png b/emulation/resources/3ds/pokemon ruby_l.png
deleted file mode 100644
index 443d42194..000000000
Binary files a/emulation/resources/3ds/pokemon ruby_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ruby_s.png b/emulation/resources/3ds/pokemon ruby_s.png
deleted file mode 100644
index f6f839260..000000000
Binary files a/emulation/resources/3ds/pokemon ruby_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon sun_l.png b/emulation/resources/3ds/pokemon sun_l.png
deleted file mode 100644
index 99d4084cc..000000000
Binary files a/emulation/resources/3ds/pokemon sun_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon sun_s.png b/emulation/resources/3ds/pokemon sun_s.png
deleted file mode 100644
index ff6a77601..000000000
Binary files a/emulation/resources/3ds/pokemon sun_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra moon_l.png b/emulation/resources/3ds/pokemon ultra moon_l.png
deleted file mode 100644
index 23964c53b..000000000
Binary files a/emulation/resources/3ds/pokemon ultra moon_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra moon_s.png b/emulation/resources/3ds/pokemon ultra moon_s.png
deleted file mode 100644
index d6df4e082..000000000
Binary files a/emulation/resources/3ds/pokemon ultra moon_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra sun_l.png b/emulation/resources/3ds/pokemon ultra sun_l.png
deleted file mode 100644
index 1e9392c4b..000000000
Binary files a/emulation/resources/3ds/pokemon ultra sun_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra sun_s.png b/emulation/resources/3ds/pokemon ultra sun_s.png
deleted file mode 100644
index 0f8d98705..000000000
Binary files a/emulation/resources/3ds/pokemon ultra sun_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra_l.png b/emulation/resources/3ds/pokemon ultra_l.png
deleted file mode 100644
index 23964c53b..000000000
Binary files a/emulation/resources/3ds/pokemon ultra_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon ultra_s.png b/emulation/resources/3ds/pokemon ultra_s.png
deleted file mode 100644
index d6df4e082..000000000
Binary files a/emulation/resources/3ds/pokemon ultra_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon x_l.png b/emulation/resources/3ds/pokemon x_l.png
deleted file mode 100644
index 2053ebd3e..000000000
Binary files a/emulation/resources/3ds/pokemon x_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon x_s.png b/emulation/resources/3ds/pokemon x_s.png
deleted file mode 100644
index a5b2d1fd5..000000000
Binary files a/emulation/resources/3ds/pokemon x_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon y_l.png b/emulation/resources/3ds/pokemon y_l.png
deleted file mode 100644
index 949bd0970..000000000
Binary files a/emulation/resources/3ds/pokemon y_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon y_s.png b/emulation/resources/3ds/pokemon y_s.png
deleted file mode 100644
index 8b9c884cf..000000000
Binary files a/emulation/resources/3ds/pokemon y_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon_l.png b/emulation/resources/3ds/pokemon_l.png
deleted file mode 100644
index 443d42194..000000000
Binary files a/emulation/resources/3ds/pokemon_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/pokemon_s.png b/emulation/resources/3ds/pokemon_s.png
deleted file mode 100644
index f6f839260..000000000
Binary files a/emulation/resources/3ds/pokemon_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda majoras mask_l.png b/emulation/resources/3ds/zelda majoras mask_l.png
deleted file mode 100644
index 2c5813461..000000000
Binary files a/emulation/resources/3ds/zelda majoras mask_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda majoras mask_s.png b/emulation/resources/3ds/zelda majoras mask_s.png
deleted file mode 100644
index 13cd326e5..000000000
Binary files a/emulation/resources/3ds/zelda majoras mask_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda ocarina of time_l.png b/emulation/resources/3ds/zelda ocarina of time_l.png
deleted file mode 100644
index 3033c86b4..000000000
Binary files a/emulation/resources/3ds/zelda ocarina of time_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda ocarina of time_s.png b/emulation/resources/3ds/zelda ocarina of time_s.png
deleted file mode 100644
index 199e3415b..000000000
Binary files a/emulation/resources/3ds/zelda ocarina of time_s.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda_l.png b/emulation/resources/3ds/zelda_l.png
deleted file mode 100644
index 3033c86b4..000000000
Binary files a/emulation/resources/3ds/zelda_l.png and /dev/null differ
diff --git a/emulation/resources/3ds/zelda_s.png b/emulation/resources/3ds/zelda_s.png
deleted file mode 100644
index 199e3415b..000000000
Binary files a/emulation/resources/3ds/zelda_s.png and /dev/null differ
diff --git a/emulation/resources/default/cover_l.png b/emulation/resources/default/cover_l.png
deleted file mode 100644
index 78b85731e..000000000
Binary files a/emulation/resources/default/cover_l.png and /dev/null differ
diff --git a/emulation/resources/default/cover_s.png b/emulation/resources/default/cover_s.png
deleted file mode 100644
index 33c42739b..000000000
Binary files a/emulation/resources/default/cover_s.png and /dev/null differ
diff --git a/emulation/resources/default/logo.png b/emulation/resources/default/logo.png
deleted file mode 100644
index 78b85731e..000000000
Binary files a/emulation/resources/default/logo.png and /dev/null differ
diff --git a/emulation/resources/gb/logo.png b/emulation/resources/gb/logo.png
deleted file mode 100644
index 76c365c50..000000000
Binary files a/emulation/resources/gb/logo.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon azul_l.png b/emulation/resources/gb/pokemon azul_l.png
deleted file mode 100644
index 79be50336..000000000
Binary files a/emulation/resources/gb/pokemon azul_l.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon azul_s.png b/emulation/resources/gb/pokemon azul_s.png
deleted file mode 100644
index 193f87369..000000000
Binary files a/emulation/resources/gb/pokemon azul_s.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon blue_l.png b/emulation/resources/gb/pokemon blue_l.png
deleted file mode 100644
index 79be50336..000000000
Binary files a/emulation/resources/gb/pokemon blue_l.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon blue_s.png b/emulation/resources/gb/pokemon blue_s.png
deleted file mode 100644
index 193f87369..000000000
Binary files a/emulation/resources/gb/pokemon blue_s.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon red_l.png b/emulation/resources/gb/pokemon red_l.png
deleted file mode 100644
index a5917df53..000000000
Binary files a/emulation/resources/gb/pokemon red_l.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon red_s.png b/emulation/resources/gb/pokemon red_s.png
deleted file mode 100644
index 0754cfb37..000000000
Binary files a/emulation/resources/gb/pokemon red_s.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon yellow_l.png b/emulation/resources/gb/pokemon yellow_l.png
deleted file mode 100644
index 320e3b2e6..000000000
Binary files a/emulation/resources/gb/pokemon yellow_l.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon yellow_s.png b/emulation/resources/gb/pokemon yellow_s.png
deleted file mode 100644
index 6f888c73b..000000000
Binary files a/emulation/resources/gb/pokemon yellow_s.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon_l.png b/emulation/resources/gb/pokemon_l.png
deleted file mode 100644
index a5917df53..000000000
Binary files a/emulation/resources/gb/pokemon_l.png and /dev/null differ
diff --git a/emulation/resources/gb/pokemon_s.png b/emulation/resources/gb/pokemon_s.png
deleted file mode 100644
index 0754cfb37..000000000
Binary files a/emulation/resources/gb/pokemon_s.png and /dev/null differ
diff --git a/emulation/resources/gba/Need for Speed Underground 2_l.png b/emulation/resources/gba/Need for Speed Underground 2_l.png
deleted file mode 100644
index a1a39b8a1..000000000
Binary files a/emulation/resources/gba/Need for Speed Underground 2_l.png and /dev/null differ
diff --git a/emulation/resources/gba/Need for Speed Underground 2_s.png b/emulation/resources/gba/Need for Speed Underground 2_s.png
deleted file mode 100644
index adc55a926..000000000
Binary files a/emulation/resources/gba/Need for Speed Underground 2_s.png and /dev/null differ
diff --git a/emulation/resources/gba/castlevania - aria of sorrow_l.png b/emulation/resources/gba/castlevania - aria of sorrow_l.png
deleted file mode 100644
index 0b506e2e7..000000000
Binary files a/emulation/resources/gba/castlevania - aria of sorrow_l.png and /dev/null differ
diff --git a/emulation/resources/gba/castlevania - aria of sorrow_s.png b/emulation/resources/gba/castlevania - aria of sorrow_s.png
deleted file mode 100644
index b84bbbc40..000000000
Binary files a/emulation/resources/gba/castlevania - aria of sorrow_s.png and /dev/null differ
diff --git a/emulation/resources/gba/castlevania - aria of sorrows_l.png b/emulation/resources/gba/castlevania - aria of sorrows_l.png
deleted file mode 100644
index 0b506e2e7..000000000
Binary files a/emulation/resources/gba/castlevania - aria of sorrows_l.png and /dev/null differ
diff --git a/emulation/resources/gba/castlevania - aria of sorrows_s.png b/emulation/resources/gba/castlevania - aria of sorrows_s.png
deleted file mode 100644
index b84bbbc40..000000000
Binary files a/emulation/resources/gba/castlevania - aria of sorrows_s.png and /dev/null differ
diff --git a/emulation/resources/gba/logo.png b/emulation/resources/gba/logo.png
deleted file mode 100644
index 0d0f32b07..000000000
Binary files a/emulation/resources/gba/logo.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon emerald_l.png b/emulation/resources/gba/pokemon emerald_l.png
deleted file mode 100644
index f88ea512a..000000000
Binary files a/emulation/resources/gba/pokemon emerald_l.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon emerald_s.png b/emulation/resources/gba/pokemon emerald_s.png
deleted file mode 100644
index ef812b06c..000000000
Binary files a/emulation/resources/gba/pokemon emerald_s.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon firered_l.png b/emulation/resources/gba/pokemon firered_l.png
deleted file mode 100644
index 82d0a928b..000000000
Binary files a/emulation/resources/gba/pokemon firered_l.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon firered_s.png b/emulation/resources/gba/pokemon firered_s.png
deleted file mode 100644
index 9df91a693..000000000
Binary files a/emulation/resources/gba/pokemon firered_s.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon leafgreen_l.png b/emulation/resources/gba/pokemon leafgreen_l.png
deleted file mode 100644
index a91dc7a96..000000000
Binary files a/emulation/resources/gba/pokemon leafgreen_l.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon leafgreen_s.png b/emulation/resources/gba/pokemon leafgreen_s.png
deleted file mode 100644
index 944ed2fdf..000000000
Binary files a/emulation/resources/gba/pokemon leafgreen_s.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon ruby_l.png b/emulation/resources/gba/pokemon ruby_l.png
deleted file mode 100644
index 0b3b7e1ee..000000000
Binary files a/emulation/resources/gba/pokemon ruby_l.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon ruby_s.png b/emulation/resources/gba/pokemon ruby_s.png
deleted file mode 100644
index b5e01c10c..000000000
Binary files a/emulation/resources/gba/pokemon ruby_s.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon sapphire_l.png b/emulation/resources/gba/pokemon sapphire_l.png
deleted file mode 100644
index eaa89a3aa..000000000
Binary files a/emulation/resources/gba/pokemon sapphire_l.png and /dev/null differ
diff --git a/emulation/resources/gba/pokemon sapphire_s.png b/emulation/resources/gba/pokemon sapphire_s.png
deleted file mode 100644
index c5b19d8e5..000000000
Binary files a/emulation/resources/gba/pokemon sapphire_s.png and /dev/null differ
diff --git a/emulation/resources/gba/wario land 4_l.png b/emulation/resources/gba/wario land 4_l.png
deleted file mode 100644
index 1de9a9712..000000000
Binary files a/emulation/resources/gba/wario land 4_l.png and /dev/null differ
diff --git a/emulation/resources/gba/wario land 4_s.png b/emulation/resources/gba/wario land 4_s.png
deleted file mode 100644
index f3e955230..000000000
Binary files a/emulation/resources/gba/wario land 4_s.png and /dev/null differ
diff --git a/emulation/resources/gbc/logo.png b/emulation/resources/gbc/logo.png
deleted file mode 100644
index bdabc8158..000000000
Binary files a/emulation/resources/gbc/logo.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon crystal_l.png b/emulation/resources/gbc/pokemon crystal_l.png
deleted file mode 100644
index d611d2961..000000000
Binary files a/emulation/resources/gbc/pokemon crystal_l.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon crystal_s.png b/emulation/resources/gbc/pokemon crystal_s.png
deleted file mode 100644
index 3213f8e48..000000000
Binary files a/emulation/resources/gbc/pokemon crystal_s.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon gold_l.png b/emulation/resources/gbc/pokemon gold_l.png
deleted file mode 100644
index 1696d93ec..000000000
Binary files a/emulation/resources/gbc/pokemon gold_l.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon gold_s.png b/emulation/resources/gbc/pokemon gold_s.png
deleted file mode 100644
index 5531326a5..000000000
Binary files a/emulation/resources/gbc/pokemon gold_s.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon silver_l.png b/emulation/resources/gbc/pokemon silver_l.png
deleted file mode 100644
index b04c2b585..000000000
Binary files a/emulation/resources/gbc/pokemon silver_l.png and /dev/null differ
diff --git a/emulation/resources/gbc/pokemon silver_s.png b/emulation/resources/gbc/pokemon silver_s.png
deleted file mode 100644
index c98c606e8..000000000
Binary files a/emulation/resources/gbc/pokemon silver_s.png and /dev/null differ
diff --git a/emulation/resources/genesis-slash-megadrive/logo.png b/emulation/resources/genesis-slash-megadrive/logo.png
deleted file mode 100644
index 95e6a6cb5..000000000
Binary files a/emulation/resources/genesis-slash-megadrive/logo.png and /dev/null differ
diff --git a/emulation/resources/n64/logo.png b/emulation/resources/n64/logo.png
deleted file mode 100644
index 951de7c6d..000000000
Binary files a/emulation/resources/n64/logo.png and /dev/null differ
diff --git a/emulation/resources/n64/super mario 64_l.png b/emulation/resources/n64/super mario 64_l.png
deleted file mode 100644
index 4378d297e..000000000
Binary files a/emulation/resources/n64/super mario 64_l.png and /dev/null differ
diff --git a/emulation/resources/n64/super mario 64_s.png b/emulation/resources/n64/super mario 64_s.png
deleted file mode 100644
index 63385ec32..000000000
Binary files a/emulation/resources/n64/super mario 64_s.png and /dev/null differ
diff --git a/emulation/resources/nds/castlevania - dawn of sorrow_l.png b/emulation/resources/nds/castlevania - dawn of sorrow_l.png
deleted file mode 100644
index 6015e843d..000000000
Binary files a/emulation/resources/nds/castlevania - dawn of sorrow_l.png and /dev/null differ
diff --git a/emulation/resources/nds/castlevania - dawn of sorrow_s.png b/emulation/resources/nds/castlevania - dawn of sorrow_s.png
deleted file mode 100644
index d71924c21..000000000
Binary files a/emulation/resources/nds/castlevania - dawn of sorrow_s.png and /dev/null differ
diff --git a/emulation/resources/nds/castlevania - order of ecclesia_l.png b/emulation/resources/nds/castlevania - order of ecclesia_l.png
deleted file mode 100644
index b4552a162..000000000
Binary files a/emulation/resources/nds/castlevania - order of ecclesia_l.png and /dev/null differ
diff --git a/emulation/resources/nds/castlevania - order of ecclesia_s.png b/emulation/resources/nds/castlevania - order of ecclesia_s.png
deleted file mode 100644
index 9b667a893..000000000
Binary files a/emulation/resources/nds/castlevania - order of ecclesia_s.png and /dev/null differ
diff --git a/emulation/resources/nds/logo.png b/emulation/resources/nds/logo.png
deleted file mode 100644
index e9789d3c0..000000000
Binary files a/emulation/resources/nds/logo.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon black 2_l.png b/emulation/resources/nds/pokemon black 2_l.png
deleted file mode 100644
index b1880926a..000000000
Binary files a/emulation/resources/nds/pokemon black 2_l.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon black 2_s.png b/emulation/resources/nds/pokemon black 2_s.png
deleted file mode 100644
index 3423f62ad..000000000
Binary files a/emulation/resources/nds/pokemon black 2_s.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon black_l.png b/emulation/resources/nds/pokemon black_l.png
deleted file mode 100644
index 50266a818..000000000
Binary files a/emulation/resources/nds/pokemon black_l.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon black_s.png b/emulation/resources/nds/pokemon black_s.png
deleted file mode 100644
index 7d224dab3..000000000
Binary files a/emulation/resources/nds/pokemon black_s.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon white 2_l.png b/emulation/resources/nds/pokemon white 2_l.png
deleted file mode 100644
index 122231ebb..000000000
Binary files a/emulation/resources/nds/pokemon white 2_l.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon white 2_s.png b/emulation/resources/nds/pokemon white 2_s.png
deleted file mode 100644
index fe6863e3e..000000000
Binary files a/emulation/resources/nds/pokemon white 2_s.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon white_l.png b/emulation/resources/nds/pokemon white_l.png
deleted file mode 100644
index 7664cbd9d..000000000
Binary files a/emulation/resources/nds/pokemon white_l.png and /dev/null differ
diff --git a/emulation/resources/nds/pokemon white_s.png b/emulation/resources/nds/pokemon white_s.png
deleted file mode 100644
index ca16b7fb2..000000000
Binary files a/emulation/resources/nds/pokemon white_s.png and /dev/null differ
diff --git a/emulation/resources/nes/Castlevania_l.png b/emulation/resources/nes/Castlevania_l.png
deleted file mode 100644
index 5aae6a634..000000000
Binary files a/emulation/resources/nes/Castlevania_l.png and /dev/null differ
diff --git a/emulation/resources/nes/Castlevania_s.png b/emulation/resources/nes/Castlevania_s.png
deleted file mode 100644
index 8b72e1dc5..000000000
Binary files a/emulation/resources/nes/Castlevania_s.png and /dev/null differ
diff --git a/emulation/resources/nes/castlevania_l.png b/emulation/resources/nes/castlevania_l.png
deleted file mode 100644
index 5aae6a634..000000000
Binary files a/emulation/resources/nes/castlevania_l.png and /dev/null differ
diff --git a/emulation/resources/nes/castlevania_s.png b/emulation/resources/nes/castlevania_s.png
deleted file mode 100644
index 8b72e1dc5..000000000
Binary files a/emulation/resources/nes/castlevania_s.png and /dev/null differ
diff --git a/emulation/resources/ps/logo.png b/emulation/resources/ps/logo.png
deleted file mode 100644
index 362b14702..000000000
Binary files a/emulation/resources/ps/logo.png and /dev/null differ
diff --git a/emulation/resources/ps2/logo.png b/emulation/resources/ps2/logo.png
deleted file mode 100644
index 904a48917..000000000
Binary files a/emulation/resources/ps2/logo.png and /dev/null differ
diff --git a/emulation/resources/psp/logo.png b/emulation/resources/psp/logo.png
deleted file mode 100644
index 905fe1574..000000000
Binary files a/emulation/resources/psp/logo.png and /dev/null differ
diff --git a/emulation/resources/switch/logo.png b/emulation/resources/switch/logo.png
deleted file mode 100644
index 61d2eccf7..000000000
Binary files a/emulation/resources/switch/logo.png and /dev/null differ
diff --git a/emulation/resources/wii/logo.png b/emulation/resources/wii/logo.png
deleted file mode 100644
index 0e9de7571..000000000
Binary files a/emulation/resources/wii/logo.png and /dev/null differ
diff --git a/frontend/assets/emulation b/frontend/assets/emulation
deleted file mode 120000
index e1a9ca31e..000000000
--- a/frontend/assets/emulation
+++ /dev/null
@@ -1 +0,0 @@
-../../emulation
\ No newline at end of file
diff --git a/frontend/src/components/RomsGallery.vue b/frontend/src/components/RomsGallery.vue
index cdf8208b8..9b09ac2b3 100644
--- a/frontend/src/components/RomsGallery.vue
+++ b/frontend/src/components/RomsGallery.vue
@@ -6,7 +6,7 @@ import { downloadRom, downloadSave } from '@/utils/utils.js'
// Props
const roms = ref([])
-const gettingRoms = ref(true)
+const gettingRoms = ref(false)
const noRoms = ref(false)
const romsFiltered = ref([])
const currentFilter = ref('')
diff --git a/frontend/src/utils/utils.js b/frontend/src/utils/utils.js
index 019174dde..91f0c0eb2 100644
--- a/frontend/src/utils/utils.js
+++ b/frontend/src/utils/utils.js
@@ -4,7 +4,7 @@ import { saveAs } from 'file-saver'
export function downloadRom(rom) {
console.log("Downloading "+rom.filename)
- axios.get('/assets/emulation/'+rom.p_slug+'/roms/'+rom.filename, { responseType: 'blob' }).then(response => {
+ axios.get('/assets/library/'+rom.p_slug+'/roms/'+rom.filename, { responseType: 'blob' }).then(response => {
saveAs(new Blob([response.data], { type: 'application/file' }), rom.filename)
}).catch(console.error)
}
diff --git a/frontend/assets/romm.svg b/romm.svg
similarity index 100%
rename from frontend/assets/romm.svg
rename to romm.svg