This repo holds the code for the processing.org website. The website is built with Gatsby.
To run the site locally, make sure that you have Node.js installed (v12 minimum).
- Clone down this repo and
cdinto the folder via the command-line - Run
npm installto install the dependencies - Run
npm run devto run the development server
Now open localhost:8000 in your browser of choice.
In order to edit the content on the website, it's important to understand how the translation and internationalization frameworks are set up. For this, we distinguish between two things:
This content is more static, such as page headings and the descriptions on the front page. This is controlled by the react-intl package, and all definitions of UI language can be found in the i18n/react-intl folder. Each language will have its own .json file in this folder, and this is where edits to the UI language should happen.
This content includes most of the content on the website such as the individual items under reference, tutorials, tools, etc. Each content type has its own setup based on where the source lives. As an example, the reference is generated from the Processing source code and has its own way of translating those generated files. The following guides explain how to change the content on the website by section.
When translating the content to a new language you need to edit the i18n/config.json file and add you language information. Then follow the instructions for each Content list (same links as above).
The website is set up to deploy itself whenever a new GitHub release is created from the master branch:
- Go to Releases
- Click "Create a new release"
- Choose a tag for this release. This value is not used for much, so you can just use
DD-MM-YYYY - Create the release. A GitHub action will run, which will build the website and upload to the S3 bucket.
The website repo has a script that generates the keywords.txt file into the processing4 repo to use for syntax highlighting the PDE. Follow these steps in order to generate that file:
- Make sure you have this
processing-websiterepo and theprocessing4repo next to each other on your computer - Run
npm run updateKeywords
The processing4 repo now has an updated java/keywords.txt file.