This brings together a bunch of different threads, using one of my favorite software products in a new, almost surprising way. The idea was suggested by a user named elasticthreads in a very simple comment on the Frontier News blog.
Is it possible to serve up my NewsRiver via Dropbox?
I didn’t understand what he was asking at first, but then I thought about it and it all of a sudden made sense.
1. Suppose you want to have your river accessible anywhere, but you don’t want to invest in a server somewhere, but you have a desktop computer at home that isn’t doing much during the day. Why not have it create a river for you and publish it via Dropbox?
2. And Dropbox has a very cool feature for this kind of app. If you store a file in the Public folder at the top level of your dropbox, you can get a public URL for the file by right-clicking it and choosing Copy Public Link from the popup menu, as illustrated in this screen shot.
It works!
Just to show that it works, here’s my public river. (It’s a subset of the river I depend on every day, which contains some feeds I don’t want to show publicly, which illustrates an important point — be careful using this feature.)
How to set up
0. If you don’t already have river2.root, follow the instructions on this page.
1. In the OPML Editor, bring river2.root to the front and choose Update Front Tool from the Tools menu. Click OK when the confirmation dialog appears. (It’s possible your copy of River2 has already updated.)
2. You must have Dropbox running on your system. Locate your Dropbox folder. Create a sub-folder of your Public folder called River2. If you accepted the defaults, this is where your folder will be, first on Mac, second on Windows.
Macintosh HD:Users:yourname:Dropbox:Public:River2:
C:\Documents and Settings\yourname\My Documents\My Dropbox\Public\River2\
Replace “yourname” with your name. On my Mac my name is davewiner and on Windows it’s Dave Winer.
3. Visit the Prefs page for River2 (you can locate it in the Menu at the top of every page on the River2 site).
4. About 3/4 the way down the page you’ll see a section called “Dropbox”. Check the box to enable the feature. It’s turned off by default. Then carefully enter the path to your Dropbox folder. Scroll to the bottom of the page and click on Submit.
5. Bring the OPML Editor app to the front. From the River2 sub-menu of the Tools menu, choose Scan Now. This will read all your news, podcast and photo feeds, looking for new items. When it’s complete, if all goes well, you should see a file called index.html in the River2 sub-folder of the Public folder in your Dropbox.
5. Because it’s in the Public folder this file is publicly accessible. To determine its address, right-click on the index.html file name, and choose Copy Public Link from the Dropbox sub-menu in the popup. Paste the link into the address bar of your browser. You might want to bookmark it.
index.html will be re-built every time River2 does a scan. By default that happens once per hour, but you can change that using the Prefs command in River2. The images folder contains images that are needed to view the page. They are all synchronized through the normal Dropbox process.
If you have any questions, please post a comment below. If you want to share the address of your river, please do so. It’s always interesting to see how people are using the software. ![]()
Caveats
If you run River2 on more than one machine, you can only turn this feature on on one of them, otherwise they will write over each other. ![]()
Posted by Nathan on March 18, 2010 at 11:47 am
We thought about using dropbox as a kind of subversion (or version control) for syncing the development of web sites. Then we realised that there is no version control – just syncing – you can’t return to an older state – but if this did not matter to you, it would be a great way of sharing development infrastructure.
Posted by elasticthreads on March 18, 2010 at 2:42 pm
Dropbox has version control.
Posted by Nathan on March 19, 2010 at 1:47 am
I did not know that. I just did the usual, click, install, use. Never read any docs. How do you enable/configure that then?
Thanks.
Posted by elasticthreads on March 18, 2010 at 1:34 pm
Thanks, Dave. This is exciting.
The only thing is, I think there’s a bug with the updated River2:
1. I’m not seeing the Dropbox preference in the Prefs page. I updated River2, and can look around river2.root and see the changes you made.
and 2: Whenever I scan now, OPML generates an error — “Internal database error: attempted to read a free block. Try to Save a Copy and Relaunch with the new database” — following the error, takes me to “local (adrhistory = @adrfeed^.history.[guid])”
I tried saving a copy and relaunching, re-installing River2. No luck.
Could this be because I’m using the universal build of OPML?
Posted by Dave Winer on March 18, 2010 at 1:44 pm
The corruption is probably in config.root, which is in the OPML folder: Guest Databases/apps/Tools.
The only way to deal with it is to drag config.root out of that folder and start again, or re-install the OPML app. It probably doesn’t have anything to do with the app, corruption happens sometimes when the app crashes or the computer crashes without having all the data written to disk. It’s pretty rare, but it doesn happen. Sorry it hit you.
Posted by elasticthreads on March 18, 2010 at 5:05 pm
That fixed my corruption issue, but I still don’t see the Dropbox preference on the Prefs page…
Posted by Dave Winer on March 19, 2010 at 12:02 am
I just re-released the prefs outline, so if you update river2.root again, per the instructions above, you should get the new part and the Dropbox prefs should show up on the Prefs page.
Posted by elasticthreads on March 19, 2010 at 2:15 am
I updated, even tried a re-install, but for some reason I’m not seeing the Dropbox option on the Prefs page.
I did get everything to work by editing the config.root manually. Works beautifully.
I will say your instructions for Mac are slightly off, or they were for me, you don’t want
Macintosh HD:Users:yourname:Dropbox:Public:River2:
you want
HD:Users:yourname:Dropbox:Public:River2:
Thanks, Dave.
Posted by Dave Winer on March 19, 2010 at 3:43 am
By default your root directory is called Macintosh HD.
Posted by jorel314 on March 19, 2010 at 12:08 am
Dropbox is great for hosting low traffic pages. If you get too many hits though, they’ll send you one of these emails…
“This email is an automated notification from Dropbox that your Public links have been temporarily suspended on account of generating excessive traffic. Your Dropbox will continue to function completely normally with the exception of Public links.
If you have any questions, feel free to drop us a line at support@dropbox.com.
- The Dropbox Team”
I got that email when one of my pages hosted on dropbox got ~500 visits in a few hours…
Posted by vrypan on March 19, 2010 at 1:10 am
Having something similar in mind I started working some time ago on a static HTML publishing system called bucket3. http://bucket3.com/blog/concept/
I’m more interested in dropbox as a conduit in these cases, not as a hosting platform. That is, as a simple, efficient and reliable mechanism to sync content between my workstations and my server (and get the cloud backup as a bonus).
I just wish dropbox had a command-line-only client for Linux and a good public API (syncing and notifications… rss cloud?). It would make applications like the one I described, and like the one Dave outlines, so much easier!
Posted by elasticthreads on March 19, 2010 at 5:00 am
OK. Last request with this Dave. This might not be reasonable to impose on all users, but I don’t think it will affect how the River2 index.html would render on desktop browsers,
but if you add
to the header of index.html it will immediately make it render better on iPhones, and I’m assuming Android’s browser as well.
Posted by elasticthreads on March 19, 2010 at 5:02 am
oops, that line of html I had in my post got eaten up because it was html.
the line to be added is (and not being able to edit posts, I hope this works better):
” “
Posted by elasticthreads on March 19, 2010 at 5:03 am
wow. I suck. It’s:
meta name is equal to viewport content is equal to “width=750″
Posted by Dave Winer on March 19, 2010 at 5:33 am
You can add it to your own — and let us know how it works (provide a pointer to your HTML).
http://newsriver.org/river2.html#editingTheLookAndFeelOfRiver2
Dave
Posted by Fred Zelders on March 19, 2010 at 11:26 am
Based on your instructions (new title.gif & changes in rss.css) I changed the look&feel of my Newsriver ยป http://dl.dropbox.com/u/87408/River2/index.html
Posted by elasticthreads on March 19, 2010 at 5:59 am
Ok. Got it. Here’s my public river, works decent on both Mac and iPhone, although I’m still working on the overall CSS stylings.
http://dl.dropbox.com/u/1096590/River2/index.html
Posted by Dave Winer on March 19, 2010 at 6:30 am
Really glad you’re experimenting with this.
Posted by Fred Zelders on March 19, 2010 at 7:42 am
River2DropBox running on my iMac
Here is my public River: http://dl.dropbox.com/u/87408/River2/index.html
Can’t wait to see the items
Posted by EricR on March 19, 2010 at 2:38 pm
Dave,
I followed the instructions, reinstalled OPML, but I continue to get a “500 Server Error” when attempting to open the Pref page (all other pages work just fine). Any guidance would be appreciated. Thanks, Eric
Posted by EricR on March 21, 2010 at 11:13 am
I continue to get a “500 Server Error” when loading preferences. Reinstalled both River2 and OPML; other pages work fine (Home, Scan, etc). Any ideas on how to fix? Thanks, Eric
Posted by Dave Winer on March 21, 2010 at 11:19 am
First, that’s a lot of reinstalling to keep getting a server error. :-0
Usually there’s more to a 500 Server Error — what does the line below it say?
That might offer a clue to what the problem is.
When in doubt take a screen shot.
Posted by EricR on March 21, 2010 at 12:04 pm
Here you go, and thanks!
————————————-
500 Server Error
Can’t target “prefs” because it doesn’t specify a window.
Posted by Dave Winer on March 22, 2010 at 4:20 am
Pretty sure I know what the problem is. Could you try updating and see if it goes away.
1. Launch the OPML Editor.
2. Choose Update opml.root from the File menu.
3. Go to the prefs page for River2.
Hopefully you’ll see the prefs instead of the 500 Server Error.
Posted by EricR on March 22, 2010 at 9:07 pm
Dave…Prefs are now working. Thanks!
Posted by Frontier News – Der Schockwellenreiter on March 22, 2010 at 3:44 am
[...] Menschen mit einem Dropbox-Account: Using Dropbox to publish your aggregator. Eine Beispiel-Anwendung gibt es auch [...]
Posted by Instapaper + Dropbox + River2 = Coolness « River2 Blog on March 24, 2010 at 12:57 pm
[...] be sure that the Dropbox feature is [...]
Posted by JavaScript includes in River2 « River2 Blog on May 5, 2010 at 7:30 am
[...] there’s a new feature in River2. If you have the Dropbox feature turned on, in addition of generating a static HTML page, River2 will also generate a JavaScript [...]