{"id":35694409,"url":"https://github.com/adobe/helix-universal-devserver","last_synced_at":"2026-04-15T22:00:56.361Z","repository":{"id":219952222,"uuid":"749803143","full_name":"adobe/helix-universal-devserver","owner":"adobe","description":"Development server for universal functions","archived":false,"fork":false,"pushed_at":"2026-04-08T21:58:22.000Z","size":2401,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-04-08T23:32:13.020Z","etag":null,"topics":["helix","library","universal"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adobe.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-29T12:35:29.000Z","updated_at":"2026-04-08T21:58:25.000Z","dependencies_parsed_at":"2024-03-30T08:23:50.947Z","dependency_job_id":"1a50e1f9-35c3-43cd-bb32-8dbe9b2f93e0","html_url":"https://github.com/adobe/helix-universal-devserver","commit_stats":{"total_commits":202,"total_committers":4,"mean_commits":50.5,"dds":0.4257425742574258,"last_synced_commit":"1ddfeb55eec5c1ea6e7959227743e291b81edd0c"},"previous_names":["adobe/helix-universal-devserver"],"tags_count":151,"template":false,"template_full_name":null,"purl":"pkg:github/adobe/helix-universal-devserver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adobe%2Fhelix-universal-devserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adobe%2Fhelix-universal-devserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adobe%2Fhelix-universal-devserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adobe%2Fhelix-universal-devserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adobe","download_url":"https://codeload.github.com/adobe/helix-universal-devserver/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adobe%2Fhelix-universal-devserver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31861708,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["helix","library","universal"],"created_at":"2026-01-06T00:12:36.815Z","updated_at":"2026-04-15T22:00:56.351Z","avatar_url":"https://github.com/adobe.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Helic Universal Development Server\n\n\u003e Development server for local development of helix universal functions\n\n## Status\n[![codecov](https://img.shields.io/codecov/c/github/adobe/helix-universal-devserver.svg)](https://codecov.io/gh/adobe/helix-universal-devserver)\n[![GitHub Actions](https://img.shields.io/github/actions/workflow/status/adobe/helix-universal-devserver/main.yaml)](https://github.com/adobe/helix-universal-devserver/actions/workflows/main.yaml)\n[![GitHub license](https://img.shields.io/github/license/adobe/helix-universal-devserver.svg)](https://github.com/adobe/helix-universal-devserver/blob/master/LICENSE.txt)\n[![GitHub issues](https://img.shields.io/github/issues/adobe/helix-universal-devserver.svg)](https://github.com/adobe/helix-universal-devserver/issues)\n[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)\n\n## Installation\n\n```bash\n$ npm install @adobe/helix-universal-devserver\n```\n\n## Usage\n\n```\n// test/dev.js\n\nimport { DevelopmentServer } from '@adobe/helix-universal-devserver';\nimport { main } from '../src/index.js';\n\nasync function run() {\n const devServer = await new DevelopmentServer(main).init();\n await devServer.start();\n}\n\nrun().then(process.stdout).catch(process.stderr);\n```\n\n### Test Helix Deploy Bundle\n\nsometimes it is useful to test a bundled universal function directly, for example to verify that\nall imports are properly resolved. This can be achieved by setting the `adapter`, either to\n`lambda` or `lambda.raw`. the later bypasses loading of the secrets.\n\n```js\nimport { lambda } from '../../dist/helix-services/simple-function@2.4.44-bundle.cjs';\n\nasync function run() {\n  const devServer = await new DevelopmentServer()\n    .withHeader('x-forwarded-host', 'localhost:{port}')\n    .withAdapter(lambda.raw) // use raw adapter and don't load secrets\n    .init();\n  await devServer.start();\n}\n```\n\n### Using development params with the server\n\nSometimes it might be useful to specify action params that would be provided during deployment\nbut are not available during development. Those can be specified using the `hlx` configuration\nin your `package.json`. The development server will load parameters from:\n\n1. `hlx.package.params-file` and `hlx.package.params`\n2. `hlx.params-file` and `hlx.params`\n3. `hlx.dev.params-file` and `hlx.dev.params` (overrides the above)\n\nExample using `hlx` (recommended):\n\n```json5\n{\n  // ...\n  \"hlx\": {\n    \"name\": \"my-action@${version}\",\n    \"params-file\": [\n      \"secrets.env\"\n    ],\n    \"params\": {\n      \"MY_PARAM\": \"value\"\n    },\n    \"package\": {\n      \"params-file\": [\n        \"package-secrets.env\"\n      ],\n      \"params\": {\n        \"PACKAGE_PARAM\": \"package-value\"\n      }\n    },\n    \"dev\": {\n      \"params-file\": [\n        \".dev-secrets.env\"\n      ],\n      \"params\": {\n        \"DEV_PARAM\": \"dev-value\"\n      }\n    }\n  }\n  // ...\n}\n```\n\n**Note:** The deprecated `wsk` configuration key is still supported for backwards compatibility,\nbut `hlx` is now the recommended standard. If both are present, `hlx` takes precedence.\nSee the [helix-deploy documentation](https://github.com/adobe/helix-deploy?tab=readme-ov-file#specifying-arguments-in-the-packagejson) for more details.\n\n## Development\n\n### Build\n\n```bash\n$ npm install\n```\n\n### Test\n\n```bash\n$ npm test\n```\n\n### Lint\n\n```bash\n$ npm run lint\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadobe%2Fhelix-universal-devserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadobe%2Fhelix-universal-devserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadobe%2Fhelix-universal-devserver/lists"}