{"id":21413093,"url":"https://github.com/rixrix/stencil-lambda","last_synced_at":"2025-03-16T18:22:51.667Z","repository":{"id":66584650,"uuid":"64725862","full_name":"rixrix/stencil-lambda","owner":"rixrix","description":"A horribly simple starter template for all your serverless development on AWS lambda w/ Apex, TypeScript \u0026 Webpack","archived":false,"fork":false,"pushed_at":"2016-08-03T13:21:07.000Z","size":11,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-23T05:15:17.326Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rixrix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2016-08-02T05:07:03.000Z","updated_at":"2018-12-28T00:40:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"970819d5-5e3d-4a49-bf9f-a5745736d102","html_url":"https://github.com/rixrix/stencil-lambda","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rixrix%2Fstencil-lambda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rixrix%2Fstencil-lambda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rixrix%2Fstencil-lambda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rixrix%2Fstencil-lambda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rixrix","download_url":"https://codeload.github.com/rixrix/stencil-lambda/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243910761,"owners_count":20367544,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-22T18:16:47.283Z","updated_at":"2025-03-16T18:22:51.656Z","avatar_url":"https://github.com/rixrix.png","language":"JavaScript","readme":"# Stencil for [λ](https://aws.amazon.com/lambda/)\n\nA horribly simple starter template for all your serverless development on [AWS lambda](https://aws.amazon.com/lambda/) w/ [Apex](http://www.apex.run), [TypeScript](http://www.typescriptlang.org/) \u0026 [Webpack](https://webpack.github.io/).\n\n## Prerequisite\n\n- [NodeJS](https://nodejs.org/en/download/current/) (at least 4.3) recommend 5.x or 6.x\n- [Apex.run](http://www.apex.run)\n- [Amazon Web Services account](https://aws.amazon.com/)\n\n## How it works\n\n### Deployment\n\nMost of the time you will be interfacing with Apex command line utility from the build process, deployment\n\n```\n$\u003e apex deploy\n$\u003e apex build\n```\n### Webpack build\n\nThe way Apex run is bit different than your usual NodeJS project.\nApex runs Webpack build command inside each `functions/` folder thus if you have the following directory structure\nthen Webpack gets invoked for `account/index.ts` and `users/index.ts`\n\n```\n    functions/\n        L account/\n            index.ts\n            another-file.ts\n        L users/\n            index.ts\n            users-lib.ts\n        ...\n```\n\n### Webpack configuration\n\nThe current webpack config file is minimal and pretty much everything inside is easy to understand however there's one\nentry that is tightly coupled with Apex:\n\n`webpack.config.js`\n```\nvar distDir = './package';\n\noutput: {\n    path: distDir\n}\n...\n```\n\n`project.json`\n```\n{\n    \"handler\": \"package.default\"\n}\n```\n\nThe `package` output path from Webpack maps to the `handler` property in Apex.\n\n## Note\n\n\u003e The Webpack config has been absurdly copied from Apex [example](https://github.com/apex/apex/tree/master/_examples/babel-webpack)\n\n## License\n\nMIT\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frixrix%2Fstencil-lambda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frixrix%2Fstencil-lambda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frixrix%2Fstencil-lambda/lists"}