-
Notifications
You must be signed in to change notification settings - Fork 22
Home
The following software/versions are required for building and testing the system at the current time.
- NodeJS v18.14
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-shadowdark.git
git clone [email protected]:Muttley/foundryvtt-shadowdark.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-shadowdark/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_system_directory> shadowdark
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.