Earlier this year, I released my LiveJournal Atom Feed Digest Authentication Proxy (also known as LiveJournal For Google Reader Users). This tool allows Google Reader users to subscribe to “friends only” posts in LiveJournal weblogs, which normally isn’t possible because Google Reader doesn’t support the necessary authentication methods.
Thanks to the hundreds of users that use the service, and in particular to Mike, Aaron, Thom, and Nat, who filed particularly valuable bug reports, this post announces the new version of the tool – version 1.3. If there were a tagline for it, it’d be “at long last, it’s stable!” The source code for this version is also available for download.
Here’s the “for dummies” guide to getting it working:
Using Google Reader To Get “Friends Only” LiveJournal Posts
There are lots of good reasons to use a newsreader (like, for example, Google Reader) to subscribe to your friends’ LiveJournals. The big and obvious one for me is that it’s possible to subscribe to your other friends’ non-LiveJournal weblogs, too, and to other comics and news sources and all kinds of things all from one place, so you don’t get stuck in a cycle of “check the LiveJournal friends page, now check this blog, now check that one,” and so on. But if you’ve used Google Reader already, you won’t need to be told about how great it is.
The problem is that if you just use Google Reader to subscribe to LiveJournal weblogs, it doesn’t pick up your “friends only” posts. That’s kind-of irritating, and could be a showstopper, unless somebody wrote a tool to get around the problem. Hey look, somebody did!
- You’ll need a Google Reader account. If you already have a Google Mail or similar account, you can use that, or you can make up a new one to make it hard for the all-seeing Google to link together all of your online activities into their massive databases. If somehow you don’t have one already, create a Google account here.
- Next, you’ll need a LiveJournal account. Unless you’re one of these fancy folks who uses OpenID to authenticate and read your friends’ “friends only” posts, you probably already have one of these. If not, create one here and then get everybody you know to add it to their friends list!
- Finally, you’ll need to log in to LiveJournal For Google Reader Users. This bit’s really easy, because you just log in using your LiveJournal username and password. If you don’t like the idea of your LiveJournal credentials being stored on some site somewhere that isn’t LiveJournal, you’ll want to download the codebase and run it on your own server.
Then you’re ready to go! Just click the “add to Google Reader” links (or use the “atom feed” links to get links you can use in other reader tools, if Google Reader isn’t your thing).
And Here’s The FAQ
What’s new in this version?
It works properly, for one. Previous versions have had bugs when picking up feeds of users whose usernames contained dashes or underscores, or when your username had uppercase letters in it. These irritating little bugs took a while to be found, and are the result of strange behaviour on the part of LiveJournal’s server. They’ve now all been fixed, and all feeds should work perfectly.
What about… OpenID…? Communities…? DeadJournal…?
If you’re looking for extra features; here’s the round-up:
- Support for OpenID probably won’t ever happen, and certainly won’t happen soon, because it’s horribly complicated compared to the simplicity of the rest of the program. I love OpenID, I really do, but LiveJournal For Google Reader Users will probably never support it (unless you feel like writing that bit of it). Sorry!
- Communities probably will end up supported in the next version, so you can pick up friends-only posts in them, too. Stop asking.
- Related journalling systems like DeadJournal can probably be really easily supported by this or a similar system. I’ll implement it as soon as somebody asks me to.
- Another feature that’s in the pipeline is an indication of friends-only posts. Right now, in Google Reader, there’s no little “padlock” icon to let you know that what you’re looking at is a friends-only post: they all look the same. This’ll probably be fixed in a later version.
Got other suggestions? Leave a comment to let me know!
I’m already using Google Reader to subscribe to LiveJournal. What should I do?
You should unsubscribe (sorry!) from every single LiveJournal you’re subscribed to, then re-subscribe to the addresses given to you by LiveJournal For Google Reader. It’s a painstakingly long process, and I wish I could think of a way to make it easier, but I can’t. If you want to do it a few blogs at a time, that’s fine – and I suggest you start with the blogs which most-frequently make friends-only posts.
Why do I have to give you my LiveJournal username and password?
To get access to friends-only posts in your friends’ feeds, LiveJournal must be supplied with your username and password. LiveJournal For Google Reader stores these for you and provides you with a complex URL that doesn’t contain your username and password (so people can’t work out your password just by looking at the list of feeds you subscribe to).
To help you feel more secure, the entire application is open source (you can read the code and see that it’s not doing anything malicious) and you can even run a copy on your own server, if you don’t trust me at all.
Alternatively, if security is a concern for you, open a second LiveJournal account and have your friends add that one to their friends’ lists, and use this new account with LiveJournal For Google Reader. This way, your own personal LiveJournal account remains completely protected. Can’t say fairer than that, I guess.
If you change your LiveJournal password or close your LiveJournal account, LiveJournal For Google Reader will stop working until you supply your new credentials.
Why do you get all mysterious towards the end of FAQs?
You’ll have to wait and see.
27 replies to LiveJournal For Google Reader v1.3 Update
[…] mean pretty much all posts. But along comes Scatman Dan and his wonderful and imaginatively named LiveJournal For Google Reader (now with v1.3 flavoring). This magnificent tool translates the protected LJ feeds into some […]
Hi Dan! I just found this and set it up, and I’m super excited about it. It is totally great!
I have a few bugs / comments / suggestions, which I will lump together into one list:
– I think that usernames for which the first letter is an underscore don’t work properly. All of my other buddies seemed to register correctly.
– It would be sweet if the feed could include links to the comments page (is it possible to allow it to show how many comments have been made? that would be extra super cool.)
– I’m not a huge fan of the auto-generated title that appears when the user doesn’t put a title on their post. Google reader puts in the little >> icon that you can click on to go to the post directly, so you don’t need to generate a title just to have something to click on…
– However, I’ve caught myself wishing for the LJ timestamps on the posts a couple of times. I know google reader adds timestamps, but I guess I don’t yet have a feel for what the delay is (also, the format of google reader’s timestamps is annoyingly vague).
Anyway, I hope these suggestions are useful to you. Either way, I’m totally psyched that you made this. thanks!
I just recently found your site in an attempt to do exactly what it does. I downloaded the source code and set it up on my server. After some tinkering I realized that it seems i have to run it under a subdomain, so i did that and it result in fewer errors. Initially it would default and try to load using my website’s root index.html now the problem is that it displays the following error when I try to login.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/content/a/d/m/adan/html/lj/index.php on line 58
I have edited db.php and added my mySQL server, password, and database name. Is there something that I forgot to get it up an running?
If you could generate the list in an OPML file format (essentially an XML document with feed names & feed urls), the OPML file can be easily imported into Google Reader (and nearly every other reader, actually)… adding all of your LJ friends with one action instead of clicking the button for each one.
With the recent acquisition of Livejournal by SUP, some of my friends are moving over to InsaneJournal and JournalFen. I’ve been struggling to find a low ram rss feed that will sort by date in a single feed with authentication. So if you ever have plans to expand this offering to other journaling services……. now would be the time.
Awesome! Thanks! :D I found this on the first page of a google search for “LJ Feeds Through Google Reader.” This’ll be awesome =) I’ve wanted to get all my feeds in one place for some time, but I no longer have the ability to add them through LJ (and I no longer have the desire to do so, either).
If you feel like fucking up my LJ account, have all the fun. There’s no credit card info or money info in there :P And I’m more realistic, to be honest. I figure you’ve got better things to do than spy on a chick you’ve never had contact with before.
Well this doesn’t seem to want to work for me.. I have a dash/underscore in my user name and I try to see my friends in my reader but I get the “nothing new” post… help?
Amazing! I love you! Haha.
Hm, I’d love to be able to use this to read my friends page filter in Google Reader instead of having to subscribe to people’s LJs independently
Inspired by your project, I’ve written one of my own – that does not keep the passwords in the database in cleartext. Instead, it generates a random per-feed encryption key, which is used by Google Reader as part of the URL of the feed, and the username and password are encrypted by this key and stored in the DB while encrypted. While not bullet-proof, this seems to be a somewhat more secure approach. It also generates an OPML, so one is able to add all of one’s friends (or any custom group) in one go. I’m thinking of adding a support for other authenticated feeds as well. If you’re interested in trying it out, drop me a line on my e-mail.
This. Is. Awesome.
Thank you! And, because you wrote, ‘when someone asks me’… I’d love to be able to add insanejournal accounts. Yep yep. But not a big deal — I’m just basking in not having to log into everything. Woo!
[…] I posted recently in my old LiveJournal about how annoyed I was by the fact that Google Reader wouldn’t allow me to see locked entries, even when I was logged into LiveJournal. None of my LJ friends had found a workaround, so pre-”Project Runway” last night, I did a little Googling, and the first result that popped up was Scatmania’s LiveJournal for Google Reader. […]
Is there a way to read all friends by one feed?
Firstly: love this tool.
Secondly: it’s gone down! Or, at least, I can’t access it – it redirects to another page. If it’s not going to come back up, can I get a copy of the code, so I can host it on my own server?
*goes into withdrawals*
It’s coming back! It shouldn’t have gone down at all, but the DNS hosts are idiots and they ballsed up the server move. It should have been back up by today but hasn’t yet… any time now…
Unfortunately didn’t work from my office and home networks.
P.S. Russia, St.Petersburg
[…] Reader can’t read Friends-only posts. That is a bother. Scatmania wrote a proxy tool that reads your Friends-only posts so that Google Reader can see them. He released the tool into […]
Here’s how I got my Livejournal for Google Reader working. I’ve been running 2 days and it seems to be running peachy. Thank you Scatmania!
– I created a mysql db for it.
– I created a subdomain for it to run under. I don’t know if that’s needed but saw mention of it.
– After installing, I got this error:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL
to remedy, I ran database.sql from inside myphpadmin
– I had to change a line in main.php from
(replacing EXAMPLE.com with my own domain name)
I write a little more about this on my site
Thank you Scatmania!
This is the most brilliant thing ever. You rock.
Is there any way to make use of this URL (http://exampleusername.livejournal.com/data/customview?styleid=670763&checkcookies=1) useful at Google Reader so that one can view their entire Friends’ page AND the protected entries? I’m a member of hundreds of communities and have lots of friends, so adding them one-by-one is a bit unrealistic.
There are more details here: http://community.livejournal.com/howto/40882.html
This URL works fine in Google Reader, except the protected entries.
It’d probably be possible to make it so that LJ-to-Google Reader could do that, but it’s not a priotity – the tool was designed to facilitate the reading of Friends-Only posts (in addition to regular ones) over on Google Reader, and, as http://community.livejournal.com/howto/40882.html states, the feeds you’re talking about don’t include any kind of protected posts.
A feature that might get implemented sometime would be OPML Export, which might fix your problem and would help more people, more thoroughly. Subscribe to http://blog.lj.abnib.co.uk/ to hear about updates like that one as they become available.
Well, the page does make mention of appending &checkcookies=1 to the style URL in order to see protected entries, but I have yet to find an RSS reader that will properly read it. Extensions for Firefox will either read it but be clunky or have other issues (Wizz RSS), not read it at all (Apple Mail), or read only the unprotected posts (Google Reader), so I’m trying to find something that lets me read the feed of ALL the entries on my FL and not mangle the URL or something else in the process. I’m hoping one day this tool can do that!
[…] Scatmania wrote a proxy tool that makes it so your Friends-only posts can be seen by Google Reader. He released the tool as open source. Thank you Scatman Dan! […]
It’s not letting me log in. =(
Oop, nevermind! There it goes! Thanks for the great tool!
Maybe I am just being blind here, but I’m afraid I can’t find the code.
This project hasn’t been running for a year or more now. The tool that’s replaced it hasn’t yet been open-sourced (but will be when I can find time).