mirror of
https://github.com/ciur/papermerge.git
synced 2026-04-25 12:05:58 +03:00
[GH-ISSUE #358] Next Little Thing (Roadmap + Plans) #285
Labels
No labels
2.1
3.0
3.0.1
3.0.2
3.0.3
3.0.3
3.1
3.2
3.2
3.3
3.5
3.x
Fixed. Waiting for feedback.
Fixed. Waiting for feedback.
UX
Version 2.1 - alpha
XSS
announcement
beta
blocker
bug
cannot reproduce
confirmed
confirmed
critical
demo
dependencies
deployment
detchnical debt
discussion
docker
documentation
donations
duplicate
enhancement
feature request
frontend
fundraising
good first issue
good issue
help wanted
high
implemented
important
improvement
incomplete
invalid
investigation
kubernetes
low
low impact
medium
medium
medium impact
migration from 2.0
migration from 2.1
missing-language
missing-ocr-language
no-activity
note
ocr
outofscope
packaging
performance
popular request
pull-request
pypi
question
raspberry pi
roadmap
search
security
setup
status
task
technical debt
updates
user xp
version 1.4.0 - demo
will be implemented
will not be implemented
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/papermerge#285
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ciur on GitHub (Mar 29, 2021).
Original GitHub issue: https://github.com/ciur/papermerge/issues/358
Originally assigned to: @ciur on GitHub.
Hello everybody,
Let me share with you what is the current situation and project's roadmap.
But before that, little bit history is necessary.
Little Bit of History
Somewhere in 2018 I lost my full time job. I was working for a big corp, here in Berlin, Germany and those guys (means that Big Brother Corp :) ) were very generous to us (well, me and my colleagues as they closed whole office, nothing personal :) ).
Long story short, for the first time in my life I was absolutely free & with a huge pile of
in my bank account.Instead of rushing for a new job I decided to start something on my own.
Very important part of the plan was - no investors. I have nothing against investors, but I don't like rush and artificial growth just for sake of unicorns :).
Thus, I registered myself as freelancer and started working on... you guess it - Papermerge!
I thought I will quickly build a minimum viable open source DMS and somehow, by consulting and SaaS I will secure some income :)
Wrong!
Designing and building even a niche DMS was by far more difficult task than I imagined... In general, almost everything was not so simple as I imagined :)
Somehow however I managed to build a DMS - which you know named Papermerge. You love it, I love it, everybody loves it !
I consider Papermerge 2.0 the MVP - or the minimum viable product.
Current Situation
The current situation is that Papermerge is not even remotely close to the DMS I have vision for. There are still a whole galaxy of things to improve, so many gem features I would love to add!
But reality dictates its rules and Papermerge budget is depleting month by month. Simple math tells me that I can no longer afford to work full time on it.
So, I decided to look for full time/part time/ freelance job (as Sr. Python/Full Stack dev).
Looking for a job is like a full time job actually, it takes a lot of time and some days I am deeply into this process :) So even now, I spend just one or two hours in a day working on Papermerge.
Thus, the transition from full time on Papermerge to part time already happened.
I am so much emotionally bound to Papermerge that I cannot imagine my life without it. Those one or two hours I spent daily solving Papermerge tickets, reading your feedback, fixing bugs and designing features bring me lots of joy. It is weird how much joy hard, but meaningful, work can bring. Before Papermerge I never knew that I can find solutions for architectural issues while taking bath!
Papermerge Roadmap
Papermerge 2.0
It will take one or two more weeks until final 2.0.0 will be out.
After version 2.0 will be out I will continue fixing bugs and security issues, thus regular minor releases 2.0.1, 2.0.2, ... will follow.
Papermerge 2.1
By far, the most asked feature, which perfectly makes sense, is automation of metadata extraction. This will be the number 1, high priority feature for Papermerge 2.1.
Hand in hand with automated metadata extraction comes - search by metadata. In Papermerge 2.1 will feature search & filter documents by metadata fields.
Next feature, again which will be part of 2.1, is my all time favorite - and I promise you will love it as well. Papermerge 2.1 will be real time application. Yes, you read it right - real time!. What does it mean ? It means that you will receive in real time notification and changes about documents. Each document will have some sort of "status led" which will indicate if it was OCRed or no, and how may pages were already OCRed and how many are still left. If there will be two users (A and B) with same document D opened and user A deletes a page in document D - user B will see that change in real time (without refreshing).
Also there are some UX improvements like drag & drop.
Papermerge 2.2
For papermerge 2.2 I will focus on external authentications like LDAP and SSO. Yes, i know, LDAP is very important. But is of lesser priority than say "automated metadata extraction". Also, real time user user feedback is way more important than same LDAP authentication. Thus LDAP and SSO moved to 2.2.
That's it for now, I really wanted keep you up to date and thus I shared current situation with all of you.
Let's make Papermerge the best open source document management system for digital archives!
@amo13 commented on GitHub (Mar 29, 2021):
I bet it is hard to find clients, especially for a young project like this one.
But one thing is for sure: you have already done the world a favor with the current state of papermerge!
Have you already looked out for people with experience in marketing open source software? My first place to ask for advice on how to find clients would be one of the many nextcloud conferences.
@ciur commented on GitHub (Mar 29, 2021):
Marketing is an interesting topic :)
Thanks a good tip, thanks !
@jonaswinkler commented on GitHub (Apr 1, 2021):
Hi there! Just leaving a few comments here since I feel like it.
I don't exactly know how to make money with open source. I've considered that as well. Did the math and figured I'd need to run instances for about a hundred customers. That's pretty hard to achieve with a product that's aimed at self hosters. Then there's also support I'd need to deal with. Less time for actual development.
One of the most important keys to success of any business, including open source ventures, is to have a clear mission statement. For a project like Papermerge, that mission statement could be something like "Make an easy-to-use DMS for private households". It should be a very clear description of the goal you're aiming at. If your goal is to make a living with it, that has to be incorporated in there as well.
Everything you do should be aligned with that mission statement. You'll end up with a focussed product and a stable user base that keeps coming back to your product. You also need to have the guts to straight-up say "No" when something does not line up with your mission statement :)
I've seen a few and have been part of one business without a clear mission statement, and well, they all failed in the end due to lack of focus.
I feel you. Spending hours of research and writing up a cover letter that gets rejected with a simple "Sadly we can't consider you" is frustrating. However, you've got a pretty big project here under your belt, and that should help you tremendously. Speaking from experience!
Wondering where that idea comes from :)
django-channels(esp. channel layers) is your friend. However, Let me mention the concept of a mission statement again. Lets say your goal is to provide a system for long-term document storage (I don't actually know what yout goal is). This sounds more like a feature that would be needed for a system that allows collaborative editing on documents. I'd think twice about implementing this, because it does not exactly help to achive that goal. It also sounds really complex and difficult to test and maintain.Just my two cents. Stay healthy! :)
@ciur commented on GitHub (Apr 2, 2021):
Hi @jonaswinkler, what you say makes perfect sense.
Regarding "where the need of real time application comes from". In case user uploads 20, 30 or 100 pages document - OCR takes a while. In that case it is very user friendly to show some sort of "OCR for the document ABC is in progress. 7 out of 30 OCRed so far".
A more generic example: user uploads 100 documents (D1, D2, D3, ...). When OCR of ALL those documents is ready? If user searches document D21 and does not find it in search results - it is because document is still in OCR queue?
This sort of feedback improves a lot user experience.
Think of gray/orage/green/red status indicators of github actions. When certain github actions is complete a real time update (via websockets) changes its status from rotating orage circle into a green checkbox. I find that those real time updates very natural and convenient.
@ciur commented on GitHub (Apr 20, 2021):
Job problem was solved 🎉
The good part of it is that my employer responded positively towards my open source adventures with Papermerge. This means that I will continue to work on Papermerge. Hello late evenings and productive week-ends 🎉 !
The lack of both financial and time pressures will allow me to develop Papermerge in relaxed manner - this will result in higher releases quality.
Notice that most action now happens in Github's Papermerge organization.
In that organization, the most important repositories are:
In future I will add (in papermerge organization) document-viewer repository, which - similarly to document-commander - will be a reusable front-end package/component for viewing documents.