mirror of
https://github.com/go-shiori/shiori.git
synced 2026-04-25 06:25:54 +03:00
[GH-ISSUE #771] [meta/discussion] Import/Export functionality #368
Labels
No labels
component:backend
component:builds
component:builds
component:extension
component:frontend
component:readability
database
database:mysql
database:postgres
database:sqlite
feature:ebooks
github_actions
good first issue
hacktoberfest
note:duplicate?
note:fixed?
note:out-of-scope?
os:windows
priority:high
priority:low
pull-request
resolution:as-intended
resolution:cant-reproduce
resolution:duplicate
resolution:fixed
resolution:wontfix
tag:TBD
tag:big-task
tag:help-wanted
tag:huge-data
tag:meta
tag:more-info
tag:next
tag:no-stale
tag:requires-migrations
tag:research
tag:security 🛡️
tag:stale
tag:waiting-for-assignee
type:bug
type:documentation
type:enhancement
type:meta
type:ux
user:cli
user:web
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/shiori#368
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 @Monirzadeh on GitHub (Oct 29, 2023).
Original GitHub issue: https://github.com/go-shiori/shiori/issues/771
this feature request a better way to import from other service as we talk about them in different issue and discussion like:
#768 #762
What is the problem?
currently shiori just can import some service like wallabag and pocket from terminal.
we need a better solution that solve multiple problem
https://github.com/go-shiori/shiori/tree/master/internal/cmdthat is too more specific. we should combine all of them in one general function (terminal and webui) for easier maintainWhat we can do?
with this workflow we don't change code each time to support new service.
What about UI?
when user upload file and press import in settings menu. while it importing a bell icon show up above logout buttom.

maybe it can show progress as a ring around that. when it is finish bell icon disappear.
What should be consider?
some service has reading status and tag. how should we handle that? (as shiori don't have reading status yet)
currently showing progress percentage in UI is the problem that i can't imperilment yet.
is there anybody better idea for import functionality?
@fmartingr commented on GitHub (Nov 25, 2023):
I'm going to do a brain dump here on my thoughts on this issue:
@LLKoder commented on GitHub (Nov 26, 2023):
@Monirzadeh I know about that. My question about how I can use Shiori now. How I can move Chrome and Firefox Bookmarks to Shiori now any cases.
For example there is converter Netscape Bookmark File<->Chrome/Firefox Bookmark File or I have to use other steps. Or I have to write this converter. What would my steps to get temporary solution during you decide how it'll work? I do not know Go but I know other laguages include SQL.
I'm interested in Shiori 'cause it's bookmarks keeper in local cloud. But it'll become unuseful for me and for other users if we cannot move our bookmarks to Shiory from top browsers. I have no opportunity move ~100 thousand bookmarks by hand.
@Monirzadeh commented on GitHub (Nov 26, 2023):
@LLKoder you can use and modify scripts that we have in documentation.
for example
i don't have chrome base browser(so i don't have accesses to the bookmark export sample) to update script for that too but general concept is simple.
extract list of URLs from any backup file and loop them in
shiori addcommand@LLKoder commented on GitHub (Nov 27, 2023):
@Monirzadeh Thanks.
Can
shiori addget not only link? Lets say title or other Shiori's parameters.Or can Shiori get title for url automatically itself?
@Monirzadeh commented on GitHub (Nov 27, 2023):
yes.
You can use
-iflagshiori add $url -i $customName.You can see more options here.
Unfortunately
--helpdoes not show this option, it may be helpful if you can send a PR for adding it to--helpor at least to shiori documentation indocs.@mpr1255 commented on GitHub (Nov 30, 2023):
Major support for either an export functionality, or saving the files in some kind of format that ANY other software can read. I thought they might have been warc or mhtml, but nope. They are some kind of binary that only shiori can access?? And yet there is no API to use shiori from the CLI to push them out into anything that any other application can access? This makes Shiori a walled garden -- we can easily add things, but cannot get anything out except manually opening it and saving it as a file in the browser. DownThemAll! kinda works -- but they lose all the css, so not true archives.
This has come up before: https://github.com/go-shiori/shiori/discussions/337
I'm puzzled by the choice to save the files as (apparently?) a unique binary format? Why not just save them in the standard warc format, or perhaps mhtml? That is still a single file. PDFs are stored not as pdf either. I'm very curious about these design choices. Anyway, sadly cannot use shiori because of this. It's far better than the other tools I've been trying today but the fact that one cannot get one's data out makes it unusable for the main purpose: archiving stuff for reliably accessing later.
@LLKoder commented on GitHub (Dec 2, 2023):
@Monirzadeh I add PR (https://github.com/go-shiori/shiori/pull/794) but it was blocked.
@LLKoder commented on GitHub (Dec 5, 2023):
@fmartingr @Monirzadeh I'm writing Python script for Import Chrome/Firefox Bookmarks to Shiori. Script will convert folder structure to tags structure. If it need I can do PR as temparary solve.
@perdakovich commented on GitHub (Dec 7, 2023):
@LLKoder
But what if I have both folder and tag structure in my Firefox?
@perdakovich commented on GitHub (Dec 7, 2023):
@mpr1255 Completely agree, that's a mess! I'm hoping that the concept will change in the future..
@LLKoder commented on GitHub (Dec 9, 2023):
@Goosegit11 How do you have tags in Firefox? Chrome/Firefox don't support tags. Or am I wrong?
@LLKoder commented on GitHub (Dec 9, 2023):
@Goosegit11 I'll able to post a script here when I have a time to finish it, if need. Just developers not say merge the script to main branch or not. I not want to do waste PR.
@perdakovich commented on GitHub (Dec 9, 2023):
@LLKoder
@fmartingr commented on GitHub (Dec 10, 2023):
Hey people, trying to address all of the comments here. Thanks a lot to @Monirzadeh for chiming in and helping people move forward.
When I started using Shiori I noticed this "walled garden" problem, but for me at the time supposed no issue (I could just write a script to move things in and out), but now that I am here, the steps to move out of that problem are:
This is the current roardmap, and along the way some other issues had been found. We would love support in those areas if people are interested, I can provide guidance in issues for contributors.
If you have any more concerns about this please raise them here, the more we know before doing changes the better.
@LLKoder commented on GitHub (Dec 11, 2023):
@Goosegit11 Ahahaha... I have not known it till today. I don't have tags field when I save bookmarks, 'cause I have no active tags. But there is tags in bookmarks manager as I have seen. :) Thanks. I try add Firefox tags to my script.
@fmartingr Thanks to you. Say me pls how I understant, it all in plans. I.e. it is not released for now. And so as you know I write Python script. It'll export from Firefox/Crhome Bookmarks to Shiori CLI (with convert folder structure to tags) this is temporary solve as I see. Can I make PR or put it here is better?
@fmartingr commented on GitHub (Jan 13, 2024):
If you make a script to work with Shiori bookmarks you can create a repository/gist for it and we can link it from the documentation under community supported tooling.
@fmartingr commented on GitHub (Oct 17, 2024):
Coming back to this after a while. Does anyone have any hints into a open format for bookmarks interoperable between different projects? Or do we have to write our own? Is there something defined out there?
@Monirzadeh commented on GitHub (Oct 18, 2024):
it is not exactly what you want but can be helpful (support range of device and programs)
floccus has an F-Droid version too but if i be honest i am not user of floccus myself
as it floccus is opensource you can look at how it handle different device and programs
don't forget to look at usage of WebDAV for sync bookmarks too.