.gitea | ||
.reuse | ||
assets | ||
configs | ||
docs | ||
internal | ||
LICENSES | ||
locales | ||
pkg | ||
screenshots | ||
tools | ||
web | ||
.dockerignore | ||
.gitignore | ||
.go-version | ||
.golangci.yml | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
go.mod | ||
go.sum | ||
LICENSE | ||
main.go | ||
Makefile | ||
README.md |
Readeck
Readeck is a simple web application that lets you save the
precious readable content of web pages you like and want to keep
forever.
See it as a bookmark manager and a read later tool.
Contents
Features
🔖 Bookmarks
Like a page you're reading? Paste the link in Readeck and you're done!
📸 Articles, pictures and videos
Readeck saves the readable content of web pages for you to read later. It also detects when a page is an image or a video and adapts its process accordingly.
⭐ Labels, favorites, archives
Move bookmarks to archives or favorites and add as many labels as you want.
🖍️ Highlights
Highlight the important content of your bookmarks to easily find it later.
🗃️ Collections
If you need a dedicated section with all your bookmarks from the past 2 weeks labeled with "cat", Readeck lets you save this search query into a collection so you can access it later.
🧩 Browser Extension
Want to keep something for later while browsing? No need to copy and paste a link. Install the browser extension and save bookmarks in one click!
📖 E-Book export
What's best than reading your collected articles on your e-reader? You can export any article to an e-book file (EPUB). You can even export a collection to a single book!
On top of that, you can directly access Readeck's catalog and collections from your e-reader if it supports OPDS.
🔎 Full text search
Whether you need to find a vague piece of text from an article, or all the articles with a specific label or from a specific website, we've got you covered!
🚀 Fast!
Readeck is a modern take on so called boring, but proven, technology pieces. It guaranties very quick response times and a smooth user experience.
🔒 Built for your privacy and long term archival
Will this article you like be online next year? In 10 year? Maybe not; maybe it's all gone, text and images. For this reason, and for your privacy, text and images are all stored in your Readeck instance the moment you save a link.
With the exception of videos, not a single request is made from your browser to an external website.
How to test or install
Done reading this promotional content? Good! Want to try Readeck on your laptop or a server? Even better!
Container
To install or test Readeck with Docker or Podman, simply run the image:
docker run --rm -ti -p 8000:8000 -v readeck-data:/readeck codeberg.org/readeck/readeck:latest
You'll find all the container images there:
https://codeberg.org/readeck/-/packages/container/readeck/latest
Binary file installation
Readeck is distributed as a single binary file. Using it is almost as easy as a container.
-
Create a new directory
mkdir -p readeck-install cd readeck-install
-
Download the file matching your system from the last release
-
Make this file executable
-
Launch Readeck with the
serve
argument, for example:./readeck-0.9.1-linux-amd64 serve
First time launch
Once Readeck has started, it is accessible on:
http://localhost:8000/
Installation for production
More documentation is coming but if you already know how deploy containers or new services on a server (ie. with systemd), it should be quite straightforward.
FAQ
I can't save a link or it's incomplete
Readeck usually can save the vast majority of news or blog articles but it sometimes fails to do so. The most common reasons are:
- The page is behind a paywall,
- The page needs JavaScript to render its content,
- Your server is blocked,
- The content extractor fails.
The most common solution to these problems is to install and use the Browser Extension. The extension sends the page's full content to Readeck, so anything can be saved. Moreover, it lets you select the exact content you want to save.
If a page really doesn't work at all, please open an issue.
Can I share a saved bookmark with a public link?
Yes you can, for a limited time. On each article you can generate a link that'll be valid for 24 hours. You can generate a new link as many times as you want but it will always expire. You can also export or print an article to a PDF file.
Is there a system to store my (paywall) website credentials?
There isn't, for several reasons:
- It's borderline illegal,
- To safely store credentials without giving access to anyone but the user is next to impossible,
- Such a system relies on web scrapping and is prone to break too often.
Again, the Browser Extension will let you save any content you can access from your web browser.
Is there a roadmap?
There are milestones, where you can see what's planned for the future releases.
For longer term goals, there are projects
Is there a Readeck twitter account?
There isn't but you can follow @readeck@mastodon.online on Mastodon.
How can I report a security issue?
If you think you found a security issue in Readeck, please DO NOT create an issue; they're public and it could potentially put all users at risk.
Send an email to security@readeck.com and you'll receive a follow-up as soon as possible.
Under the hood
Readeck was born out of frustration (and COVID lock-downs) from the tools that don't save everything related to the saved content, primarily images. This key principle guided every step of Readeck development.
The ZIP file
Every bookmark is stored in a single, immutable, ZIP file. Parts of this file (HTML content, images, etc.) are directly served by the application or converted to a web page or an e-book when needed.
A simple database
Readeck has a very simple database schema with a few tables (and a bit of clever JSON fields here and there). The recommended database engine is SQLite for most installations.
A simple stack
Unlike many modern web applications, Readeck is not a single page application built on top of an API with impossible to install dependencies and a mess of background processes.
Readeck is written in Go and all its content is rendered server side with some interactivity brought by Stimulus and Turbo.
This has proven to be a great combination when performance really matters.
License
Readeck is distributed under the terms of the GNU Affero General Public License v3.0. Here's a short summary of the license conditions:
- Permissions
- Commercial use
The licensed material and derivatives may be used for commercial purposes. - Distribution
The licensed material may be distributed. - Modification
The licensed material may be modified. - Patent use
This license provides an express grant of patent rights from contributors. - Private use
The licensed material may be used and modified in private.
- Commercial use
- Conditions
- Disclose source
Source code must be made available when the licensed material is distributed. - License and copyright notice
A copy of the license and copyright notice must be included with the licensed material. - Network use is distribution
Users who interact with the licensed material via network are given the right to receive a copy of the source code. - Same license
Modifications must be released under the same license when distributing the licensed material. In some cases a similar or related license may be used. - State changes
Changes made to the licensed material must be documented.
- Disclose source
- Limitations
- Liability
This license includes a limitation of liability. - Warranty
This license explicitly states that it does NOT provide any warranty.
- Liability