Information manager/organizer with tags question.
andrei.avk at gmail.com
andrei.avk at gmail.com
Sun Nov 11 23:44:14 CET 2007
I would like to write an information manager/organizer type of app but
first I'd like to ask if there is something like that already
existing. I asked on yahoo questions but did not get a response. I
also searched freshmeat but even though they have plenty of projects
that are tangentially related, I was unable to find anything close
What I'm thinking about is this: a database with an interface that
stores records by tags and allows filtering and sorting by these tags.
When I enter a new record, I enter a title and any number of tags.
Interface would have a filter by: pull down menu separated in two
sections, favorite tags and recent tags. To the right of that would be
a button to add another filter, which would create a new pull down
menu to filter current results further. Then there would be a search
field where you'd type in a word and it would show a list of all
matching tags; then you would click on one of the tags to add it to
last filter menu's 'recent' list. Interface would be two-pane with an
option to switch to single pane, where one pane is a list of matching
records and the other is current record.
List of matching records would be sortable by clicking on column
Going into the record would bring up a screen with title and body text
of the record, if the record is a file it'd show title, list of tags
and a button that opens that file. (unless it's a text file that can
be viewed and edited there).
The idea is to have a central hub of all information, that is very
easy to search and locate not only the exact document you're looking
for but also a specific subset of documents, including all of the ones
you do need and excluding ones that you do not, which allows you to
work with them as a set without the need to specifically select each
and every one you need.
For the first version it'd be enough to have plain text body field.
Later I'd like to have a rich document format, probably html.
Later I'd also like to add an option for matching synonymous words to
tags. If you search for certainty, it would match assurance tag if the
option is on.
For instance, if I wanted to find this message, I'd search for Usenet
posts, tag, my name (as author). I would know that I only made one
Usenet post about tags. If I made unrelated posts about html tags, for
instance, I'd filter by 'information manager', and then I'd find this
post and more posts that I might make about this. If I wanted to
include possible replies, I'd remove my name from filters. Then I
could sort by date to see latest posts.
The reason for this idea is that right now I keep my information, or
at least most of it, in an outliner program called treepad. It's a
tree-like view program where you make a hierarchical structure similar
to file system, where each 'file' is a text entry field. This is
reasonably useful but is limited to only one possible subset, i.e. you
could put all posts under 'Usenet posts/info manager/a, b, c' but it's
impossible to filter it further or to combine it with some subset of a
different topic. Many chunks of information belong to multiple topics
and you can't always remember if you filed under one or the other.
Therefore I think this tag-based approach would be much more flexible.
I have experience with doing a few simple apps in Tkinter and also a
db driven site in TurboGears. I'm not sure what framework I should use
for this. I generally would prefer gtk because of responsiveness and
nice looks, but it may be a bit tough since I never did any gtk
development at all. Should I prototype in Tkinter? Would Django be
better suited for this or TurboGears?
Of course there isn't any need to do anything if there is already an
app that does this. Please tell me if it does, or if there is
something very close that could have this set of features added
easily. I was thinking about wikis, in fact. I might be best off
starting with a wiki done in TurboGears and going from there. I'd get
html markup pages right away, with links, nice formatting.. TG has
many components that could be useful for this app.
More information about the Python-list