Publii
Publii copied to clipboard
Feature request: make Publii more collaboration-friendly
Right now, Publii is an excellent tool for a single person, but I can't find the right way for two people to work on the same website. I mean, it is possible to store the input directory in a git repository, but the whole website is stored in the SQLite database, and merging databases isn't a simple task.
Any plans for a more git-friendly storage format? Or, perhaps, a self-hosted Publii server with multiuser support?
Try: https://getpublii.com/docs/publii-on-multiple-computers-via-dropbox.html
This document mentions the exact problem I was trying to find the solution for: "if more than one user is editing the site content at a given moment and you are both connected to Dropbox, there may be some conflict between the changes and some of the content will be lost"
For now, for some folks, close collaboration between both users can work. Maybe in time, a lock feature could be implemented on the live site version. Perhaps User A could first lock the site temporarily to stop User B editing any pages / content. Once User A is complete and published changes, User A could remove the lock to give access to User B. But you can probably appreciate the enormous difficulties in perfecting something like this possible solution when the the live site version and the local version(s) (two in this example). Plus, of course, syncing and keeping everyone in sync is the goal.. Maybe Publii can comment further.
Something like this may be https://dev.to/remotesynth/creating-a-jamstack-site-with-open-authoring-using-netlify-cms-5ab5
An option to add a Git repository and the app would pull before open and push before publish ?
A Publii Importer would be nice for collab between 2 Publii instances.
I second @estudiooka on Git integration with an automatic pull from the published branch before saving. Once a local project is synced, it's likely all is well. Then when a user attempts to publish, the system should pull from the published branch again. If there are differences, I'm not sure how they should be handled, but it seems like we could solve that problem.
An alternative: Let a user configure a Git repository as "Server" and let them have a developer set up a deployment pipeline. We keep all the simplicity, but enable more advanced collaboration.
Would love to see an git repo integration and possibility for a server/pipeline deployment. This would extend the use case massively. Like being able to restore a previous version with a click on the pipeline.
As a workaround, you can use SparkleShare, which uses Git under the hood. Alternatively, try Syncthing or another file sync software with revision control.