All Projects → League-of-Foundry-Developers → foundry-vtt-types

League-of-Foundry-Developers / foundry-vtt-types

Licence: MIT license
Unofficial type declarations for the Foundry Virtual Tabletop API

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to foundry-vtt-types

fvtt-lib-wrapper
Library for Foundry VTT which provides module developers with a simple way to modify core Foundry VTT code, while reducing the likelihood of conflict with other modules.
Stars: ✭ 21 (-73.75%)
Mutual labels:  foundry-vtt
modules
FVTT Community Modules - This repo has been replaced by: https://foundryvtt.wiki/en/community/community-unlisted-modules
Stars: ✭ 21 (-73.75%)
Mutual labels:  foundry-vtt
fvtt-module-narrator-tools
Special tools to increase immersivity in your game.
Stars: ✭ 15 (-81.25%)
Mutual labels:  foundry-vtt
fvtt-module-jitsiwebrtc
Jitsi WebRTC client for FVTT
Stars: ✭ 32 (-60%)
Mutual labels:  foundry-vtt
foundryvtt-gmScreen
A module which creates a modular GM Screen
Stars: ✭ 25 (-68.75%)
Mutual labels:  foundry-vtt
JB2A DnD5e
Templates of spells from the DnD5e ruleset (SRD and PHB), to use on FoundryVTT
Stars: ✭ 28 (-65%)
Mutual labels:  foundry-vtt
Tokenmagic
A Foundry VTT module that allows you to add animations and graphic effects to tokens, tiles, templates and drawings.
Stars: ✭ 28 (-65%)
Mutual labels:  foundry-vtt
FoundryVTT-Module-Template
A template repository for FoundryVTT module development that comes with versioned CI/CD
Stars: ✭ 72 (-10%)
Mutual labels:  foundry-vtt
ddb-game-log
DDB Gamelog makes your D&D Beyond rolls visible in Foundry VTT without any browser extensions.
Stars: ✭ 17 (-78.75%)
Mutual labels:  foundry-vtt
Bryans-Preferred-Modules-for-FoundryVTT
My personally cultivated list of FoundryVTT Modules for Dungeons and Dragons 5e and Pathfinder 2e that play nicely together without creating an overwhelming amount of UI options or causing noticeable FPS drops.
Stars: ✭ 119 (+48.75%)
Mutual labels:  foundry-vtt
foundry-factory
An interactive command line tool to bootstrap new modules and systems for Foundry Virtual Tabletop
Stars: ✭ 17 (-78.75%)
Mutual labels:  foundry-vtt
wiki
FVTT Community Wiki - This repo has been replaced by: https://foundryvtt.wiki
Stars: ✭ 32 (-60%)
Mutual labels:  foundry-vtt
Numenera-FoundryVTT
Numenera support for the Foundry virtual tabletop
Stars: ✭ 26 (-67.5%)
Mutual labels:  foundry-vtt
ernies-modern-layout
A clean and themeable visual update for Foundry VTT. Discord: Ernie#4453 or Ernie on the Foundry channel.
Stars: ✭ 12 (-85%)
Mutual labels:  foundry-vtt
forbidden-lands-foundry-vtt
This is a Forbidden Lands game System for the Foundry Virtual Table Top. Made by @Perfectro, @patrys and @aMediocreDad. Maintained by @aMediocreDad, @narukaioh
Stars: ✭ 28 (-65%)
Mutual labels:  foundry-vtt
FoundryVTT-Sequencer
This module implements a basic pipeline that can be used for managing the flow of a set of functions, effects, sounds, and macros.
Stars: ✭ 25 (-68.75%)
Mutual labels:  foundry-vtt
chat-images
A module for Foundry VTT that adds image support for the chat.
Stars: ✭ 19 (-76.25%)
Mutual labels:  foundry-vtt
fvtt-data-toolbox
Foundry VTT Data Toolbox
Stars: ✭ 17 (-78.75%)
Mutual labels:  foundry-vtt
PDFoundry
A fully featured PDF viewer module for Foundry VTT, including form fillable actor sheets, journal links, and more!
Stars: ✭ 38 (-52.5%)
Mutual labels:  foundry-vtt
perfect-vision
Foundry VTT Module: Lighting Drawings and Vision Limitation.
Stars: ✭ 45 (-43.75%)
Mutual labels:  foundry-vtt

foundry-vtt-types

League Logo TS

TypeScript type definitions for Foundry Virtual Tabletop (unofficial)

League Discord Server GitHub V9 issues by-label GitHub closed V9 issues by-label GitHub V10 issues by-label GitHub closed V10 issues by-label npm (tag)

Supported Foundry VTT versions

We aim to support the latest release of each Foundry VTT version (0.7, 0.8, 9, etc.), starting with 0.7.

At the moment, versions 0.7, 0.8, and 9 are fully supported. Work on support for version 10 is just starting out. See the open foundry V10 issues to keep track of the progress.

Installation

You can install foundry-vtt-types from the npm registry.

In order to install the latest version, run

npm install --save-dev @league-of-foundry-developers/foundry-vtt-types

In order to install a specific version run

npm install --save-dev @league-of-foundry-developers/foundry-vtt-types@<version>

For example, to install version 9.268.0, run

npm install --save-dev @league-of-foundry-developers/[email protected]

You can then update foundry-vtt-types using the regular update mechanism for npm (see npm update).

Versioning scheme

The versions of the foundry-vtt-types correspond to the releases of Foundry VTT. The versioning scheme of Foundry VTT changed with version 9, so the versioning scheme for the foundry-vtt-types also changes with that version:

  • For Foundry VTT version 0.7 and 0.8, the versioning scheme is
    0.<foundy-minor-version>.<foundry-patch-version>-<increment>
    
  • For Foundry VTT version 9 and onwards, the versioning scheme is
    <foundry-version>.<foundry-build>.<increment>
    

In both cases, increment is a number that increases with every individual release of the foundry-vtt-types for that Foundry VTT release.

Usage

Add foundry-vtt-types to your types section in your tsconfig.json:

{
  "compilerOptions": {
    "types": ["@league-of-foundry-developers/foundry-vtt-types"],
    "moduleResolution": "node",
    "strictNullChecks": true,
  }
}

This will make the type definitions available globally in your project.

Make sure you are using "moduleResolution": "node", too. It is required for some dependencies to be resolved correctly.

Also make sure to set "strictNullChecks": true because otherwise, some conditional types used in the type definitions resolve incorrectly, and you will see a lot of errors. Alternatively, you can just set "strict": true, which implicitly sets strictNullChecks. This is actually what we recommend, but it's not required.

You can find some information about how to actually work with the type definitions in the Wiki. A good starting point is the FAQ.

Acknowledgments

Originally forked from Foundry Project Creator Types by @NickEastNL

Contributing

Contributions are very welcome in order to decrease the individual workload. Filing issues for wrong / missing types is also a great way to help us improve the type definitions.

Development on the current version of Foundry VTT is done on the main branch. Additionally, we keep branches for the older version of Foundry VTT that we still support. These branches are named according to the Foundry VTT version they correspond to. For example, the branch for Foundry VTT 0.8 is called foundry-0.8.x. All work to improve the type definitions needs to be done through Pull Requests to the relevant branch.

Please read CONTRIBUTING.md for more details on how to contribute.

If you have any specific questions, feel free to contact us in the League of Extraordinary Foundry Developers Discord.

Type-Checking, Linting, Testing

When contributing, make sure that the type checks pass, the linter is green and the tests are green. We do have checks in the CI but running this locally also helps you while developing and saves you time as you don't have to wait for the CI.

You can run type checking and linting with the following command:

npm run lint

You can run the tests with

npm run test

Creating a release

To create a release, you have to create a new release commit, tag it and create a GitHub release from that. The CI will handle the rest.

npm version <release-type>
git push --follow-tags

License

This project is licensed under the MIT license. You can find a copy at LICENSE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].