Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/simplajs/simpla

Open, modular, and serverless content management for a modern web
https://github.com/simplajs/simpla

cms cms-framework content-management json-api sdk simpla web-components

Last synced: about 1 month ago
JSON representation

Open, modular, and serverless content management for a modern web

Lists

README

        



Simpla


Test status
Size (gzip)
NPM version
PRs welcome

Simpla is a modular content system for frontend developers, built on Web Components.

At a glance, it lets you:

- Build with standard HTML & JS
- Edit content (safely) inline
- Use Github as your backend
- Work in any stack or framework
- Push everything as JSON data to a static CDN
- Define content models in the DOM
- Assemble your own lightweight CMS

It looks like this:

```html




```


Demo of Simpla

## Installation

Simpla is available on NPM and Unpkg as `simpla`.

```sh
npm i simpla
```

Import the core library and an OAuth adapter, and call `Simpla.init`

```js
// Import Simpla and OAuth adapter
import Simpla from 'simpla';
import SimplaNetlify from 'simpla/adapters/netlify';

// Init Simpla
Simpla.init({

// Github repo to store content in
repo: 'username/repo',

// Adapter to authenticate users with Github
auth: new SimplaNetlify({ site: 'mysite' }),

// Public URL of your content (optional)
source: 'https://mysite.netlify.com'

});

// Add Simpla to window global for components to access
window.Simpla = Simpla;
```

Simpla and its adapters export UMD modules, so you can also link to them with `` tags and use the globals directly.

Simpla uses [web components](https://www.webcomponents.org) to manage content, the library itself is just a tiny (~4kb) core to an expansive ecosystem. Install and add components to your page with Bower and HTML imports (NPM/JS support coming soon). You can find components in the [elements catalogue](https://www.webcomponents.org/collection/simplajs/simpla-elements).

```sh
$ bower i simpla-text simpla-img simpla-admin --save
```

```html
<link rel="import" href="/bower_components/simpla-text/simpla-text.html">
<link rel="import" href="/bower_components/simpla-img/simpla-img.html">
<link rel="import" href="/bower_components/simpla-admin/simpla-admin.html" async>
```

You should also include a web components polyfill for full cross-browser support (see the [browsers Simpla supports](https://docs.simplajs.org/guides/browser-support.html)).

```html
<script src="https://unpkg.com/webcomponents.js@^0.7.24/webcomponents-lite.min.js" async>
```

**[See full documentation & API references](https://docs.simplajs.org)**

## Contributing

There are lots of ways you can help push the Simpla project forward:

- **Reporting bugs.** If you find a bug please report it! Open an issue against this repository for problems with the core library. For problems with elements, open an issue against the element's repository.

- **Submitting Pull Requests.** We ❤️ PRs! Your PR should address an existing issue or have been discussed previously to ensure it gets merged.

- **Publishing new components** Simpla is a community driven project, and the best way you can contribute is to build your own content components. The ecosystem is built on Web Components, but there's no reason you couldn't use Simpla in a component environment of your choice (React, etc).

Read the [Contributing guidelines](/CONTRIBUTING.md) for more information.

***

[MIT](/LICENSE) © 2017