npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@typhonjs-fvtt/fvttdev

v0.0.19

Published

Provides a zero config CLI build tool for Foundry VTT modules & systems based on Rollup and Oclif

Downloads

4

Readme

@typhonjs-fvtt/fvttdev

NPM Code Style License

Build Status Coverage Dependency Status

Why?

@typhonjs-fvtt/fvttdev provides a zero config build & bundle CLI tool for Foundry VTT based on Rollup and Oclif.

The aim is to create a development tool that aids all Foundry VTT developers in developing new 3rd party extensions (modules & game systems) for this fantastic virtual tabletop which can be used for all sorts of role-playing games. Foundry VTT embraces modern web technologies and

So far only the bundle command is implemented and provides zero config bundling for JS and Typescript development. CSS / Sass / Less / Stylus setup with PostCSS and more. Several more commands useful for Foundry VTT development are planned for future release.

Roadmap

(05/28/21): I just got significant ES Module support into Oclif v2 which is still in beta, but powers fvttdev. fvttdev is the first non-trivial ESM Oclif CLI. So with ESM support now mainline in the latest Oclif v2 beta I look forward to rapid progress in the coming months. Outside of a beta launch likely mid-summer longer term goals aim to support the unbundle dev cycle w/ hot module replacement (HMR) in addition to already solid production bundling.

All build tooling is current as of 05.28.21 including Typescript (4.3.2), Babel (7.14.3) and PostCSS / Sass / Less / Stylus.

Warning

This an alpha stage project, but a stable release on NPM is available. The bundle command works really well, but docs, tutorials, and more information and final polish plus other commands are forthcoming soon.

Install and usage (very abbreviated!)

In package.json:

Add to devDependencies: "@typhonjs-fvtt/fvttdev": "0.0.19"

Note: If you have already installed a previous version delete node_modules and any package-lock.json file before updating and reinstall all modules as a precautionary measure since fvttdev just switched to the mainline Oclif v2 release.

Add an NPM script: "bundle-dev": "fvttdev bundle"

This will find your Foundry VTT package manifest and proceed to bundle your module / system to ./dist.

You might have to make small modifications to your codebase to support Sass / Less / Stylus. The way it works is that you must import the appropriate style file into the source code associated with it and fvttdev via Rollup & PostCSS will build the style file and automatically adjust the output package manifest.

You can get help options for fvttdev via running "bundle-help": "fvttdev bundle --help" as there are various command line options available. However, there also is a more convenient environment variable loading system available. To learn a bit more about that and general usage with a full example of bundling a module please refer to the demo repo:

https://github.com/typhonjs-fvtt/demo-fvttdev-module