ZeroCode.js

シンプルに編集画面を。フレームワーク非依存のCMSフロントエンドライブラリ

ZeroCode.js

主な特徴

CSS/JSの完全分離

WebコンポーネントのShadow DOMによりCSS/JSを完全に分離。既存の管理画面に影響を与えず、管理画面側のCSS/JSにも影響されません。内部でVue 3を使用しており利用時は別途読み込みが必要ですが、Vue/React/Laravelなどどの環境でも安全に組み込めます。

学習コストが低い

Web Components標準で実装されているため、HTML/CSS/JSの基礎知識があれば理解できます。Vue 3を内部で使用していますが、フレームワーク非依存のAPIを提供するため、Vueの詳細な知識は不要です。独自のテンプレート記法で柔軟なコンテンツ管理ができます。

直感的な操作

クリック操作で誰でも使えるCMS。ドラッグ&ドロップ不要で、編集・追加・削除・並べ替えが簡単です。選択中の要素には視覚的なフィードバックが表示され、操作が分かりやすくなっています。

アーキテクチャ

ZeroCode.jsはフロントエンドのみを責務とします

バックエンド
データ管理・API
→
ZeroCodeCMS
ユーザー向け管理画面
編集・追加・削除・並べ替え
ZeroCodeEditor
エンジニア・デザイナー向け
パーツ管理・画像管理
←
保存リクエスト
データを返却
ZeroCode.jsはフロントエンドライブラリのため、バックエンドの実装は呼び出し側で行います。バックエンドがなくても開発を始められます。デモやローカル開発は単体で動作し、本番用の保存処理が必要になったタイミングでバックエンドを用意してください。

なぜZeroCode.jsを選ぶべきか

既存システムへの組み込みにも、新規開発にも。フレームワークに縛られません。

既存システムに統合したい

Web ComponentsのShadow DOMにより、既存システムのCSS/JSに影響を与えず、既存システム側のCSS/JSにも影響されません。既存のLaravel管理画面やReact/Vueアプリに、Web Componentsとして組み込むだけでCMS機能が使えます。既存の認証システムやデータベースをそのまま活用できます。

フレームワークを選びたくない

Web Components標準で実装されているため、Vue/React/Laravelなどどの環境でも使用可能です。フレームワーク非依存のAPIを提供するため、既存の技術スタックをそのまま活用でき、新しいフレームワークを学習する必要がありません。HTML/CSS/JSの基礎知識があれば理解できます。

フロントエンド専用が欲しい

フロントエンド専用のため、バックエンドは本番用の保存が必要になったときに用意すればOKです。まずはサーバーなしで開発を始められ、準備ができたら保存用APIと連携できます。フルスタックCMSより軽く導入しやすいです。

デモを試す

依存や副作用の少ないWebコンポーネントの3段階の責務分け

開発用

エンジニア用管理画面 (Dev)

開発者・デザイナー向けの管理画面。全機能が利用できます。

  • パーツ管理
  • 画像管理
  • データビューア
<zcode-editor></zcode-editor>
デモを試す(操作可能) →

💡 全機能を試せます(パーツ管理・画像管理含む)

→
ユーザー用

ユーザー用管理画面 (CMS)

コンテンツ編集者向けの管理画面。編集機能が利用できます。

  • 編集・追加・削除・並べ替え
  • パーツ管理なし
  • 画像管理なし
<zcode-cms></zcode-cms>
デモを試す(操作可能) →

💡 クリックで編集・追加・削除ができます

→
公開サイト用

公開用 (Pub)

サーバーサイドレンダリング専用。HTML文字列を生成します。

  • HTML文字列生成のみ
  • 編集機能なし
  • 軽量で副作用なし
renderToHtml(data)
デモを開く

クイックスタート

はじめよう

<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="https://unpkg.com/zerocodejs/dist/zerocodejs.css">
</head>
<body>
  <zcode-editor></zcode-editor>

  <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
  <script src="https://unpkg.com/zerocodejs/dist/zerocode.umd.js"></script>
</body>
</html>
npm install zerocodejs

<!-- index.html -->
<link rel="stylesheet" href="node_modules/zerocodejs/dist/zerocodejs.css">
<zcode-editor></zcode-editor>
<script type="module">
  import 'zerocodejs';
</script>
import 'zerocodejs';
import 'zerocodejs/style.css';

function App() {
  return <zcode-editor />;
}
<template>
  <zcode-editor />
</template>

<script setup>
import 'zerocodejs';
import 'zerocodejs/style.css';
</script>

ドキュメント

詳細な使い方やAPIリファレンスは
ドキュメントページをご覧ください

ドキュメントを見る