Coder Social home page Coder Social logo

go-shiori / shiori Goto Github PK

View Code? Open in Web Editor NEW
8.7K 103.0 537.0 44.01 MB

Simple bookmark manager built with Go

License: MIT License

Go 39.78% HTML 2.05% JavaScript 54.40% Dockerfile 0.06% Shell 0.44% Less 2.90% Procfile 0.01% Makefile 0.37%
go golang command-line bookmark-manager web-interface hacktoberfest

shiori's People

Contributors

acelya-9028 avatar aindoria avatar arakimo avatar bvp avatar cbe avatar chain710 avatar deanishe avatar dependabot[bot] avatar dexafree avatar fmartingr avatar gissehel avatar hulb avatar istiak101 avatar monirzadeh avatar muesli avatar n8225 avatar nfam avatar peteretelej avatar radhifadlillah avatar refi64 avatar ryanwr avatar s-frostick avatar sascha-andres avatar shirayu avatar skx avatar tomilla avatar tungel avatar vikaskedia avatar wayneashleyberry avatar zlendy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shiori's Issues

Delete fails from web interface

I created several test links with the web front end, and tried deleting one. I got an error message, "no token present in request".

Build error on go1.10

Error message :

github.com/RadhiFadlillah/shiori/assets
assets\assets.go:197:16: too many arguments in call to FS.Mkdir
	have ("golang.org/x/net/context".Context, string, number)
	want (string, os.FileMode)
assets\assets.go:202:16: too many arguments in call to FS.Mkdir
	have ("golang.org/x/net/context".Context, string, number)
	want (string, os.FileMode)
assets\assets.go:207:16: too many arguments in call to FS.Mkdir
	have ("golang.org/x/net/context".Context, string, number)
	want (string, os.FileMode)
assets\assets.go:212:16: too many arguments in call to FS.Mkdir
	have ("golang.org/x/net/context".Context, string, number)
	want (string, os.FileMode)
assets\assets.go:233:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:259:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:285:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:311:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:337:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:363:22: too many arguments in call to FS.OpenFile
	have ("golang.org/x/net/context".Context, string, int, number)
	want (string, int, os.FileMode)
assets\assets.go:363:22: too many errors
Error: process exited with code 2.

Add automatic Docker build

If either #27 or #66 are merged, please setup an automatic "Docker build" on hub.docker.com. BTW: #66 assumes, that your account on hub.docker.com is "radhifadlillah" - lower case is required by docker.

Broken layout on unbroken text

Long unbroken text in bookmark title, url, excerpt break layout of page.

Fix: adding word-break: break-all; to .bookmark-title, bookmark-url and bookmark-excerpt in stylesheet.less / css.

screenshot from 2018-03-06 20-21-02

Tried fixing, but building with fileb0x was too hard 🤷‍♂️

How does this deal with duplicates?

I often find a couple of duplicate links on my Pocket account. It doesn't happen with links that I've added recently but there are quite a few old links that have a lot of duplicates and no easy means to remove them.

Just wanted to know about this before I considered moving over. Thank you!

Is it possible to support HTTPs ?

看了一下源码用的标准http库,可以在serve里增加https支持,会不会更好些


I looked at the source code and it seems shiori is using standard http server. I think it will be better if you can add https support in the serve.

Cache not working?

Hi, just installed shiori on a server and trying it out. Looks great!

Unfortunately, I added a few bookmarks and none of them generated any cached versions. In what conditions does this happen? Is there some dependency that I have to install on my server?

Thanks

Support for multi-word tags

Why not comma-separate the tags and allow spaces and hence multi-word tags like "retro computing" or "video games"?

I'd love to import my delicious profile into shiori, but that currently breaks it.

Is this a strong design decision or would you be open to merging such a change?

Updating all bookmarks crashes

Trying to update all bookmarks, not specifying an index, i get the crash below. Updating a single bookmark by index works fine.

./shiori update --dont-overwrite -y
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x744e55]

goroutine 1366 [running]:
github.com/RadhiFadlillah/go-readability.toAbsoluteURI(0xc422db3f40, 0x1a, 0xc420881680, 0xc422db3f00, 0x1a)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/go-readability/read.go:945 +0x95
github.com/RadhiFadlillah/go-readability.fixRelativeURIs.func1(0x0, 0xc4206ad440)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/go-readability/read.go:966 +0xaa
github.com/PuerkitoBio/goquery.(*Selection).Each(0xc4206ad2c0, 0xc4201f3b70, 0x1)
        /home/muesli/Sources/go/src/github.com/PuerkitoBio/goquery/iteration.go:10 +0x53
github.com/RadhiFadlillah/go-readability.fixRelativeURIs(0xc422882b70, 0xc420881680)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/go-readability/read.go:958 +0x72
github.com/RadhiFadlillah/go-readability.postProcessContent(0xc422882b70, 0xc420881680)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/go-readability/read.go:980 +0x35
github.com/RadhiFadlillah/go-readability.Parse(0xc420236bc0, 0x1f, 0x2540be400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/go-readability/read.go:1156 +0x177
github.com/RadhiFadlillah/shiori/cmd.updateBookmarks.func1(0xc420852b60, 0x0, 0xc4204601f0, 0xc4204e6000, 0x253, 0x400, 0x74, 0x75, 0xc420236bc0, 0x1f, ...)
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/shiori/cmd/update.go:141 +0xaa
created by github.com/RadhiFadlillah/shiori/cmd.updateBookmarks
        /home/muesli/Sources/go/src/github.com/RadhiFadlillah/shiori/cmd/update.go:138 +0xcdb

Unable to host under subpath

I'm trying to host shiori on port 7777 and then proxy pass https://localhost/shiori/ to that port, but when I do using this nginx config:

  location /shiori/ {
    rewrite ^/shiori/(.*)$ /$1 break;
    proxy_pass http://localhost:7777;
    proxy_redirect http://localhost:7777/ $scheme://$host/shiori/;
  }

I get this result:

This page isn’t working

And the URL shows:

https://localhost/login

Any ideas? Seems like shiori redirects to / (root).

Manually going to localhost/shiori/login brings up a broken login page, seemingly without both css, images, etc (can't click on anything).

Static generator for the WebGUI

Hi,

I was looking at this product and I really like it. Although I was thinking you could consider adding as a feature the possibility to generate a static output for the web, which could be used and hosted afterwards on Github Pages.

This means having a possibility to collect bookmarks and publish them from time to time.

Please consider this. Thank you in advance!

Dark theme

Any chance for a dark theme being included ? Or (ideally I suppose) some way to define your own.

Would be nice to have a tag-cloud

This is a beautiful project! I've imported 500+ bookmarks and it can be a little hard to find what I want, when I'm not 100% sure.

I think it would be useful to change the "Reload" icon at the top-right with a link to a tag-cloud view. A user who wants to reload could just use "F5" - unless I misunderstand what that link does.

Seeing all the tags in one place is likely to be a useful thing, and help show more data. (Because the thumbnail view of the main index means it takes up a lot of space.)

Show update status on console

Updating all bookmarks from the console with shiori update -y can take some time if you've stored hundreds or thousands of them. Currently shiori seems to update them all and only then prints out the results to the screen.

It would be nice if it could continuously update the progress. Maybe even display a nice little progress bar? Checkout https://github.com/muesli/goprogressbar for some inspiration.

Add a Windows build in the releases

This looks like a great project, but it would be really useful to run this on Windows (I can use a wrapper to either run it as a service or on login)

Would it be possible to add a Windows build in the releases?

Optional title isn't optional in the web view on unauthorized links

Hello,

First, thanks for doing this! It's pretty impressive.

However, the web-page view has a form that expands when you enter a new URL, with the title field having the placeholder text "Custom bookmark title (optional)". When you save without a title, it works fine, unless the URL returns "unauthorized". Then you're told "Title must not empty".

I accidentally set up a link to a page that requires a login, and saw this.

Cached content displays HTML tags

Instead of rendering the HTML I get to see text like this:

<p></p><div><div><p name="154c">Burton Howard Bloom, the eponymous hero of our tale, and, it has to be said, possessed of a name with a very pleasing cadence — <em>Bur-ton-Ho-ward-Bloom</em> 
...

Updating missing metadata only

I've imported hundreds of bookmarks from delicious and I'd like to import pictures and cache those pages (ideally in batch-mode). Clicking the update button in the web interface does that, but it also updates the title of my bookmark. Is there a way to only fetch missing metadata?

Feature Request: Ability to Specify Database Location

Recently, I was using shiori from different locations, and realized that a database is created where I use it on-demand. It would be useful if I could specify a static location to store the database, maybe through a parameter.

Import doesn't work

Trying to import the attached file (unarchived) results in no new entries. Tried it with a bigger file too (500+ entries).

test.zip

Suggestion: use gox for cross compile

In release page, you wrote:

Thanks to Go, this app should work in Windows, MacOS and Linux. However, since I only able to test it in my workstation, I only put the binary for Linux 64-bit. Sorry for the inconvenience.

I think gox can solve this problem for you

Frontend has a horizontal scrollbar

Version: commit 837c470
OS: Linux (Debian 9)
Browser: Chromium 66.0.3357.0

Problem: The application's web page forces the user to scroll horizontally, which is not ergonomically efficient.
Reproducibility: have not tried (no FF/Safari/IE at the moment).

Possible underlying problem: card names are too long for a three-column layout to fit the screen width.

REST API and Browser extension integration

Hi,

I was also considering look at your product that you could consider adding a REST API that could be used as an interface for Browser integration. This would come very hands with the feature #40 so you could enable an easy flow to collect bookmarsk and to publish them.

Thank you in advance.

Default location for shiori database

I would suggest using the user’s home directory for the default location of the shiori database.

I call shiori from different contexts where “current directory” is not well-defined (nor the same).

I know I can set ENV_SHIORI_DB but since I am on macOS this is a bit tedious because GUI applications do not inherit environment variables setup in the shell, so this will need to be set in multiple places.

If you agree I suggest prefixing it with a dot to make it a hidden file, e.g. ~/.shiori_db.

I realize this might be very unixy, but it already seems rather unixy with a shell command to manage your bookmarks.

Unable to put empty string as excerpt

The excerpt extraction for https://www.programming-books.io/essential/go/ does not work as expected.

It displays ↑ ↓ to navigate ↵ to select Esc to close and even when I edit the excerpt to have it empty, it fills in the excerpt again.

My expected behaviour would have been to be able to set the excerpt explicitly to an empty string

Add server timeouts

Add server timeouts to avoid leaking file descriptors in case of slow or disappearing clients.

Installation isn't working

I tried PR #8 instructions but it isn't working

I am a NodeJS developer but I know how to install with GoLang

So I installed Go with brew install go & go version gives me go version go1.10 darwin/amd64

Then I did go get github.com/RadhiFadlillah/shiori & when I try shiori it gives me zsh: command not found: shiori

Improve cache precision

I just bookmarked recipe pages and found that the cache contains almost no information, e.g.:

https://www.allrecipes.com/recipe/7565/too-much-chocolate-cake/

When I bookmark that page I see a nice picture, a good heading and some okay description on the index page. But when I open the cache I see just the heading. On another page I bookmarked, I saw that it did not include the ingredients (and no picture):

http://bioplanete.com/en/lifes-delights/recipes/Vegetable-Chips-1.html

I have no idea how the cache actually works, but I think that it is too strict in these cases and that kinda makes it useless while the idea is really strong.

Btw. after using shiori for a few minutes, I really like it 👍

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.