1.2.1 • Published 4 months ago

@uniwebcms/uniweb-rte v1.2.1

Weekly downloads
-
License
GPL-3.0-or-later
Repository
-
Last release
4 months ago

Uniweb RTE (Runtime Environment)

Uniweb RTE is an open-source runtime environment for websites powered by remote runtime modules. It provides a lightweight, self-hosted alternative for testing, developing, and deploying runtime module-based sites without requiring access to a Uniweb app.

🚀 Why Uniweb RTE?

A Developer-First Approach

Uniweb RTE is a flexible and streamlined way to power a website whose components are provided by a remote runtime module.

What Uniweb RTE Is

  • An open-source engine that lets you self-host Uniweb-compatible sites with your own data.
  • A local environment for testing Uniweb runtime modules.
  • A flexible tool that can evolve with community contributions for use-cases that don't require a CMS backend.

What Uniweb CMS Is

Uniweb is a no-code content management system (CMS), with its main instance at uniweb.app and enterprise instances available for organizations. It helps everyone create dynamic websites with ease. Each website is linked to a component library packaged as a runtime module. By using Uniweb, you'll enjoy benefits like:

  • 👥 Teamwork: Work with content creators by providing components they can select and customize.
  • 🌐 Infrastructure: Use standard features like hosting, multilingualism, search, and dynamic data.
  • 🔁 Reusability: Share components across multiple websites to save time and effort.
  • 🔧 Maintainability: Easily update your component library and watch the changes propagate to all connected websites.

What Uniweb RTE Is Not

  • A replacement for Uniweb CMS – Uniweb CMS remains the most advanced, full-featured way to build and manage Uniweb-powered sites.
  • A feature-complete alternative – While Uniweb RTE enables local testing and deployment, it does not provide the full-scale infrastructure, integrations, and management features of Uniweb CMS.
  • A content management solution – Unlike Uniweb CMS, Uniweb RTE does not include built-in tools for content editing, workflow management, or administrative controls.

🔧 Getting Started

Uniweb RTE is designed to be simple to set up and use as an npm package within a Git project. Each site runs independently, making it easy to manage and deploy. Follow these steps to start developing with it:

1️⃣ Create a New Git Project

Start by creating a new Git repository or using an existing one:

git init my-site
cd my-site

2️⃣ Install Uniweb RTE

Install Uniweb RTE as a local dependency:

npm install @uniwebcms/uniweb-re --save-dev

3️⃣ Initialize the Site

Run the following command to set up the necessary project structure:

npx uniweb-re init

This will generate the required folder structure and configuration files for your site.

4️⃣ Link a Runtime Module

Once your site is initialized, link a runtime module by specifying its URL:

npx uniweb-re use <module-url>

The module URL can be a public location or a local instance running on another port. If using a local module, ensure that it is being served separately, typically through a local development web server.

5️⃣ Start Local Development

Run the following command to start the development server:

npx uniweb-re start

Now, your local site is running and using the selected runtime module. Uniweb RTE includes a lightweight web server that serves the project as a single-page application (SPA), using React Router and other client-side technologies to handle navigation and rendering.

🔄 Using Local Modules

When working with a local runtime module, remember:

  • The module project and the Uniweb RTE project are separate repositories.
  • The module must be served locally on a different port.
  • Our starter repo for module development includes a built-in web server and scripts to simplify local hosting.
  • The same hosting setup is used whether the module is consumed by a Uniweb RTE project or accessed via a public tunnel.

Example workflow for using a local module:

# In the runtime module project (e.g., my-module)
npx uniweb-module start --port 5001

# In the Uniweb RTE project (e.g., my-site)
npx uniweb-re use http://localhost:5001
npx uniweb-re start

🛠 How It Works

Uniweb RTE provides a simplified version of the Uniweb Core library, initially geared towards working with static data. The first versions read data for each page section from a JS or JSON file. While multilingual support and dynamic data fetching may be introduced over time, Uniweb RTE currently focuses on providing a self-contained, developer-friendly package for structured content.

Key Features

Local-first development – No need to set up tunnels or external dependencies.
Realistic testing environment – See how your runtime module behaves in a real runtime.
Composable architecture – Works with any Uniweb-compatible runtime module.
Open-source & extensible – The community can shape its evolution.

🤝 Why This Matters for You

If you’re a developer building Uniweb modules, Uniweb RTE is your go-to environment for rapid iteration and debugging. Initially, you can work fully locally within Uniweb RTE. Then, as a second step, you can test with Uniweb CMS using a streamlined localhost tunnel setup to ensure full functionality, including dynamic data, site indexing, and integrations. This allows you to refine your module incrementally—unless you’re already confident and prefer to deploy directly.

If you’re a team or client commissioning a runtime module, Uniweb RTE provides peace of mind—knowing that your module can run independently, making long-term flexibility and adaptability easier.

If you’re a self-hosting enthusiast, while Uniweb RTE isn’t designed as a full CMS replacement, its modular architecture allows the community to explore new use cases and hosting models.

🎯 Uniweb RTE vs. Uniweb CMS

FeatureUniweb RTEUniweb CMS
Runtime Modules✅ Supports✅ Supports
Full CMS Features🚫 Limited✅ Complete
Content Management🚫 Manual✅ Integrated UI
Hosting Model🏠 Self-hosted☁️ Uniweb Cloud
Collaboration🚫 Limited✅ Supports content writers
Developer Focus🛠 Module Testing🏗 Site Building

💡 The Bigger Picture

Uniweb RTE isn’t just a dev tool—it’s a gateway to the Uniweb ecosystem. By making module development easier, we’re ensuring Uniweb’s runtime module architecture is open, flexible, and future-proof. We believe in giving developers the best tools possible while ensuring Uniweb CMS remains the best-in-class premium platform for content creators and businesses.

📥 Get Involved

Uniweb RTE is an open-source project—we welcome contributions, feedback, and ideas!

🏁 Ready to Get Started?

Jump in and try Uniweb RTE today:

git init my-site
cd my-site
npm install @uniwebcms/uniweb-re --save-dev
npx uniweb-re init
npx uniweb-re use <module-url>
npx uniweb-re start

Start developing and see how Uniweb’s powerful runtime module system can work for you!


Uniweb RTE: Build Smarter. Test Faster. Stay Flexible.

1.2.0

4 months ago

1.1.9

4 months ago

1.1.8

4 months ago

1.1.7

4 months ago

1.2.1

4 months ago

1.1.10

4 months ago

1.1.6

4 months ago

1.1.5

4 months ago

1.1.4

4 months ago

1.1.3

4 months ago

1.1.2

4 months ago

1.1.1

4 months ago

1.1.0

4 months ago