# @slsplus/core

> Serverless Plus Components

Latest version **1.1.8** (published 2020-04-02) · MIT license · 0 weekly downloads

## Install

```sh
npm install @slsplus/core
pnpm add @slsplus/core
yarn add @slsplus/core
bun add @slsplus/core
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.8 |
| Published | 2020-04-02 |
| First published | 2020-03-17 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 8 |
| Unpacked size | 38 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Serverless Plus |
| Maintainers | yugasun |

## Links

- npm: https://www.npmjs.com/package/@slsplus/core
- Repository: https://github.com/serverless-plus/components
- Homepage: https://github.com/serverless-plus/components#readme
- Issues: https://github.com/serverless-plus/components/issues
- npm.io page: https://npm.io/package/@slsplus/core

## Dependencies (8)

- [ramda](https://npm.io/package/ramda.md) ^0.26.1
- [semver](https://npm.io/package/semver.md) ^6.1.1
- [js-yaml](https://npm.io/package/js-yaml.md) ^3.13.1
- [fs-extra](https://npm.io/package/fs-extra.md) ^7.0.1
- [global-agent](https://npm.io/package/global-agent.md) ^2.1.8
- [package-json](https://npm.io/package/package-json.md) ^6.3.0
- [registry-url](https://npm.io/package/registry-url.md) ^5.1.0
- [global-tunnel-ng](https://npm.io/package/global-tunnel-ng.md) ^2.7.1

## Recent versions

- 1.1.8 (latest) — 2020-04-02
- 1.1.7 — 2020-03-25
- 1.1.6 — 2020-03-19
- 1.1.5 — 2020-03-17
- 1.1.4 — 2020-03-17
- 1.1.3 — 2020-03-17

## README

## Serverless Plus Components Core

Thanks to [serverless/components](https://github.com/serverless/components).

Build, compose, & deploy serverless apps in seconds with **Serverless Components**, the **[Serverless Framework's](https://github.com/serverless-plus/serverless)** new infrastructure provisioning technology.

- - [x] **Speed -** The fastest way to deploy serverless infra and apps.
- - [x] **Power -** Deploy low-level infra, or higher-order use-case abstractions.
- - [x] **Re-Use -** Everything you build is reusable by you, your team, and (if you want) the world.
- - [x] **Composition -** Easily compose Components together in YAML or Javascript.

Here's how easy it is to use Components with Serverless Framework:

```yaml
# serverless.yml
name: website

website:
  component: '@serverless/tencent-website'
  inputs:
    code:
      src: ./src
      hook: npm run build
```

## Quick-Start

Install the [Serverless Plus](https://www.github.com/serverless-plus/serverless) via NPM:

```console
$ npm i -g slsplus
```

#### [部署 Serverless 全栈 WEB 应用（React.js）](https://github.com/serverless/components/tree/master/templates/tencent-fullstack-react-application)

本示例以 React 为前端，Express 框架作为后端，通过多个 Serverless Components 部署 Serverless 全栈应用程序。

```shell
$ slsplus create --template-url https://github.com/serverless-plus/components/tree/master/templates/tencent-fullstack-react-application
```

## Reusability

While Serverless Components can be easily composed in YAML (`serverless.yml`), they are written as reusable javascript libraries (`serverless.js`), with simple syntax inspired by component-based frameworks, like React.

```javascript
// serverless.js

const { Component } = require('@serverless/core')

class MyBlog extends Component {
  async default(inputs) {
    this.context.status('Deploying a serverless blog')
    const website = await this.load('@serverless/tencent-website') // Load a component
    const outputs = await website({ code: { src: './blog-code' } }) // Deploy it
    this.state.url = outputs.url
    await this.save()
    return outputs
  }
}

module.exports = MyBlog
```

Anyone can build a Serverless Component and share it in our upcoming Registry.

## Resources

[awesome-serverless-framework](https://github.com/yugasun/awesome-serverless-framework)

---
_Source: https://npm.io/package/@slsplus/core · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
