{"id":19242704,"url":"https://github.com/scaffoldly/scaffoldly","last_synced_at":"2025-04-21T09:32:43.308Z","repository":{"id":245082129,"uuid":"817333695","full_name":"scaffoldly/scaffoldly","owner":"scaffoldly","description":"The Scaffoldly Toolchain: Deploy anything to AWS Lambda in Minutes","archived":false,"fork":false,"pushed_at":"2024-10-21T12:23:11.000Z","size":248652,"stargazers_count":17,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-22T09:52:50.180Z","etag":null,"topics":["aws","axum","csharp","dotnet","express","flask","hyper","lambda","nextjs","node","python","rust","scaffoldly"],"latest_commit_sha":null,"homepage":"https://scaffoldly.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scaffoldly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["scaffoldly"]}},"created_at":"2024-06-19T13:40:47.000Z","updated_at":"2024-10-21T12:23:16.000Z","dependencies_parsed_at":"2024-09-16T15:05:29.994Z","dependency_job_id":"20a64caa-ec35-4441-a8d8-c087008b3cda","html_url":"https://github.com/scaffoldly/scaffoldly","commit_stats":null,"previous_names":["scaffoldly/cli","scaffoldly/scaffoldly"],"tags_count":456,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaffoldly%2Fscaffoldly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaffoldly%2Fscaffoldly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaffoldly%2Fscaffoldly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scaffoldly%2Fscaffoldly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scaffoldly","download_url":"https://codeload.github.com/scaffoldly/scaffoldly/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250032201,"owners_count":21363792,"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":["aws","axum","csharp","dotnet","express","flask","hyper","lambda","nextjs","node","python","rust","scaffoldly"],"created_at":"2024-11-09T17:15:15.144Z","updated_at":"2025-04-21T09:32:38.253Z","avatar_url":"https://github.com/scaffoldly.png","language":"TypeScript","funding_links":["https://github.com/sponsors/scaffoldly"],"categories":[],"sub_categories":[],"readme":"Scaffoldly is a **new framework** for **packaging and deploying** applications to AWS. Scaffoldly provides:\n\n- a [Simple Configuration](#usage) to specify packaging and runtime configuration.\n- a [Command Line Interface](#command-line-interface) for packaging and deploying locally.\n- a [GitHub Action](#github-action) for packaging and deploying in CI/CD.\n\nIt is a **open-source**, **no-code**, **developer-focused** solution that simplifies the packaging and deployment process for modern web applications.\n\n✨ Our **[docs site](https://scaffoldly.dev)** is built and deployed **using Scaffoldly** ([source](https://github.com/scaffoldly/scaffoldly/blob/729100c6ef18de6105d0f12c721640be8e8df004/packages/website/package.json#L59-L87)), which uses the **Docusaurus Framework**, is hosted on **AWS Lambda**, and is deployed using **GitHub Actions** ([source](https://github.com/scaffoldly/scaffoldly/blob/729100c6ef18de6105d0f12c721640be8e8df004/.github/workflows/push-main.yml#L49-L52)).\n\n### Motivation\n\n- Current tooling (such as Serverless, AWS SAM, Terraform, Pulumi, AWS CDKs, and Docker) is **unintuitive** and **cumbersome** for developers.\n- Popular frameworks (such as Next.js) are **expensive** and **difficult** to deploy to public Clouds Providers such as AWS.\n- Most applications can be run **cost effectively** in **serverless compute** such as AWS Lambda.\n\nWe believe that developing apps locally has been made incredibly easy. **Deploying them to the Cloud Provider of your choice should be equally easy**. [Learn More](https://scaffoldly.dev/about).\n\n### Key Features\n\n- **Automatic Docker Image Generation**: No need to write Dockerfiles manually.\n- **Infrastructure Automation**: Automatically create and manage AWS resources.\n- **Built-in CI/CD Support**: Integrate with GitHub Actions for seamless deployments.\n- **Environment Variables and Secrets**: Dotenv and GitHub Secrets are built-in.\n- **Minimal configuration required**: Get started quickly with sensible defaults.\n- **Built for the Public Cloud**: Deploy applications to AWS Lambda effortlessly. Don't get locked into using Vercel or Netlify.\n- **Cost Effective**: Only pay for what you use with AWS Lambda.\n\n## Tutorials\n\n- Next.js: [Deploy a Next.js application to AWS lambda in 5 minutes](https://scaffoldly.dev/docs/tutorials/nextjs)\n\n## Usage\n\nUsing a minimal configuration in `package.json`, the `scaffoldly` toolchain can package and deploy an application:\n\n```jsonc title=\"package.json\"\n{\n  \"name\": \"my-app\",\n  \"version\": \"0.1.0\",\n  // other package.json\n  \"scaffoldly\": {\n    \"runtime\": \"node:22-alpine\",\n    \"handler\": \"localhost:3000\",\n    \"files\": [\".next\", \"node_modules\", \"package.json\", \"package-lock.json\"],\n    \"scripts\": {\n      \"install\": \"npm install\",\n      \"dev\": \"npm run dev\",\n      \"build\": \"npm run build\",\n      \"start\": \"npm run start\"\n    }\n  }\n}\n```\n\nRunning [`scaffoldly deploy`](#command-line-interface) or the [GitHub Action](#github-action) will automatically create and push a multi-stage Docker build to ECR and deploy it to AWS Lambda.\n\n### Command Line Interface\n\n```bash\nnpx scaffoldly [command]\n```\n\nThe Scaffoldly CLI is a developer friendly tool build and host applications on AWS Lambda with ease, and is available on [npm](https://www.npmjs.com/package/scaffoldly) and can be invoked using `npx`.\n\n```\nCommands:\n  npx scaffoldly show    Display config, dockerfiles, etc.\n  npx scaffoldly dev     [ALPHA FEATURE] Launch a development environment\n  npx scaffoldly deploy  Deploy an environment\n\nOptions:\n  --help     Show help  [boolean]\n  --version  Show version number  [boolean]\n```\n\n_**See**_: [CLI Docs](https://scaffoldly.dev/docs/cli) for more iformation.\n\n### GitHub Action\n\n```yaml\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout\n        uses: actions/checkout@v4\n\n      - name: Deploy\n        uses: scaffoldly/scaffoldly@v1\n        with:\n          secrets: ${{ toJSON(secrets) }}\n```\n\nScaffoldly provides a seamless integration with GitHub Actions, allowing you to deploy your applications using GitHub, and is available on the [GitHub Actions Marketplace](https://github.com/marketplace/actions/scaffoldly).\n\n_**See**_: [GitHub Action Docs](https://scaffoldly.dev/docs/gha) for more information.\n\n### Usage Metrics Opt-Out\n\nIf you do not want to be included in Anonymous Usage Metrics, ensure an environment variable named `SCAFFOLDLY_DNT` is set:\n\n```bash\nSCAFFOLDLY_DNT=1 npx scaffoldly\n```\n\n## Documentation\n\nDocumentation for the Scaffoldly toolchain is located at [https://scaffoldly.dev/docs](https://scaffoldly.dev/docs).\n\n## Reporting Issues\n\n- **Bugs and Features**: Please [Open a New Issue](https://github.com/scaffoldly/cli/issues/new/choose) in GitHub.\n- **Security Advisories**: Please [Report a Advisory](https://github.com/scaffoldly/scaffoldly/security/advisories/new) in GitHub.\n\n## Maintainers\n\n- [Scaffoldly](https://github.com/scaffoldly)\n- [cnuss](https://github.com/cnuss)\n\n## License\n\n[Functional Source License, Version 1.1](https://github.com/scaffoldly/scaffoldly?tab=License-1-ov-file)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscaffoldly%2Fscaffoldly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscaffoldly%2Fscaffoldly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscaffoldly%2Fscaffoldly/lists"}