October 16, 2007, [MD]
While working for
CARE Indonesia we were trying to
implement a web-based intranet file repository, that the different sub
offices could use to store their documents, to increase both archival
(backup, etc) but also cross-project and organizational learning. I
found the project Boxroom, a Ruby on
Rails project that seemed to do pretty much what I wanted, and with a
very simple and intuitive layout. I still missed a few functions, but it
had a very clear code base, and so I spent part of my time at CARE
adding functionality and making it more appropriate to our organization.
The product right
now has a lot of really neat features - it uses a number of UNIX tools
to extract the text from pdfs, rtfs, powerpoints, etc - and full-text
indexes all files, so that you can search with “snippet view”, you can
preview the pure text (instead of having to download a 5 MB pdf,
especially useful in countries with slow internet), upload zip files
that are then extracted, or select a number of files and have them
zipped before downloading, distribute permissions on a group basis, and
there is even a very thin “intranet news” front-end, which is mainly to
promote files, since it has a very neat way of linking directly to files
in the repository.
The application is
almost 100%, but since my Ruby skills are not perfect, I do believe that
there are still some tiny bugs or instabilities in there - the only real
way to find out is to use it. However, because of other issues, we never
managed to implement it at CARE before I left, and since then I have
gone on to do other projects. I would very much like for these changes
to be incorporated into the original Boxroom, so that they could face
more “peer-review”, but unfortunately the original Boxroom is pretty
much unmaintained at the moment. So instead of letting the code linger
on my hard drive, I decided to at least release it to the public. The
code can be found at this git
repository, and I even made a
nice screen-cast
showing every step from downloading it with git, configuring it (almost
no steps), and using the different functions.
I think this code has a lot of potential, and I would love for someone to pick up where I left and adapt it to their needs (MIT style license).
Stian
Stian Håklev October 16, 2007 Toronto, Canada comments powered by Disqus