@serverless-ide/client

Serverless IDE autocomplete plugin with AWS SAM support

Usage no npm install needed!

<script type="module">
  import serverlessIdeClient from 'https://cdn.skypack.dev/@serverless-ide/client';
</script>

README

Marketplace Version

Serverless IDE: Enahnced support of AWS SAM in Visual Studio Code

Provides comprehensive AWS SAM (Serverless Application Model) and Cloudformation support to Visual Studio Code.

Features

  1. Validation:
    • Detects whether the entire file is valid SAM template
    • Detects errors such as:
      • Node is not found
      • Node has an invalid key node type
      • Node has an invalid type
      • Node is not a valid child node
  2. Auto completion (Ctrl + Space):
    • Auto completes on all commands
    • Scalar nodes autocomplete to schema's defaults if they exist
  3. Formatter:
    • Allows for formatting the current file

Settings

The following settings are supported:

  • serverlessIDE.provider: Provider (default to aws-sam)
  • serverlessIDE.templatePattern: Pattern for config file name (default to *.sam.yaml)
  • serverlessIDE.validate: Enable/disable validation feature
  • serverlessIDE.hover: Enable/disable hover
  • serverlessIDE.completion: Enable/disable autocompletion
  • [yaml]: VSCode-YAML adds default configuration for all yaml files. More specifically it converts tabs to spaces to ensure valid yaml, sets the tab size, and allows live typing autocompletion. These settings can be modified via the corresponding settings inside the [yaml] section in the settings:
    • editor.insertSpaces
    • editor.tabSize
    • editor.quickSuggestions

Contributions

All contributions are welcome!

Getting started

  1. Install prerequisites:
  2. Fork and clone this repository
  3. Install lerna and dependencies
    yarn global add lerna
    lerna bootstrap
  1. Compile Typescript
    lerna compile

Developing the client side

  1. Open packages/client in vscode
  2. Make changes as neccessary and the run the code using Launch Extension command (F5)

Developing the server side

  1. Open packages/server in vscode

Refer to VS Code documentation on how to run and debug the extension

Update SAM json schema

  1. Open packages/sam-schema
  2. Make changes and run yarn generate to update schema
  3. Check changes with Launch Extension command

Installation from Github Release

To obtain and install the latest release from github you can:

  • First download the latest *.vsix file from Github Releases section
  • Inside of VSCode navigate to the extension tab and click the three elipses (...).
  • Click install from VSIX and provide the location of the *.vsix that was downloaded

License

MIT