101 lines
2.7 KiB
Markdown
101 lines
2.7 KiB
Markdown
|
# foundry-factory-demo-gitlab
|
||
|
|
||
|
Please add your description here.
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
Please add your installation instructions here.
|
||
|
|
||
|
## Development
|
||
|
|
||
|
### Prerequisites
|
||
|
|
||
|
In order to build this module, recent versions of `node` and `npm` are
|
||
|
required. Most likely, using `yarn` also works, but only `npm` is officially
|
||
|
supported. We recommend using the latest lts version of `node`. If you use `nvm`
|
||
|
to manage your `node` versions, you can simply run
|
||
|
|
||
|
```
|
||
|
nvm install
|
||
|
```
|
||
|
|
||
|
in the project's root directory.
|
||
|
|
||
|
You also need to install the project's dependencies. To do so, run
|
||
|
|
||
|
```
|
||
|
npm install
|
||
|
```
|
||
|
|
||
|
### Building
|
||
|
|
||
|
You can build the project by running
|
||
|
|
||
|
```
|
||
|
npm run build
|
||
|
```
|
||
|
|
||
|
Alternatively, you can run
|
||
|
|
||
|
```
|
||
|
npm run build:watch
|
||
|
```
|
||
|
|
||
|
to watch for changes and automatically build as necessary.
|
||
|
|
||
|
### Linking the built project to Foundry VTT
|
||
|
|
||
|
In order to provide a fluent development experience, it is recommended to link
|
||
|
the built module to your local Foundry VTT installation's data folder. In
|
||
|
order to do so, first add a file called `foundryconfig.json` to the project root
|
||
|
with the following content:
|
||
|
|
||
|
```
|
||
|
{
|
||
|
"dataPath": "/absolute/path/to/your/FoundryVTT"
|
||
|
}
|
||
|
```
|
||
|
|
||
|
(if you are using Windows, make sure to use `\` as a path separator instead of
|
||
|
`/`)
|
||
|
|
||
|
Then run
|
||
|
|
||
|
```
|
||
|
npm run link-project
|
||
|
```
|
||
|
|
||
|
On Windows, creating symlinks requires administrator privileges, so unfortunately
|
||
|
you need to run the above command in an administrator terminal for it to work.
|
||
|
|
||
|
### Running the tests
|
||
|
|
||
|
You can run the tests with the following command:
|
||
|
|
||
|
```
|
||
|
npm test
|
||
|
```
|
||
|
|
||
|
### Creating a release
|
||
|
|
||
|
In order to create a versioned release, simply create / push a new tag that follows the pattern
|
||
|
`v<number>.<number>.<number>`. This triggers a pipeline run that automatically builds the package and creates a release
|
||
|
that has a `module.zip` / `system.zip` and a `module.json` / `system.json` attached to it. These files are set up so
|
||
|
that they work in the same way as in the [League Basic JS Module Template], so you can follow the instructions given
|
||
|
there to list the release on the Foundry VTT package admin page.
|
||
|
|
||
|
If you want to provide release notes, you can then edit the created release to add a description.
|
||
|
|
||
|
## Licensing
|
||
|
|
||
|
This project is being developed under the terms of the
|
||
|
[LIMITED LICENSE AGREEMENT FOR MODULE DEVELOPMENT] for Foundry Virtual Tabletop.
|
||
|
|
||
|
Please add your licensing information here. Add your chosen license as
|
||
|
`LICENSE` file to the project root and mention it here. If you don't know which
|
||
|
license to choose, take a look at [Choose an open source license].
|
||
|
|
||
|
[League Basic JS Module Template]: https://github.com/League-of-Foundry-Developers/FoundryVTT-Module-Template
|
||
|
[LIMITED LICENSE AGREEMENT FOR MODULE DEVELOPMENT]: https://foundryvtt.com/article/license/
|
||
|
[Choose an open source license]: https://choosealicense.com/
|