## Configure environment and secrets for Hono

### Summary
Configuration and secrets for a Hono app on Ample. Verified on Hono: an --env value delivered encrypted and reported as present without being echoed (secret=set). Build and start: npm install and npm run start with @hono/node-server on the node-22 template.

### Representative Queries
- Configure environment and secrets for Hono
- Where can I host Configure environment and secrets built with Hono?
- I need a tested app-configuration delivery method and secret-handling guidance; platform injection/rotation is not assumed.

### Resource Requirements
- **primitive:compute**

### Infrastructure Requirements
- **Compute**: Apps run in isolated x86_64 Firecracker microVMs that auto-pause when idle and wake on request; sizes are the priced VM sizes.

### Framework
Hono

### Workload
Configure environment and secrets

### Release Status
published

### Support Status
verified

### Execution Status
ready

### Prerequisites
- A Hono project (npm install and npm run start with @hono/node-server on the node-22 template)
- An Ample account token with servers:write

### Tested Configuration
- **Template**: node-22
- **Runtime**: node
- **Size**: s-1vcpu-1gb
- **Install**: npm install
- **Build**: npm run build --if-present
- **Start**: npm run start

### Input Schema
- **env**: Encrypted environment variables  (maxItems: 50)
- **name**: App name (maxLength: 63, minLength: 1)
- **path**: Project directory or ample.toml service (maxLength: 512, minLength: 1)
- **release_command**: Migration command run before activation (maxLength: 512)

### Workflow Steps
1. **Build and start**: npm install and npm run start with @hono/node-server on the node-22 template; the server must bind 0.0.0.0 on PORT.
2. **Pass values on deploy**: Use --env KEY=value (repeatable) or --env-file; values are encrypted at rest and reused on redeploys. Declare names only in ample.toml.
   Command: `ample deploy . --name --public --env MY_SECRET=...`
3. **Verify**: Fetch the live URL and /p/configuration-secrets on the example; on failure read the build and runtime logs.
   Command: `ample logs --kind build`

### Examples
- **Hono pattern fixture**: Verified configuration and secrets on Hono.
  - Source Ref: tests/deploy-canaries/hono-patterns

### Success Checks
- App responds on its public URL. Expect: `ample canary hono patterns`
- Configuration-secrets check from the example. Expect: `see the pattern fixture checks`

### Limitations
- Verified on the node-22 template at s-1vcpu-1gb; other sizes and Hono major versions are not verified.
- Region, compliance attestations and request-duration limits are unknown and not claimed.

### Cost Estimate
- **Currency**: USD
- **Monthly Amount**: $5.0
- **Basis**: size prices from pricing.toml (loaded by the API)
- **Components**: 
  - app server: size s-1vcpu-1gb, quantity 1.0, monthly amount $5.0
- **Note**: Always-on monthly price of the tested sizes; apps auto-pause when idle. Buckets are allocation-priced per quota and not included.

### Evidence Summary
- **Kind**: canary_run 
  **Summary**: Hono pattern fixture deployed on Ample; for this guide: an --env value delivered encrypted and reported as present without being echoed (secret=set).
  - **Observed At**: 2026-09-21T01:14:18Z
  - **Implementation Revision**: 50dbac567d2c5cc8e55e6c748a646be0025d9cfb-dirty (CLI 0.1.21) 
  - **Expires At**: 2027-03-20T01:14:18Z
  - **Scope**: checks [/p/configuration-secrets], template: node-22

### Last Verified At
2026-09-21T01:14:18Z

### Unknowns
- Region availability is unknown until a verified region fact is recorded.
- Compliance attestations are unknown; none are claimed.

### Formats
- **HTML**: [Configuration Secrets](/content/guides/hono/configuration-secrets/index.html)
- **Markdown**: [Configuration Secrets Markdown](/content/guides/hono/configuration-secrets.md)
- **JSON**: [Configuration Secrets JSON](https://api.ample.computer/v1/catalog/recipes/page%3Aguides%3Ahono%3Aconfiguration-secrets)

### Next Actions
- **Browse the catalog index**
  - Operation ID: `catalog_index`
  - Method: GET
  - Relative Path: `/v1/catalog`
  - Requires Authentication: false

- **Search published recipes by intent, stack, and constraints**
  - Operation ID: `search_recipes`
  - Method: POST
  - Relative Path: `/v1/catalog/search`
  - Parameters: { "body": { "limit": 5, "query": "Configure environment and secrets for Hono" }}
  - Requires Authentication: false

- **Prepare a side-effect-free deployment plan for an authorized project**
  - Operation ID: `plan_deployment`
  - Method: POST
  - Relative Path: `/v1/catalog/plan`
  - Parameters: { "body": { "inputs": {}, "projectId": "", "recipeId": "page:guides:hono:configuration-secrets", "recipeRevision": "r1" }}
  - Requires Authentication: true

- **Read the existing agent authentication setup**
  - Operation ID: `existing_auth_setup`
  - Method: GET
  - Relative Path: `/mcp/setup`
  - Requires Authentication: false

- **Browse Hono**
  - Operation ID: `browse_node`
  - Method: GET
  - Relative Path: `/v1/catalog/nodes/stack%3Aframework-hono`
  - Parameters: { "nodeId": "stack:framework-hono" }
  - Requires Authentication: false

- **Browse Configure deployment**
  - Operation ID: `browse_node`
  - Method: GET
  - Relative Path: `/v1/catalog/nodes/intent%3Aconfigure-deployment`
  - Parameters: { "nodeId": "intent:configure-deployment" }
  - Requires Authentication: false

- **Browse Public web service**
  - Operation ID: `browse_node`
  - Method: GET
  - Relative Path: `/v1/catalog/nodes/pattern%3Apublic-web-service`
  - Parameters: { "nodeId": "pattern:public-web-service" }
  - Requires Authentication: false
