Socket
Socket
Sign inDemoInstall

@softchef/cdk-vue

Package Overview
Dependencies
Maintainers
1
Versions
419
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@softchef/cdk-vue

Auto deploy website with VueJs to S3 bucket and CloudFront distribution.


Version published
Weekly downloads
3
decreased by-90.62%
Maintainers
1
Weekly downloads
 
Created
Source

AWS CDK with VueJs

npm version Release npm

AWS CDK with VueJs package will auto deploy website with VueJs to S3 bucket and CloudFront distribution.

VueJs will build on local environment or docker container, it's based with Vue-CLI project. Then use S3-Deployment to upload to specify S3 bucket.

If you have many resource arguments will pass to frontend, the config property will generate config.js to specify S3 bucket. It's a VueJs extendsion and archive config in Vue.$config operation.

Architecture

Installation

  npm install @softchef/cdk-vue
  // or
  yarn add @softchef/cdk-vue

Example

import { VueDeployment } from '@softchef/cdk-vue'
// In your stack
// Basic deployment
const website = new VueDeployment(this, 'Website', {
  source: `${CLIENTS_PATH}`,
  config: {
    apiId: articleApi.restApiId, // RestApi
    userPoolId: userPool.userPoolId, // UserPool
    foo: {
      bar: {
        value: 123 // Customize config
      }
    }
  }
})

VueDeployment Properties

{
  source: string;

  // Use target bucket or create new bucket(if not specify)
  bucket?: s3.Bucket;

  // Specify S3 bucket name, if not specify will random generate
  bucketName?: string;

  // S3 bucket prefix, ex: "/website"
  websiteDirectoryPrefix?: string;

  // CloudFront distribution defaultRootObject, default is "index.html"
  indexHtml?: string;

  // CloudFront will enable/disable Ipv6 options
  enableIpv6?: boolean;

  // Pass env variables to Vue-CLI bundling, you can get its in process.env(frontend)
  environment?: { [ key: string ]: string };

  // Pass bundling arguments to Vue-CLI
  bundlingArguments?: string;

  // Force run Vue-CLI build in local
  runsLocally?: boolean;

  // Force use docker to bundling
  forceDockerBundling?: boolean;

  // Specify the "config.js" in your web bucket key, default is "/config.js"
  configJsKey?: string;

  // Config object will upload to web bucket(config.js)
  config?: { [key: string]: any };
}

VueJs Example

// In public/index.html
<script type="text/javascript" src="/config.js">

// In main.js or app.js
Vue.use(window.CloudDeploymentConfig)

// In *.vue
export default {
  mounted () {
    this.$config.get('apiId')
    this.$config.get('foo.bar.value') // use "." to get value recursively
  }
}

Keywords

FAQs

Package last updated on 25 Jul 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc