{"id":47536652,"url":"https://awslabs.github.io/cloudfront-hosting-toolkit/","last_synced_at":"2026-04-11T23:01:06.323Z","repository":{"id":211896636,"uuid":"727252770","full_name":"awslabs/cloudfront-hosting-toolkit","owner":"awslabs","description":"CloudFront Hosting Toolkit offers the convenience of a managed frontend hosting service while retaining full control over the hosting and deployment infrastructure to make it your own.","archived":false,"fork":false,"pushed_at":"2025-04-01T01:49:59.000Z","size":19906,"stargazers_count":108,"open_issues_count":4,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-10-21T09:37:04.993Z","etag":null,"topics":["aws-acm","aws-acm-certificate","aws-code-build","aws-codepipeline","aws-lambda","aws-route53","aws-step-functions","cloudfront","cloudfront-distribution","cloudfront-functions","hosting","hosting-aws","s3","s3-bucket"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/awslabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-12-04T13:50:36.000Z","updated_at":"2025-05-01T14:11:56.000Z","dependencies_parsed_at":"2023-12-11T13:48:40.109Z","dependency_job_id":"232987b4-306a-49d5-b9c6-5a52625ad039","html_url":"https://github.com/awslabs/cloudfront-hosting-toolkit","commit_stats":null,"previous_names":["awslabs/cloudfront-hosting-toolkit"],"tags_count":5,"template":false,"template_full_name":"amazon-archives/__template_Apache-2.0","purl":"pkg:github/awslabs/cloudfront-hosting-toolkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Fcloudfront-hosting-toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Fcloudfront-hosting-toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Fcloudfront-hosting-toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Fcloudfront-hosting-toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/awslabs","download_url":"https://codeload.github.com/awslabs/cloudfront-hosting-toolkit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Fcloudfront-hosting-toolkit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31698152,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T21:17:31.016Z","status":"ssl_error","status_checked_at":"2026-04-11T21:17:24.556Z","response_time":54,"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":["aws-acm","aws-acm-certificate","aws-code-build","aws-codepipeline","aws-lambda","aws-route53","aws-step-functions","cloudfront","cloudfront-distribution","cloudfront-functions","hosting","hosting-aws","s3","s3-bucket"],"created_at":"2026-03-28T07:00:24.671Z","updated_at":"2026-04-11T23:01:06.318Z","avatar_url":"https://github.com/awslabs.png","language":"TypeScript","funding_links":[],"categories":["Showcases"],"sub_categories":["Customization"],"readme":"# CloudFront Hosting Toolkit\n\nCloudFront Hosting Toolkit is an open-source command-line tool designed to simplify the deployment and management of fast, secure frontend applications on AWS. It offers the convenience of a managed frontend hosting service while giving developers full control over their hosting and deployment infrastructure.\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/awslabs/cloudfront-hosting-toolkit\"\u003e\u003cimg alt=\"GitHub Repo\" src=\"https://img.shields.io/badge/GitHub-Repo-green.svg\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.npmjs.com/package/@aws/cloudfront-hosting-toolkit\"\u003e\u003cimg alt=\"npm\" src=\"https://img.shields.io/npm/v/@aws/cloudfront-hosting-toolkit.svg?style=flat-square\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://awslabs.github.io/cloudfront-hosting-toolkit\"\u003e\u003cimg alt=\"Documentation\" src=\"https://img.shields.io/badge/docs-book-blue.svg?style=flat-square\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n\n## What is CloudFront Hosting Toolkit?\n\nCloudFront Hosting Toolkit is a comprehensive solution that automates the process of setting up and managing a robust, scalable frontend hosting infrastructure on AWS. It leverages several AWS services, including CloudFront, S3, CodePipeline, and Lambda, to create a powerful hosting environment tailored for modern web applications.\n\nKey features include:\n- 🚀 Automated setup of AWS resources for frontend hosting\n- 🔄 Continuous deployment pipeline for GitHub and S3-based workflows\n- 🌐 Optimized content delivery through CloudFront\n- 🔒 Built-in security features including HTTPS and security headers\n- 🔗 Custom domain support with automatic SSL/TLS certificate management\n- 🛠️ Flexible configuration options for various frontend frameworks\n\n## How It Works\n\nCloudFront Hosting Toolkit streamlines the deployment process through a simple CLI interface. It automatically provisions and configures necessary AWS resources, handles the deployment pipeline, and manages content delivery through CloudFront.\n\nFor a detailed explanation of the architecture and workflow, please refer to our [Architecture documentation](https://awslabs.github.io/cloudfront-hosting-toolkit/architecture/overview).\n\n## Why Use CloudFront Hosting Toolkit?\n\n- **Simplicity**: Deploy complex frontend hosting setups with just a few commands.\n- **Speed**: Leverage CloudFront's global CDN for fast content delivery.\n- **Security**: Automatic HTTPS configuration and security headers.\n- **Flexibility**: Support for various frontend frameworks and deployment sources.\n- **Cost-Effective**: Utilize AWS services efficiently without unnecessary overhead.\n- **Full Control**: Retain the ability to customize and extend your infrastructure.\n\n## Re:Invent 2024 lightning talk\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.youtube.com/watch?v=pmWhspx4ppw\"\u003e\n    \u003cimg src=\"https://img.youtube.com/vi/pmWhspx4ppw/maxresdefault.jpg\" alt=\"AWS re:Invent 2024 - CloudFront Hosting Toolkit lightning talk\" width=\"600\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nLearn how to leverage CloudFront Hosting Toolkit for deploying secure and fast frontends using Git-based workflows while maintaining full control over your AWS resources.\n\n\n\n## Getting Started\n\nCheck out our [documentation](https://awslabs.github.io/cloudfront-hosting-toolkit/) for comprehensive guides on setting up and using the Cloudfront Hosting Toolkit!\n\n\n\n### Requirements\n\n- Node.js 18+\n- AWS CLI 2+ configured with your AWS account\n- (Optional) A GitHub account for GitHub-based deployments\n\n### Installation\n\n```bash\nnpm install -g @aws/cloudfront-hosting-toolkit\n```\n\n### Quick Start\n\n1. Initialize your project:\n   ```bash\n   cloudfront-hosting-toolkit init\n   ```\n   The animated GIF below demonstrates the initialization process\n   ![sample](img/init.gif \"CloudFront Hosting Toolkit Init\")   \n\n2. Deploy your website:\n   ```bash\n   cloudfront-hosting-toolkit deploy\n   ```\n   The animated GIF below demonstrates the deployment process\n   ![sample](img/deploy.gif \"CloudFront Hosting Toolkit Deploy\")\n\n\nFor more detailed instructions and advanced usage, please refer to our [CLI Guide](https://awslabs.github.io/cloudfront-hosting-toolkit/user-guide/cli-guide).\n\n## Example Commands\n\n```bash\n# Show domain name\ncloudfront-hosting-toolkit show\n\n# Check deployment status\ncloudfront-hosting-toolkit status\n\n# Remove hosting infrastructure\ncloudfront-hosting-toolkit delete\n```\n\n## Architecture\n\n![Technical diagram](img/architecture.jpg)\n\nCloudFront Hosting Toolkit sets up a comprehensive AWS architecture for your frontend hosting:\n\n- **Source Control**: GitHub repository or S3 bucket\n- **CI/CD**: AWS CodePipeline for automated builds and deployments\n- **Build Process**: AWS CodeBuild for compiling and creating deployment artifacts\n- **Storage**: S3 buckets for hosting website files\n- **Content Delivery**: CloudFront for global content distribution\n- **Routing**: CloudFront Functions for request handling and routing\n- **Orchestration**: Step Functions for managing deployment processes\n- **State Management**: KVS for storing deployment state information\n\nThis architecture ensures a scalable, performant, and maintainable hosting solution for your frontend applications.\n\n## Advanced Usage\n\nCloudFront Hosting Toolkit offers flexibility in how it can be used:\n\n- **CLI**: Use the Command-Line Interface for a straightforward, step-by-step deployment process.\n- **CDK Construct**: Leverage the CloudFront Hosting Toolkit as a ready-made L3 CDK construct for seamless integration into your AWS CDK projects.\n- **CDK Source Code**: Customize the CDK source code to tailor the infrastructure to your specific requirements.\n\nFor more information on how to use CloudFront Hosting Toolkit, including advanced usage scenarios and in-depth customization options, please refer to our extensive documentation in the [Advanced section](https://awslabs.github.io/cloudfront-hosting-toolkit/advanced/configuration/).\n\n## Documentation\n\n- [How it works](https://awslabs.github.io/cloudfront-hosting-toolkit/getting-started/how-it-works)\n- [CLI Guide](https://awslabs.github.io/cloudfront-hosting-toolkit/user-guide/cli-guide)\n- [CDK Integration](https://awslabs.github.io/cloudfront-hosting-toolkit/user-guide/cdk-guide)\n- [Troubleshooting Guide](https://awslabs.github.io/cloudfront-hosting-toolkit/troubleshooting/guide)\n- [FAQ](https://awslabs.github.io/cloudfront-hosting-toolkit/project/faq)\n- [Contributing Guidelines](CONTRIBUTING.md)\n\n## Roadmap\n\nFor information about upcoming features and improvements, please see our [Roadmap](roadmap.md).\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](https://raw.githubusercontent.com/awslabs/cloudfront-hosting-toolkit/main/CONTRIBUTING.md) for more details.\n\n# Author\n\n- [Corneliu Croitoru](https://www.linkedin.com/in/corneliucroitoru/)\n\n# Contributors\n[![contributors](https://contrib.rocks/image?repo=awslabs/cloudfront-hosting-toolkit\u0026max=2000)](https://github.com/awslabs/cloudfront-hosting-toolkit/graphs/contributors)\n\n\n\n\n\n## License\n\nThis library is licensed under the Apache-2.0 License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/awslabs.github.io%2Fcloudfront-hosting-toolkit%2F","html_url":"https://awesome.ecosyste.ms/projects/awslabs.github.io%2Fcloudfront-hosting-toolkit%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/awslabs.github.io%2Fcloudfront-hosting-toolkit%2F/lists"}