This project is the main ScummVM website located at: https://www.scummvm.org
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
The ScummVM website relies on several tools to install properly. Before installing please make sure you have the following installed:
- PHP
- PHP YAML extension. Install via
pecl install yaml
orsudo apt install php-yaml
- The version of PHP included with macOS doesn't include PECL, so you'll need to install a different version of PHP through Homebrew or another method
- Alternatively on macOS you can use MacPorts to install both PHP and yaml (for example to use PHP 8.2
sudo port install php82 php82-yaml php82-iconv php82-intl php82-mbstring php82-sqlite ; sudo port select --set php php82
)
- PHP YAML extension. Install via
- Composer
- Python & pip (2.7.9+/3.4+)
- Node.js & npm
- Git
- Glue
- Redis (Optional)
Clone this repo
git clone https://github.com/scummvm/scummvm-web.git
To run the a development version of the site and start a local web server on port 8000, run:
composer develop
To build for production simply run:
composer build
To deploy changes to the official ScummVM website, simply go to the website admin page and click the "ScummVM.org manual site update" link.
Most data is now managed upstream in a spreadsheet. To re-generate the data files
run composer update-data
note that this will run automatically on site update
but is encouraged for you to do manually to keep track on who's updating the
data.
During development, you can disable data caching by creating a file called
.no-cache
in the root folder.
Similar to ScummVM, please use the appropriate project name when contributing:
- I10N: Modifications related to translations.
- CSS: Changes to stylesheets.
- TEMPLATES: Changes to page and component templates.
- IMAGES: Site graphics (Icons are excluded).
- ICONS: New game and platform Icons. Please see the Wiki for updated submission guidelines.
- DATA: Site data files.
- BUILD: Files related to building and developing the site.
- WEB: Catch-all for things that don't fit any of the above, or a mix of multiple components in a single commit.
YAML files should adhere to the Flathub YAML Style Guide.
PHP files use phpcbf. Please run composer lint
before committing code.