MCPcopy
hub / github.com/go-shiori/shiori

github.com/go-shiori/shiori @v1.8.0 sqlite

repository ↗ · DeepWiki ↗ · release v1.8.0 ↗
1,804 symbols 7,199 edges 188 files 437 documented · 24%
README

Shiori

IC Go Report Card #shiori-general:matrix.org Containers

Check out our latest Announcements

Shiori is a simple bookmarks manager written in the Go language. Intended as a simple clone of Pocket. You can use it as a command line application or as a web application. This application is distributed as a single binary, which means it can be installed and used easily.

Screenshot

Features

  • Basic bookmarks management i.e. add, edit, delete and search.
  • Import and export bookmarks from and to Netscape Bookmark file.
  • Import bookmarks from Pocket.
  • Simple and clean command line interface.
  • Simple and pretty web interface for those who don't want to use a command line app.
  • Portable, thanks to its single binary format.
  • Support for sqlite3, PostgreSQL, MariaDB and MySQL as its database.
  • Where possible, by default shiori will parse the readable content and create an offline archive of the webpage.
  • [BETA] [web extension]web-extension support for Firefox and Chrome.

Comparison of reader mode and archive mode

Documentation

All documentation is available in the docs folder. If you think there is incomplete or incorrect information, feel free to edit it by submitting a pull request.

License

Shiori is distributed under the terms of the MIT license, which means you can use it and modify it however you want. However, if you make an enhancement for it, if possible, please send a pull request.

Extension points exported contracts — how you extend this code

HttpMiddleware (Interface)
Middleware defines the interface for request/response customization [7 implementers]
internal/model/http.go
ApiResponse (Interface)
(no doc) [4 implementers]
webapp/src/client/runtime.ts
WebContext (Interface)
WebContext represents the context of an HTTP request [1 implementers]
internal/model/http.go
ConfigurationParameters (Interface)
(no doc)
webapp/src/client/runtime.ts
Dependencies (Interface)
Dependencies represents the interface for application dependencies [1 implementers]
internal/model/dependencies.go
FetchParams (Interface)
(no doc)
webapp/src/client/runtime.ts
DomainDependencies (Interface)
DomainDependencies represents the interface for domain-specific dependencies [1 implementers]
internal/model/dependencies.go
RequestOpts (Interface)
(no doc)
webapp/src/client/runtime.ts

Core symbols most depended-on inside this repo

NoError
called by 497
e2e/playwright/testhelper.go
Equal
called by 458
e2e/playwright/testhelper.go
True
called by 146
e2e/playwright/testhelper.go
isDef
called by 145
internal/view/assets/js/vue.js
Domains
called by 129
internal/model/dependencies.go
GetTestConfigurationAndDependencies
called by 124
internal/testutil/shiori.go
Error
called by 113
internal/model/validation.go
Require
called by 100
e2e/playwright/testhelper.go

Shape

Function 1,228
Method 419
Struct 73
Interface 49
Class 26
FuncType 5
TypeAlias 4

Languages

TypeScript57%
Go43%

Modules by API surface

internal/view/assets/js/vue.js449 symbols
internal/view/assets/js/vue.min.js247 symbols
webapp/src/client/runtime.ts70 symbols
internal/database/database_test.go39 symbols
internal/model/domains.go38 symbols
internal/model/database.go36 symbols
webapp/src/client/apis/AuthApi.ts31 symbols
internal/database/sqlite.go29 symbols
internal/database/mysql.go26 symbols
internal/view/assets/js/page/home.js24 symbols
internal/database/pg.go24 symbols
internal/dependencies/dependencies.go19 symbols

Dependencies from manifests, versioned

dario.cat/mergov1.0.1 · 1×
filippo.io/edwards25519v1.1.0 · 1×
github.com/AdaLogics/go-fuzz-headersv0.0.0-2023081113042 · 1×
github.com/Azure/go-ansitermv0.0.0-2025010203350 · 1×
github.com/KyleBanks/depthv1.2.1 · 1×
github.com/Microsoft/go-winiov0.6.2 · 1×
github.com/andybalholm/cascadiav1.3.3 · 1×
github.com/araddon/dateparsev0.0.0-2021042916200 · 1×
github.com/blang/semverv3.5.1+incompatible · 1×
github.com/containerd/logv0.1.0 · 1×

Datastores touched

shioriDatabase · 1 repos
(mysql)Database · 1 repos
shioriDatabase · 1 repos

For agents

$ claude mcp add shiori \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact