@opengis/cms
v0.1.7
Published
cms
Downloads
2,429
Maintainers
Keywords
Readme
@opengis/cms
This package standardizes static website content management process. Built using the Fastify and Vite frameworks for reactive, component-driven development.
Features
- Content Types & Models – Define flexible content structures tailored to your use case, from simple pages to complex data schemas.
- CRUD Operations – Easily create, read, update, and delete content through API or admin interface.
- Content Relationships – Connect content across types (e.g. posts, categories, users) to build structured data.
- REST API – Access all content via a powerful and consistent REST API.
- Filtering, Sorting & Pagination – Query your data efficiently with built-in filtering, sorting, and pagination.
- Admin Panel / Dashboard – Manage all content from a clean, intuitive interface.
- Content Editor – Write and edit content using WYSIWYG or Markdown editor.
- Media Library – Upload, manage, and reuse images and files across content.
- Draft & Publish Workflow – Control content lifecycle with draft and publish states.
- Reusable Components – Build dynamic pages using reusable content blocks.
- Roles & Permissions (RBAC) – Define roles and control access to content and features.
- User Management – Manage users, roles, and permissions from the admin panel.
- Security – Protect your system with JWT, API keys, and audit logs.
- Localization (i18n) – Create and manage content in multiple languages.
- Auto Translation – Automatically translate content to scale globally faster.
Install
npm i @opengis/cmsUsage Astro
---
import Layout from "@/layouts/Layout.astro";
// get posts
import { getContents } from "@/utils/cms";
const postsData = await getContents({ collection: "posts"});
const { lang } = Astro.params;
---
<Layout
title={lang === "uk" ? "Про нас" : "About us"}
>
{ postsData }
</Layout>Usage CMS
// main.ts
app.config.globalProperties.$settings = {
cms: {
locale: 'uk', // мова сайту по замовчуванню
locales: ['uk', 'en'], // доступні варіанти перекладу
previewUrl: 'http://site.ua' // адреса перегляду контенту з редактора
}
};// router.config
export default [
{
path: '/cms.dashboard',
component: () => import('@opengis/cms').then(el => el.Dashboard),
},
{
path: '/collections/:type?/:id?',
component: () => import('@opengis/cms').then(el => el.Content),
},
{
path: '/menu/:id?',
component: () => import('@opengis/cms').then(el => el.Menu),
},
]Start
Configure pg, redis and s3 connections in .env file
node --env-file=.env.ip server
bun --env-file=.env.ip server
pm2 start server --name api -- --env-file=.env.ipDocumentation
For a detailed understanding of cms, its features, and how to use them, refer to our Documentation.
Technology stack
Contribute
Feel free to contact us through our website SOFTPRO.UA or email [email protected]
- Report bugs
- Share your ideas
- Ask questions
Follow Us
License
Copyright © SOFTPRO. All rights reserved.
