PTDL_v2 · one egg · one docker image

One egg. One image.
Every language.

Prog-Language Eggs - one egg for 50+ programming languages with package managers, auto-detection, memory tuning, and Dev Watch mode. Built natively for Pterodactyl, Pelican, Feather Panel, PufferPanel, Jexactyl, Wisp, Emerald, Kubernetes, Fly.io, Railway and Render.

0
Languages
0
Startup variables
0
Panels & platforms
0
Arch tiers
The runtime

Everything a polyglot container needs, in one boot

Zero-config auto-detection

LANGUAGE=auto inspects workspace files, package.json, requirements.txt, Cargo.toml, go.mod, *.csproj, and boots the exact stack. First-boot results pin for predictable cold starts; set auto-detect to re-arm.

On-demand toolchains

Runtimes install when needed from official vendor feeds with SHA256 checksum verification, then cache in .environments/, no pre-baked bloat, no abandoned versions.

Memory auto-tune

MEMORY_AUTO_TUNE unifies panel memory limits and sets safe heap ceilings for V8, Go GOMEMLIMIT, the JVM and .NET, plus glibc malloc trimming to stop container OOM crashes.

Procfile supervisor

Commit a Procfile to run web, worker and API processes in one container with wait_port ordering, linear-backoff crash recovery and per-process log streams.

Panel stop watcher

PANEL_STOP_WATCHER handles every daemon's idea of stopping, POSIX signal traps for Wings, console-text ^C interception for Feather-style daemons, graceful drains everywhere.

Health checks & self-update

HEALTH_CHECK_PATH probes your app after boot; the launcher checks EGG_UPDATE_URL on every start and refreshes itself when the upstream egg changes.

Quick start

Import once. Ship any stack.

Import egg-programming-multi.json into your panel's nest, create a server on ghcr.io/potenfyr-studios/prog-language-eggs:latest, and start it. Detection, dependency install and health wiring happen on boot - driven by 41 documented startup variables.

  1. 1 Download the egg JSON from the repository.
  2. 2 Panel → Nests → Import Egg → select the JSON.
  3. 3 Create a server on the multi-language image.
  4. 4 Upload code or set GIT_REPO, start.
Full setup guide
docker run -d \
  --name my-app \
  -p 8080:8080 \
  -e SERVER_PORT=8080 \
  -e LANGUAGE=nodejs \
  -e RUNTIME_VERSION=lts \
  -v "$PWD/my-project:/home/container" \
  ghcr.io/potenfyr-studios/prog-language-eggs:latest

The same image runs Python, Go, Rust, Java and 50 more, the language is a startup variable, not a build.

Language coverage

54 languages, from Node.js to GnuCOBOL

Mainstream stacks and the long tail, Node.js, TypeScript, Python, Java, Go, Rust, C# / .NET, PHP, Ruby, Swift - plus Fortran, Ada, COBOL, Prolog, Smalltalk, Vala and more. Every entry in the matrix is detected by real file triggers and served by real runners.

Full matrix
Node.js (JavaScript)TypeScriptBunDenoPythonJavaGoRustCC++C# / .NETPHPRubyStatic Website / SPAKotlinScalaSwiftDartZigLua / LuaJITElixirErlangHaskellPerlRJuliaClojureGroovyCrystalNimOCamlF#FortranFreePascalCOBOLAssembly (x86/ARM)VOdinGleamReScript / ReasonMLHaxeRacketScheme / GuileCommon LispDAdaSmalltalkTclPrologSolidity (Dev/Node)Bash / ShellPowerShellVisual Basic .NETVala
Runs anywhere

Every panel family, one egg file

The launcher detects the host daemon on boot and adapts working directory, port variables and stop semantics automatically.

PterodactylPelicanFeather PanelPufferPanelJexactylWispEmeraldKubernetesFly.ioRailwayRender