mirror of
https://github.com/hanzoai/pack.git
synced 2026-09-30 23:43:13 +00:00
* test: assert empty stderr on successful integration tests Add assertion to check that stderr is empty when integration tests pass successfully. This helps catch unexpected warnings or error messages that might indicate issues even when the test technically succeeds. The check is added to runContainerWithTimeout which runs containers that output expected strings. HTTP check tests are not affected since they already validate correctness via HTTP requests and separating stderr from detached containers is more complex. * fix: add private field to example package.json files Add "private": true to all example package.json files to suppress package manager warnings about missing license fields. These are test/example projects not meant to be published to npm registries. This prevents stderr warnings like "warning package.json: No license field" which were causing the new stderr assertion in integration tests to fail even though the applications were running correctly. Affected examples: - All node-yarn-* examples - node-npm, node-pnpm, node-bun examples - config-file, mise-config examples - Other node-based examples * fix: trust mise config files in app directory Add MISE_TRUSTED_CONFIG_PATHS=/app to automatically trust mise configuration files in the application directory during builds. This prevents trust warnings when MISE_PARANOID mode is enabled: "Trust them with \`mise trust\`. See https://mise.jdx.dev/cli/trust.html" Since the app directory (/app) is the user's code being built, it's safe to trust mise configuration files located there. * test: add stderrAllowed option to skip stderr assertion Add optional "stderrAllowed" field to test.json that defaults to false. When set to true, skips the stderr empty assertion for tests where stderr output is expected and normal. This is useful for applications that log to stderr by default, such as gunicorn which outputs info logs to stderr: [2025-11-18 18:13:50 +0000] [1] [INFO] Starting gunicorn 23.0.0 [2025-11-18 18:13:50 +0000] [1] [INFO] Listening at: http://0.0.0.0:3333 (1) Updated python-uv test to set stderrAllowed: true since it uses gunicorn which logs to stderr. * test: allow stderr for node-latest-npm-native-deps temporarily Add stderrAllowed: true to node-latest-npm-native-deps test to handle the NPM_CONFIG_PRODUCTION deprecation warning: "npm warn config production Use \`--omit=dev\` instead" This is temporary and should be removed once NPM_CONFIG_PRODUCTION is removed from core/providers/node/node.go:241 in a separate PR. * test: allow stderr for npm production warning in additional tests Add stderrAllowed: true to node-prisma, node-remix, and node-npm-install-in-build test cases to temporarily allow the npm warning about NPM_CONFIG_PRODUCTION being deprecated. This is a temporary workaround until NPM_CONFIG_PRODUCTION is removed from node.go in a separate PR. * test: allow stderr for Bun console output Bun routes console.log/console.error to stderr by default in script mode. Add stderrAllowed: true to all Bun example tests to allow this expected behavior. * test: allow stderr for TanStack Start output TanStack Start outputs to stderr during server startup. Add stderrAllowed: true to allow this expected behavior. * test: add approved builds to fix better-sqlite3 error * test: snapshot update * test: fix build warning, allow stderr for --omit warning for now * docs: note that test.json are jsonc for AI * test: snapshot update * test: allow stderr for omit usage --------- Co-authored-by: Hanzo Dev <[email protected]>
Welcome to Remix!
- 📖 Remix docs
Development
Run the dev server:
npm run dev
Deployment
First, build your app for production:
npm run build
Then run the app in production mode:
npm start
Now you'll need to pick a host to deploy it to.
DIY
If you're familiar with deploying Node applications, the built-in Remix app server is production-ready.
Make sure to deploy the output of npm run build
build/serverbuild/client
Styling
This template comes with Tailwind CSS already configured for a simple default starting experience. You can use whatever css framework you prefer. See the Vite docs on css for more information.