Mcastres / strapi-plugin-content-versioning

This plugin enables content versioning

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Strapi Plugin-Content-Versioning

⚠️⚠️⚠️: Currently a beta.
We are using it in production (but still working on it ☀️🌙).

A Strapi plugin for managing versions of your content.

This plugin provides the ability to switch between different content version as they were created.

Benefits

Have multiple draft versions
Keeping a history of all changes (with time travel)
Allows you to have different published and draft data

🧑‍💻 Install

npm i @notum-cz/strapi-plugin-content-versioning
yarn add @notum-cz/strapi-plugin-content-versioning

🖐⚠️ Read before installation

  1. Versioning must be enabled in settings of Content Type. Same as localization plugin.
  2. You need to have enabled draft/publish system on your content type.
  3. Roles that are going to use the plugin need to have permission enabled in the Settings > Roles > ... > Plugins view.
  4. You need to create/modify file config/plugins.js with
module.exports = ({ env }) => ({
	"content-versioning": {
		enabled:  true,
	},
});
  1. (Optional) If you want to override also the Save button to work with this plugin you need to follow the instructions below. ⬇️⬇️

💾 Override Save Button (Optional)

You have to use patch-package to make it work with native Save button. (We are working closely with the core team to change this).

  1. Install patch-package
    • npm install patch-package or yarn add patch-package
  2. Create folder patches in root of your project
  3. Add file @strapi+admin+4.1.12.patch with content localed in this repository patches/ ⬇️
  4. Add the line "postinstall": "patch-package", to the scripts section of the package.json
  5. Run npm run postinstall

If patch for your strapi version is missing, please let me know or add it as file in pull request. Thanks!



⚠️⚠️⚠️ Open call for help for an awesome plugin.


History

We felt this is an important feature that did not seem so complex.

Therefore we rolled up our sleeves and got to work on it. We came up with alpha quite fast and were one the first ones to publish plugins in the new marketplace.


The current state of the plugin


But then came the early adopters with more and more complex data structures and specific use cases that made our heads hurt.

We called in our top brains and made more improvements, things were still going great….


BUT

BUT then we landed 2 amazing and very important projects.

Our focus went elsewhere and we left the plugin for some time without open-source love.


Open call for help and a bit of warning:

This plugin is really nice challenge for a senior developer to really code and have some fun.


Our senior developer Martin, the main author, is also available to answer your questions.


Issues are coming and people are using it: take a look here https://github.com/notum-cz/strapi-plugin-content-versioning/issues


This could be you. Making this plugin great again.



The future and possibilities

We believe this plugin may be in the marketplace’s top 5 most used plugins. But for that to become a reality we need fellow developers that would help and take it to the place it deserves to be.

“Therefore this is an open call to all the companies as well as solo developers to help us with this plugin.“

We will happily do PRs and answer your questions.


Please contact us at info@notum.cz

Us helping you with this STRAPI plugin





🛣️ Road map

  • Fix of the "patch-package problem"
  • Extension of functionality also for single types
  • Autosave
  • Update of the current version without creating new history item

Know limitation

  • ⛔️ Not working with UID and unique fields
  • ⛔️ Not have i18n support
  • ⛔️ Not working with relations

🐛 Bugs

We are using GitHub Issues to manage bugs.
If you want to help us you would be a rock .

🧔 Authors

The main star: Martin Čapek https://github.com/martincapek
Tech problem solver: Tomáš Novotný
Project owner: Ondřej Janošík

🚀 Created with passion by Notum Technologies

  • Official STRAPI partner and Czech based custom development agency.
  • We love to share expertise with the open source community, that's why this plugin was created. 🖤

🎯 How can Notum help you with your STRAPI project?

✔️ We can help you develop custom STRAPI, web and mobile apps.
✔️ With 100+ projects, open communication and great project management we have the tools to get your project across the finish line.
📅 If you want to discuss your Strapi project with our CEO, book a meeting Book a free 15min Calendly

Keywords

About

This plugin enables content versioning


Languages

Language:JavaScript 100.0%