NAME

punk - the Punk command line

SYNOPSIS

punk new MyApp              # generate a new application
punk routes                 # the compiled routing table
punk api sync               # stubs for operations added to the spec
punk config check           # resolve configuration and every secret
punk doctor                 # versions, C ABIs, application health
punk console                # a REPL with the application compiled
punk dev                    # Hyperman with restart-on-change
punk help [command]         # generated from each command's declaration

DESCRIPTION

The command line for Punk applications. Except for new, every command finds the application by walking up from the current directory looking for app.psgi, and takes the class from that file's Class->to_app.

Help is generated from each command's declared options, so punk help X and punk X --help always match what the command actually accepts. Exit codes: 0 success, 1 something is wrong with the application or its environment, 2 the command was used wrongly.

Commands live in Punk::Command, which also documents how a plugin distribution adds its own subcommand.

ENVIRONMENT

PUNK_ENV selects the environment (production when unset). punk dev sets it to development for the server it runs unless already set.

SEE ALSO

Punk, Punk::Command, Punk::Generate.

AUTHOR

LNATION <email@lnation.org>

LICENSE AND COPYRIGHT

This software is Copyright (c) 2026 by LNATION <email@lnation.org>.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)