More general commentary: For people actually using the software, is the implementation language really a feature?
EDIT: to be clear, I'm not attacking go as a language but rather the general trend of citing the implementation language as a feature when the audience is more than just "developers"
Containers can be just as much of a pain in the ass to set up as anything else. I’ve had instances of much better experiences setting up software running out of container than in container.
A lousy Dockerfile or missing docker-compose.yml will do that. Just because someone took the time to lump together a container doesn't mean it's the right one or that it would be reasonably useful to someone seeking to take advantage of the containerized software.
It's. And really big one. I don't use Go, but I self host some services. You need to host few services to understand how important this feature really is.
I hosted owncloud, tiny-tiny-rss, seafile, and some others. It was a nightmare to install any of these, then I installed gitea. That was EASY, REALLY EASY. No need to install and configure php, python2/3 and compile some modules for it.
With gitea you could just launch binary and it works, that's all. And compiling it from sources was just one command.
People ask this every time someone releases something written in Golang advertised as such. ;)
As a non-Go programmer, with absolutely no inclinations to get into it in the near future, I will happily accept a fast, self-contained Go binary over many other stacks.
That tells me I'm not going to have to install some command line tools, a couple scripting language or JVM runtimes (make sure it's the right version, which may not be the latest!), a new package manager or three, and a bunch of other crap to run the program. Probably it's a one-file or one-file-and-a-config affair.
Since I installed Gogs recently, I was actively looking for an answer to "is it written in Go?" first of all. I like how easy it is to just bind service to localhost:someport and add one line for reverse proxy to nginx/caddy/apache/whatever, instead of dealing with all those CGI/FastCGI/WSGI/paths/permisions/indexes/whatever. The second thing I look for is "does it require MySQL or can I just make it create its own SQLite database and stop nagging me about configuration?".
Btw, I have never wrote go besides playing around with web server tutorial recently.
If only someone can recommend me a chat service that is just as easy to configure as Gogs. Mattermost requires its own domain :(
You can easily set up Mattermost with a subdomain by using nginx or your proxy of choice, which is only a little extra work, and with LE, can also be easily secured. This is what I did for Mattermost at my previous job, and it worked quite well.
As an ops engineer - yes, very much so. I hardly ever have problems with applications written in go, but there’s no way in hell you’ll see me installing something written in nodejs, mono or php.
When your an open source project, your marketing page also becomes a marketing page for more developers. With the word 'libre' in the app name, I think there is some of that kind of marketing going on ;)
Then why not just say "single binary, no dependencies," rather than bury it under an additional layer of abstraction? A humblebrag is still bragging...
Because saying it was built with go says "single binary, no dependencies" and more. It also says that it was built in go for any developers who want to contribute.
I've never seen a language so obnoxiously namedropped as Go, it's really annoying. We have such a hard-on for our tools, and it really only results in countless, needless lines drawn in the sand.
Looking at the demo (why does it show the demo login details to have us copy-paste it, instead of autofilling it or even auto-logging in?), I feel like they tweaked the mobile interface a little bit and serve it for the desktop, and called it 'responsive design'. Basic actions like 'Add new books' are hidden in a hamburger menu over at a corner, easily overlooked on a desktop, and the menu fills up the whole screen when expanded, despite having only four options.
I like the idea, but an explanation or a FAQ would be much more useful than a small list of vague bullet points. It looks like it takes PDFs and epubs and serves them as HTML - but PDF conversion is particularly tricky and prone to failure. Are there options to tweak the conversion like in Calibre, to work around badly formatted PDFs (which seems to be most of them)? How does it handle figures, or tables that are too large for a given mobile screen? Can it fetch covers and/or metadata for books if necessary? Answering some use-case questions like these can give users a better feel for the scope and goals of the project.
It looks like it takes PDFs and epubs and serves them as HTML - but PDF conversion is particularly tricky and prone to failure.
When I clicked a PDF link it opened in FireFox's PDF viewer. Thought that was odd/a bug. I checked it out because I would like a ePub/PDF reader that works on any machine I have access to and can connect to a machine running this but at first glance it needs a little work. Still, I'll check in a few weeks from now, it's a good idea if they can overcome the issues you mentioned and make sure things render consistently.
I see you're using ebooks from the project I lead, Standard Ebooks, in your front page screenshot. Glad to see you're liking our work, and keep up your own good work!
Drop me a line if you need any help with epub compatibility/quirks :)
If you get a chance, try DocFetcher[0]. I use it for my personal calibre ebook library at home, and I love the fact that between it's independent indexing and the calibre portable distribution, I have a completely portable library on my network.
Just yesterday I wanted to order the new Kindle Oasis because I think the hardware is perfect (good to hold, physical buttons, …) but was told by a coworker just before ordering it can‘t open .epub files.
Edit: Thanks for all the tips about .epub + Kindle. I just found out that there also is an option to install Software like KOReader[1] if one wants to go the Jailbreak route.
It's quick to convert but I've had varying results going from epub -> mobi, especially with calibre. What's worked for me the best has definitely been kindlegen but it's still not perfect.
In the Calibre settings, did you specify the exact version of the Kindle you have as the output device? With that set correctly, and not just left as the default, it has been years now since I had any formatting issues going from epub > mobi/azw to read books on my Kindle Paperwhite.
It does this by converting them to AZW3, which can have poor results or fail entirely for long books, books with lots of images, or books with certain formatting.
If this were designed to seamlessly interoperate with Calibre (a filesystem and sqlite3 iirc) this would be potentially useful to me.
I could more confidently selfhost a web version of my calibre library for reading and bookmarking. Calibre has a web version but I'm not confident in it and would be uninclined to host it even in a sandstorm instance for example.
The memory issues of libreread, as indicated by others, are too much for hosting in a friendly way with other apps. The value of full text search isn't nearly good enough to warrant the memory usage. Aim for < 60MB serverside.
Calibre has an large amount of features that are critical for people actually trying to maintain an ebook library. Those features have been added and polished over a decade. I'm very doubtful they can be replicated in a reasonable timeframe.
Valuable to see people making things in this area though! Cheers.
I have been using Google Books for my reading. And that is just for one reason - all my highlights and notes are stored in Google Docs. You can use the doc to build your summaries or quickly read through all the highlights/notes.
yeah, I got bummed when ... um .. there was a nice epub app for devices that went under a few years back? whatever that was, went under. I moved my epub library to google books, and it's relatively convenient. I like reading technical books on tablets or computers, as color screens seem to fit with that genre better. google books seems to do a good job of importing stuff I buy from places like pragprog, and then be accessible from whatever devices I have.
You could make a reader as a static website: just sync data to Google Drive / Dropbox / OneDrive. I have a simple EPub reader doing exactly that: https://h5reader.azurewebsites.net/
Does this track current page in PDFs? I had a quick look and it seems like this feature is supported for epub files.
I maintain, for personal use, a self-hosted web service that does something similar to this. In my custom service I split each PDF into a collection of images. This lets me download limited sets of the book (10-page chunks) for quick load times and also lets me remember which page was the last one I was reading.
A similar feature in something like this would be cool. Automatically extract the image from the page, transcode it into the best format supported by the browser, and remember which page is being read (regardless of the source book format).
This is really nice and I'm definitely planning on giving it a looksee. I currently use Ubooquity since it's a very simply no-fuss reader that works fantastic on tablets and has pretty good format support. I currently have about 40,000 books, magazines and comics setup under it and I like generally how it works (with a few small problems that aren't deal breakers). Installing it involves running a jar file and that's it, so this looks pretty heavy to get setup.
One thing I really wish I could do with it (LibreRead or Ubooquity) is "add" books from the internet archive to it either as virtual links that simply opened up to the IA reader on their site, or with an option to download locally within the reader interface.
I like the idea of having full text search, though I wonder how it behaves on large libraries... Calibre is great for managing a library, but not so much at searching through a large amount of books....
I had the same reaction after trying the demo. I have tens of thousands of e-books, and have been looking for some kind of self-hosted, web-based library system like this. Calibre has come close; I've also experimented with various digital repository software.
If the LibreRead's search function just searched for books by default (by title/author/keyword), perhaps with full-text search as an advanced option, it would be just the solution I've been searching for.
FWIW, that seems to be a "here's what your VM should be" statement, not a "here's what the app consumes".
It does get much heavier (recommended 2 GB) if you enable full-text search with Elasticsearch. The metadata-search only capability was added to get the memory requirements lower.
Table of Contents support with working links; per-user storable bookmarks; font and color control; margin control; multiple methods of page turning; a non-bookshelf library index (I have over a thousand authors, most of whom have more than one book -- any interface needs to be usable by someone with a library of ten thousand books); and probably a partridge in a pear tree.
Due to sheer volume of books, I have no intention to browse my ebooks at this juncture personally. Search is the only option if you're in the 10k book range, IMHO.
LibreRead supports both metadata search and full-text search. (Though the latter requires a lot more RAM.)
I am actually neurotic and have a database with not only tagging, but Dewey Decimal and Library of Congress classification fields. ;) I also usually still use search... I just search for the tags I am looking for.
LibreRead probably could use some tagging and categorization fields in the metadata, but that is the sort of features that should be relatively easy to add later.
Yea I usually don't even know exactly what I'm looking for. I'd love an ebook reader which can nail something roughly like the experience of browsing library stacks.
I would love a reading room with a projector that turns a blank wall into a bookcase. It could interact with software on a tablet to "pull" books off the shelf and browse them on the tablet. It could even be responsive to gestures to roll, sort, etc. It seems like we have all the technology to something like this; calibre, Kinect, camera and projector?
I'd really like a project like this that could read mobi files. There's also calibre-web[1] which also has a nice mobile interface and also doesn't support mobi. I don't know what it is about the structure of this file that is so resistant to be parsed.
Keep all your ebooks in one place. Access it on any device.
But then it supports PDF and EPUB, neither of which are directly supported by Kindle, they have to be converted first. So is LibreRead converting to AZW, or to HTML such that the Kindle's permanently experimental web browser can display it?
No because DRM like Adobe ADEPT is very mysterious and only authorized ereaders are given access to it. I highly doubt they would allow an open source ereader to implement ADEPT.
Implementing a Google API would mostly defeat the point to providing a self-hosted alternative: Google would be able to mine text from your eBook library, hence being able to identify (using their own) which books you have and are reading.
It's easy to miss this, but that PDF viewer in your browser is customized! For example, look at the "edit metadata" button on the top towards the right side.
The books are gone now. Anyway, I would prefer the server to give me the book page by page (or some sort of segment) as I had to wait for it to load completely (which took some time in this case). I also lost the UI, the listing was different, etc...
Not sure how feasible it is with pdfs though. Maybe I would just not include them in the demo, I don't think it's a common ebook format anyway.
short question: what can you people recommend as eBook reader for one's computer? One that allows me to mark stuff and add comments? So far most readers I saw were low in usability or feature-set. Bonus if also available on mobile
I initially implemented this app in python, but then seeing the complexity of deployment made me shift to golang. The result is a single binary deployment associated with static files.
EDIT: to be clear, I'm not attacking go as a language but rather the general trend of citing the implementation language as a feature when the audience is more than just "developers"
The same goes with "Easy Installation". The end user doesn't care if the install or easy or hard.
You have to consider the dependencies, resource requirements, and manageability of anything you host.
I hosted owncloud, tiny-tiny-rss, seafile, and some others. It was a nightmare to install any of these, then I installed gitea. That was EASY, REALLY EASY. No need to install and configure php, python2/3 and compile some modules for it.
With gitea you could just launch binary and it works, that's all. And compiling it from sources was just one command.
As a non-Go programmer, with absolutely no inclinations to get into it in the near future, I will happily accept a fast, self-contained Go binary over many other stacks.
Btw, I have never wrote go besides playing around with web server tutorial recently.
If only someone can recommend me a chat service that is just as easy to configure as Gogs. Mattermost requires its own domain :(
I've never seen a language so obnoxiously namedropped as Go, it's really annoying. We have such a hard-on for our tools, and it really only results in countless, needless lines drawn in the sand.
I like the idea, but an explanation or a FAQ would be much more useful than a small list of vague bullet points. It looks like it takes PDFs and epubs and serves them as HTML - but PDF conversion is particularly tricky and prone to failure. Are there options to tweak the conversion like in Calibre, to work around badly formatted PDFs (which seems to be most of them)? How does it handle figures, or tables that are too large for a given mobile screen? Can it fetch covers and/or metadata for books if necessary? Answering some use-case questions like these can give users a better feel for the scope and goals of the project.
When I clicked a PDF link it opened in FireFox's PDF viewer. Thought that was odd/a bug. I checked it out because I would like a ePub/PDF reader that works on any machine I have access to and can connect to a machine running this but at first glance it needs a little work. Still, I'll check in a few weeks from now, it's a good idea if they can overcome the issues you mentioned and make sure things render consistently.
https://apps.sandstorm.io/genre/Media
I see you're using ebooks from the project I lead, Standard Ebooks, in your front page screenshot. Glad to see you're liking our work, and keep up your own good work!
Drop me a line if you need any help with epub compatibility/quirks :)
- Safari Books Online: expensive, and only works with books on their platform
- Recoll: libre/free, and can search a local book collection. Built as a desktop app, although there's at least one web client[0]
If either LibreRead or one of the Recoll web UIs can match the speed and UI of Safari's full-text search, I'll be very happy.
[0] I haven't tried it, because it didn't occur to me to look for one until today: https://github.com/koniu/recoll-webui
[0] http://docfetcher.sourceforge.net/en/index.html
I don't really like reading ebooks on my desktop or mobile
Just yesterday I wanted to order the new Kindle Oasis because I think the hardware is perfect (good to hold, physical buttons, …) but was told by a coworker just before ordering it can‘t open .epub files.
Edit: Thanks for all the tips about .epub + Kindle. I just found out that there also is an option to install Software like KOReader[1] if one wants to go the Jailbreak route.
[1] https://github.com/koreader/koreader
I was doing this with a Kindle Paperwhite.
https://github.com/koreader/koreader
and a newer one that the developer just announced in a Reddit rust group:
https://www.reddit.com/r/rust/comments/7iu7q8/plato_a_docume...
I could more confidently selfhost a web version of my calibre library for reading and bookmarking. Calibre has a web version but I'm not confident in it and would be uninclined to host it even in a sandstorm instance for example.
The memory issues of libreread, as indicated by others, are too much for hosting in a friendly way with other apps. The value of full text search isn't nearly good enough to warrant the memory usage. Aim for < 60MB serverside.
Calibre has an large amount of features that are critical for people actually trying to maintain an ebook library. Those features have been added and polished over a decade. I'm very doubtful they can be replicated in a reasonable timeframe.
Valuable to see people making things in this area though! Cheers.
I have yet to find a reader which can do this.
Would love any feedback, if you have it :)
I maintain, for personal use, a self-hosted web service that does something similar to this. In my custom service I split each PDF into a collection of images. This lets me download limited sets of the book (10-page chunks) for quick load times and also lets me remember which page was the last one I was reading.
A similar feature in something like this would be cool. Automatically extract the image from the page, transcode it into the best format supported by the browser, and remember which page is being read (regardless of the source book format).
One thing I really wish I could do with it (LibreRead or Ubooquity) is "add" books from the internet archive to it either as virtual links that simply opened up to the IA reader on their site, or with an option to download locally within the reader interface.
Thanks for this.
It does get much heavier (recommended 2 GB) if you enable full-text search with Elasticsearch. The metadata-search only capability was added to get the memory requirements lower.
Table of Contents support with working links; per-user storable bookmarks; font and color control; margin control; multiple methods of page turning; a non-bookshelf library index (I have over a thousand authors, most of whom have more than one book -- any interface needs to be usable by someone with a library of ten thousand books); and probably a partridge in a pear tree.
But it looks like a good core on which to build.
LibreRead supports both metadata search and full-text search. (Though the latter requires a lot more RAM.)
LibreRead probably could use some tagging and categorization fields in the metadata, but that is the sort of features that should be relatively easy to add later.
[1]https://github.com/janeczku/calibre-web
But then it supports PDF and EPUB, neither of which are directly supported by Kindle, they have to be converted first. So is LibreRead converting to AZW, or to HTML such that the Kindle's permanently experimental web browser can display it?
Not sure how feasible it is with pdfs though. Maybe I would just not include them in the demo, I don't think it's a common ebook format anyway.