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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@travetto/compiler

v7.1.3

Published

The compiler infrastructure for the Travetto framework

Readme

Compiler

The compiler infrastructure for the Travetto framework

Install: @travetto/compiler

npm install @travetto/compiler

# or

yarn add @travetto/compiler

This module expands upon the Typescript compiler, with the additional features:

Beyond the Typescript compiler functionality, the module provides the primary entry point into the development process.

CLI

The compiler cli, trvc is the entry point for compilation-related operations. It has the ability to check for active builds, and ongoing watch operations to ensure only one process is building at a time. Within the framework, regardless of mono-repo or not, the compilation always targets the entire project. With the efficient caching behavior, this leads to generally a minimal overhead but allows for centralization of all operations.

The compiler cli supports the following operations:

  • start|watch - Run the compiler in watch mode
  • stop - Stop the compiler if running
  • restart - Restart the compiler in watch mode
  • build - Ensure the project is built and upto date
  • clean - Clean out the output and compiler caches
  • info - Retrieve the compiler information, if running
  • event <log|progress|state> - Watch events in realtime as newline delimited JSON
  • exec <file> [...args] - Allow for compiling and executing an entrypoint file
  • manifest [output] - Generate the project manifest
  • manifest:production [output] - Generate the production project manifest

In addition to the normal output, the compiler supports an environment variable TRV_BUILD that supports the following values: debug, info, warn or none. This provides different level of logging during the build process which is helpful to diagnose any odd behaviors. When invoking an unknown command (e.g. <other> from above), the default level is warn. Otherwise the default logging level is info.

Terminal: Sample trv output with debug logging

$ TRV_BUILD=debug trvc build

2029-03-14T04:00:00.618Z info  [server         ] Starting server http://127.0.0.1:25539
2029-03-14T04:00:00.837Z debug [compiler-exec  ] Start Server
2029-03-14T04:00:01.510Z debug [event-stream   ] Started event stream
2029-03-14T04:00:02.450Z info  [compiler-exec  ] Launching compiler
2029-03-14T04:00:02.762Z debug [server         ] Compilation started
2029-03-14T04:00:02.947Z info  [server         ] State changed: init
2029-03-14T04:00:03.093Z debug [server         ] Compiler loaded
2029-03-14T04:00:04.003Z info  [server         ] State changed: compile-start
2029-03-14T04:00:04.495Z info  [server         ] State changed: compile-end
2029-03-14T04:00:05.066Z debug [server         ] Compiler process shutdown
2029-03-14T04:00:05.307Z debug [compiler-exec  ] Finished
2029-03-14T04:00:05.952Z debug [event-stream   ] Finished event stream
2029-03-14T04:00:06.859Z debug [compiler-exec  ] Shutting down process
2029-03-14T04:00:07.720Z info  [server         ] Closing down server
2029-03-14T04:00:08.179Z debug [server         ] Server close event
2029-03-14T04:00:08.588Z info  [server         ] Closed down server
2029-03-14T04:00:09.493Z debug [server         ] Finished processing events
2029-03-14T04:00:10.395Z debug [compiler-exec  ] End Server

Terminal: Sample trv output with default log level

$ trvc build

Compilation Architecture

The compiler will move through the following phases on a given compilation execution:

  • Compiler Server - Provides a simple HTTP interface to watching compiler file and state changes, and synchronizing multiple processes
  • Build Compiler - Leverages Typescript to build files needed to execute compiler
  • Build Manifest - Produces the manifest for the given execution
  • Build Transformers - Leverages Typescript to compile all transformers defined in the manifest
  • Produce Manifest Delta - Compare the output file system with the manifest to determine what needs to be compiled
  • Clear all output if needed - When the compiler source or transformers change, invalidate the entire output
  • Persist Manifest(s) - Ensure the manifest is available for the compiler to leverage. Multiple will be written if in a monorepo
  • Invoke Compiler - Run Typescript compiler with the aforementioned enhancements