-
Notifications
You must be signed in to change notification settings - Fork 0
Home
The following software/versions are required for building and testing the system at the current time.
- NodeJS v20.17.0
If you use the Visual Studio Code editor, a number of helpful extensions are recommended (but not required):
- EditorConfig for VS Code
- ESLint
- i18n Ally
- Prettier - Code formatter
- Todo Tree
Check out the repository with either HTTPS or SSH:
git clone https://github.com/Muttley/foundryvtt-dreams-and-machines.git
git clone [email protected]:Muttley/foundryvtt-dreams-and-machines.git
Change directory into the newly checked out repository and run the following steps:
npm install
npm run build
You should see something like the following output:
❯ npm run build
> build
> gulp build
[11:25:41] Using gulpfile ~/projects/foundryvtt-dreams-and-machines/gulpfile.mjs
[11:25:41] Starting 'build'...
[11:25:41] Starting 'compileSass'...
[11:25:41] Starting 'compileLangs'...
[11:25:41] Starting 'lintJavascript'...
[11:25:41] Starting 'compileJavascript'...
[11:25:41] Finished 'compileSass' after 677 ms
[11:25:42] Finished 'compileLangs' after 722 ms
[11:25:42] Finished 'compileJavascript' after 1.66 s
[11:25:43] Finished 'lintJavascript' after 1.8 s
[11:25:43] Finished 'build' after 1.81 s
Change directory to the systems
directory your Foundry VTT Data folder and create a symbolic link to the respitory system
directory:
cd <foundry_data_folder>/systems
ln -s <repository_directory>/system dreams-and-machines
cd %localappdata%\FoundryVTT\Data\systems
mklink /d dreams-and-machines <reposity_directory>\system
Once the above steps are completed you should be able to run Foundry VTT and create a new World for the Shadowdark as you would for any other system.
Recommended modules for development:
- Developer Mode
Within the repository you can run the following to compile the system and then watch files for changes:
npm run build:watch
This will allow you to make changes to the code within the repository and then just use F5
to refresh Foundry and pick up the changes for testing.
Please use the existing code as a guide, as well as conforming to Editor Config and ESLint settings included within the repository.
There are a few golden rules which should be adhered to:
- All files should be in UTF-8 format with LF end-of-lines
- Tabs are used for indentation
- Trailing whitespace should be trimmed before committing code
Other than that, use your best judgement and try to make your code as easy to read as possible, with sensible variable names, etc.
If you are a new developer, the Code Complete book by Steve Mcconnell is an excellent starting place.
The use of AI to generate code or assets for contribution is not permitted under any circumstances.