Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Shaarli – Personal, minimalist, database-free, bookmarking service (github.com/shaarli)
98 points by dsr_ on Sept 21, 2016 | hide | past | favorite | 53 comments


Neat, but I'll stick with Pinboard. It's basically perfect.


I don't know, I'm tempted to switch to this thing.


Hey Maciej, just wondering. Does having this link on the HN frontpage influence the amount of new subscribers you have today, and possibly tomorrow? Just curious


Honestly, I don't know. I just see a total earnings figure for the day on my admin thingy, and don't have any kind of analytics or what-have-yous.


You'll probably need a beefier backend and an authentication service, to serve your existing customer base.


Eh, how hard can it be?

On a serious note, this is cool and I'm glad it's actively maintained. No one knows more than me how fun it is to run your own bookmarking service.


It's far from perfect, for instance how do I access my bookmarks while offline ?

from the original shaarli FAQ:

What use Shaarli and not Delicious/Diigo ?

With Shaarli:

    The data is yours: It's hosted on your server.
    Never fear of having your data locked-in.
    Never fear to have your data sold to third party.
    Your private links are not hosted on a third party server.
    You are not tracked by browser addons (like Diigo does)
    You can change the look and feel of the pages if you want.
    You can change the behaviour of the program.
    It's magnitude faster than most bookmarking services.


Pinboard is SaaS, Shaarli is self-hosted and open-source. For some people it matters.


I switched to shaarli back in the days when del.icio.us was bought by yahoo. I am using it ever since without problem. Hosting on super cheap PHP hosting. The open-source community took over the project from original author and they are maintaining it. Highly recommend.


Same here, it's simply working!


A file is still a database, it's often simply a worse one. Go with sqlite instead of generating PHP files for storage.


I did that: https://github.com/harobed/gobookmark

« Inspired by Shaarli (Delicious clone), easier to install (only one standalone executable).

Built with Go - GoBookmark runs without installation on multiple platforms. »


Going with something like sqlite is not always better -- if what it provides is not needed, it's complexity for complexity's sake. PHP arrays are perfectly fine (until you reach a certain size), particularly when using a direct key access scheme. Loading/saving the data is pretty much a file_get_contents|file_put_contents affair, with some inline filters such as serialize & gzip. Couldn't be simpler, and it sounds like it doesn't need to be more complex than that.



Can anyone comment on shaarli vs wallabag?

Wallabag seems designed to mimic Pocket more - but I'm only basing this on a quick glance. Can anyone cite any pros/cons of each platform? For example is one better to host on a smaller vps? (My use-case is really minimal, just personal bookmarking, not a team or anything like that.)


I don't know about Shaarli, but yes, Wallabag is a read it later service, not a bookmarking one.

You can self-host or use a hosted version here (that's what I do) : https://framabag.org/


I've been using both for a while.

Shaarli is a tool to bookmark, tag, comment, publish on links you want to keep.

Wallabag is a tool to save content to read later, it makes a local copy of the relevant content which it displays with usually improved readability and save content from linkrot, once read you can either save it, push it to your shaarli or delete it.

I chose to self host both on a shared webserver and they require very little effort for installation and maintenance. Some link are not wallabag friendly and once in a while it will fail to retrieve content, there's a button to report the link to wallabag dev so they can improve the situation and a button to go to the original link destination.

I never used pocket, this is a third party closed source service which is the opposite way of how internet is supposed to be done.

If you cannot afford or do not want a shared hosting, you can host this locally in a virtual machine.


Shaarli was created as self-hosted alternative to del.icio.us back in the day..


Came to ask the same question.


Would be nice to hear how this is database-free. Is it a static site generator? Is it using files?


Why not use a real database ? Files are slow !

Do browsing this page feel slow ? Try browsing older pages, too.

It's not slow at all, is it ? And don't forget the database contains more than 16000 links, and it's on a shared host, with 32000 visitors/day for my website alone. And it's still damn fast. Why ?

The data file is only 3.7 Mb. It's read 99% of the time, and is probably already in the operation system disk cache. So generating a page involves no I/O at all most of the time.

http://sebsauvage.net/wiki/doku.php?id=php:shaarli#why_not_u...


FTA:

  links are stored in a file
    - compact storage
    - no database required
    - easy backup: simply copy the datastore file


That's still a database if you ask me. Just a different type.


The crucial distinction as far as the OP is using the term seems to be that such a datastore does not require the user's hosting provider to give them an instance of any of the common DB servers, which typically needs a more expensive plan than the usual baseline of "disk space and an httpd [that supports calling out to one or two scripting languages]".

(Basically it should run on anything more complex than a static site host. Though it's also true that sqlite would probably be a cleaner choice for the datastore without losing any of that benefit.)


Hosting wise it isn't


Who said databases have to be remote?


The "datastore" is a gzip+base64-encoded serialized PHP object written to a file.

PHP has SQLite built-in, which has the same single-file property with a lot better durability, portability, and stability guarantees.


SQLite would be nowhere near the current design in term of performance. Typical shaarli usage involve little update (a dozen a day maximum) an a lot of read (10k+ pages viewed per day on sebsauvage's instance (shaarli's creator, an influent french blogger). Thé file system's cache works really well in this kind of scenario, way better than SQLite.

For the stability guarantees, shaarli exists since 2011 and is used in production by many (several hundred) people without trouble.


Well since sqlite is also single file, would it really decrease file system cache efficiency ?


The ui looks old.


Yeah, and it doesn't exactly look minimalist either.


Yeah 30K lines of code in about 100 files is a strange use of the term minimalist.


Seems at some point you got lost, what the page says is "the user interface is minimalist design". it says no such thing about code.


It is ! Shaarli bas been created in 2011 and the UI hasn't evolved since then. There is currently a work in progress in that direction though.


That looks old even for 2011 :P


Use CSS to change the look if it does not suit you.


Strange. A few days ago, I announced my bookmarking service (http://paperbin.co) and it was barely noticed. Yet, Shaarli has 32 votes within an hour.


Self-hosted open source projects tend to appeal to a different set of people than a commercial competitor to an established service.

Also, HN is weird.


Yours seems to be a SaaS and Shaarli seems to be an open source product you can self host.

That might be why this one caught more interest.


I'm a long time shaarli user and the reason I use shaarli is to get away from services such as yours. I trusted del.icio.us got bitten and will never make the same mistake again.

paperbin.co is useless and pointless to me, it is contrary to how the internet and the web is supposed to work, it is closed source crippleware with no possibility to self host, it offers no features that has not been around in competitors for years.

This is a reason why I ignore your project but am excited to participate in discussion about shaarli and wallabag.


There is also a nice OSS iOS extension, ShaarliOS https://github.com/mro/ShaarliOS



This must be the 3rd time I see this on HN in the last 5-6 years.



yes, these constant reposts must stop!


Be nice to see something that uses cloud storage like Azure table storage, but run locally so at least I have a backup. Also that log is horrendous, but hey its free!


Question: how does it store data without a database. or does it not store data?


The "datastore" is a gzip+base64-encoded serialized PHP object written to a file.

It's really efficient under shaarli's typical workload : really few writes ans a lot of read => almost no IO, everything stays in the filesystem's cache.


Oh yeah that makes sense, I was thinking there is browser storage but probably not when you turn off the browser/computer.


Think about it this way: what does a filesystem do?


It stores data, it can do so without requiring a database engine. As in flat file database.


I love the name.


If it holds data it's a database.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: