Metadata-Version: 2.1
Name: cdk-simplewebsite-deploy
Version: 0.4.19
Summary: This is an AWS CDK Construct to simplify deploying a single-page website use CloudFront distributions.
Home-page: https://github.com/SnapPetal/cdk-simplewebsite-deploy
Author: Thon Becker<thon.becker@gmail.com>
License: Apache-2.0
Project-URL: Source, https://github.com/SnapPetal/cdk-simplewebsite-deploy
Description: [![License](https://img.shields.io/badge/License-Apache%202.0-yellowgreen.svg)](https://opensource.org/licenses/Apache-2.0)
        ![Build](https://github.com/SnapPetal/cdk-simplewebsite-deploy/workflows/Build/badge.svg)
        ![Release](https://github.com/SnapPetal/cdk-simplewebsite-deploy/workflows/Release/badge.svg?branch=main)
        
        # cdk-simplewebsite-deploy
        
        This is an AWS CDK Construct to simplify deploying a single-page website using either S3 buckets or CloudFront distributions.
        
        ## Installation and Usage
        
        ### [CreateBasicSite](https://github.com/snappetal/cdk-simplewebsite-deploy/blob/main/API.md#cdk-cloudfront-deploy-createbasicsite)
        
        #### Creates a simple website using S3 buckets with a domain hosted in Route 53.
        
        ##### Typescript
        
        ```console
        npm install cdk-simplewebsite-deploy
        ```
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        import aws_cdk.core as cdk
        from cdk_simplewebsite_deploy import CreateBasicSite
        
        class PipelineStack(cdk.Stack):
            def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, synthesizer=None, terminationProtection=None, analyticsReporting=None):
                super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting)
        
                CreateBasicSite(stack, "test-website",
                    website_folder="./src/build",
                    index_doc="index.html",
                    hosted_zone="example.com"
                )
        ```
        
        ##### C#
        
        ```console
        dotnet add package ThonBecker.CDK.SimpleWebsiteDeploy
        ```
        
        ```cs
        using Amazon.CDK;
        using ThonBecker.CDK.SimpleWebsiteDeploy;
        
        namespace SimpleWebsiteDeploy
        {
            public class PipelineStack : Stack
            {
                internal PipelineStack(Construct scope, string id, IStackProps props = null) : base(scope, id, props)
                {
                    new CreateBasicSite(scope, "test-website", new BasicSiteConfiguration()
                    {
                        WebsiteFolder = "./src/build",
                        IndexDoc = "index.html",
                        HostedZone = "example.com",
                    });
                }
            }
        }
        ```
        
        ##### Java
        
        ```xml
        <dependency>
        	<groupId>com.thonbecker.simplewebsitedeploy</groupId>
        	<artifactId>cdk-simplewebsite-deploy</artifactId>
        	<version>0.4.2</version>
        </dependency>
        ```
        
        ```java
        package com.myorg;
        
        import software.amazon.awscdk.core.Construct;
        import software.amazon.awscdk.core.Stack;
        import software.amazon.awscdk.core.StackProps;
        import com.thonbecker.simplewebsitedeploy.CreateBasicSite;
        
        public class MyProjectStack extends Stack {
            public MyProjectStack(final Construct scope, final String id) {
                this(scope, id, null);
            }
        
            public MyProjectStack(final Construct scope, final String id, final StackProps props) {
                super(scope, id, props);
        
                CreateBasicSite.Builder.create(this, "test-website")
                		.websiteFolder("./src/build")
                		.indexDoc("index.html")
                		.hostedZone("example.com");
            }
        }
        ```
        
        ##### Python
        
        ```console
        pip install cdk-simplewebsite-deploy
        ```
        
        ```python
        from aws_cdk import core
        from cdk_simplewebsite_deploy import CreateBasicSite
        
        
        class MyProjectStack(core.Stack):
        
            def __init__(self, scope: core.Construct, construct_id: str, **kwargs) -> None:
                super().__init__(scope, construct_id, **kwargs)
        
                CreateBasicSite(self, 'test-website', website_folder='./src/build',
                                index_doc='index.html',
                                hosted_zone='example.com')
        ```
        
        ### [CreateCloudfrontSite](https://github.com/snappetal/cdk-simplewebsite-deploy/blob/main/API.md#cdk-cloudfront-deploy-createcloudfrontsite)
        
        #### Creates a simple website using a CloudFront distribution with a domain hosted in Route 53.
        
        ##### Typescript
        
        ```console
        npm install cdk-simplewebsite-deploy
        ```
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        import aws_cdk.core as cdk
        from cdk_simplewebsite_deploy import CreateCloudfrontSite
        
        class PipelineStack(cdk.Stack):
            def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, synthesizer=None, terminationProtection=None, analyticsReporting=None):
                super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting)
        
                CreateCloudfrontSite(stack, "test-website",
                    website_folder="./src/dist",
                    index_doc="index.html",
                    hosted_zone="example.com",
                    sub_domain="www.example.com"
                )
        ```
        
        ##### C#
        
        ```console
        dotnet add package ThonBecker.CDK.SimpleWebsiteDeploy
        ```
        
        ```cs
        using Amazon.CDK;
        using ThonBecker.CDK.SimpleWebsiteDeploy;
        
        namespace SimpleWebsiteDeploy
        {
            public class PipelineStack : Stack
            {
                internal PipelineStack(Construct scope, string id, IStackProps props = null) : base(scope, id, props)
                {
                    new CreateCloudfrontSite(scope, "test-website", new CloudfrontSiteConfiguration()
                    {
                        WebsiteFolder = "./src/build",
                        IndexDoc = "index.html",
                        HostedZone = "example.com",
                        SubDomain = "www.example.com",
                    });
                }
            }
        }
        ```
        
        ##### Java
        
        ```xml
        <dependency>
        	<groupId>com.thonbecker.simplewebsitedeploy</groupId>
        	<artifactId>cdk-simplewebsite-deploy</artifactId>
        	<version>0.4.2</version>
        </dependency>
        ```
        
        ```java
        package com.myorg;
        
        import software.amazon.awscdk.core.Construct;
        import software.amazon.awscdk.core.Stack;
        import software.amazon.awscdk.core.StackProps;
        import com.thonbecker.simplewebsitedeploy.CreateCloudfrontSite;
        
        public class MyProjectStack extends Stack {
            public MyProjectStack(final Construct scope, final String id) {
                this(scope, id, null);
            }
        
            public MyProjectStack(final Construct scope, final String id, final StackProps props) {
                super(scope, id, props);
        
                CreateCloudfrontSite.Builder.create(this, "test-website")
                		.websiteFolder("./src/build")
                		.indexDoc("index.html")
                		.hostedZone("example.com")
                		.subDomain("www.example.com");
            }
        }
        ```
        
        ##### Python
        
        ```console
        pip install cdk-simplewebsite-deploy
        ```
        
        ```python
        from aws_cdk import core
        from cdk_simplewebsite_deploy import CreateCloudfrontSite
        
        
        class MyProjectStack(core.Stack):
        
            def __init__(self, scope: core.Construct, construct_id: str, **kwargs) -> None:
                super().__init__(scope, construct_id, **kwargs)
        
                CreateCloudfrontSite(self, 'test-website', website_folder='./src/build',
                                     index_doc='index.html',
                                     hosted_zone='example.com',
                                     sub_domain='www.example.com')
        ```
        
        ## License
        
        Distributed under the [Apache-2.0](./LICENSE) license.
        
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Typing :: Typed
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved
Requires-Python: >=3.6
Description-Content-Type: text/markdown
