These are all the things I'd like to add to NewsBruiser. Bold new features ----------------- Add easy support for Creative Commons licensing in both templates and syndication feeds. Add support for geo.code tags. Add the ability to use a notebook+blogroll as an RSS reader. Add the ability to be notified of new comments/trackbacks, by email, RSS feed, web page, etc. General bugs ------------ The regular expression in the AutoLink plugin chokes on very large strings. Entries that contain non-ASCII (like smart quotes) should be encoded to ASCII when syndication time comes around (or even before). The current timezone representation almost certainly doesn't work on Windows. Import screen acts weird if you go there w/o being logged in. Entry.getTimeTuple() returns a tuple with the DST flag always unset. I don't see a good way to determine whether or not a given time is DST. Looks ----- NewsBruiser really needs a set of UI standards. I have the patience to implement the standards and the framework for them, but not the patience to figure out what they should be. So I'd really appreciate the help of someone with a similar amount of UI skill but more patience, or more UI skill and a similar amount of patience. Use colors instead of single-pixel graphic to depict the hotness of a day on the calendar. (This is implemented, but there's no good way to configure it, so it's turned off.) This might be tacky and removable. Ease of use ----------- The timezone selection box leaves something to be desired. It would be better to use the city-based timezone selection options. Create a sub-form for the blogroll that doesn't require you to type in pipes. This can be used for other things as well. Write a bookmarklet for easy posting. Template system --------------- Instead of copying command maps to put them into other command maps, have an 'otherMaps' element in the map which can contain other maps to lookup. This will allow someone to put something in BASIC_COMMAND_MAP and have it instantly show up everywhere (which will in turn allow me to move the rest of the blogroll code into the plugin). The control panel needs to be templatized. It's the last major holdout. Add a %notebook-custom-meta directive and a way of specifying custom meta tags in key|value format. Add a %notebook-custom-head-links and a way of specifying custom links to go into the HEAD, in rel|url format. Expose the other SSIs as templates, not just the calendar SSI. Viewing the main portal page that shows all notebooks can now be confusing, if the default notebook defines a weird page header/footer. Should we not use those templates? Should we use the headers/footer for each notebook, and cut out everything except what's between the tags? Themes are hard to mantain as more items are added to the template system. Depending on the theme, the 'random' screen may render an entry without the full date context. Not a very serious bug. Indexing and searching ---------------------- The index and the pending update list keep absolute paths. They should keep relative paths instead. Stopwords seem to be indexed, and they shouldn't be. It isn't (isn) possible to search for contractions. Search results should have pagination, possibly 40 items per page. Importing and APIs ------------------ There's currently no way to import from an Atom feed. Rebuild index if neccessary in Advogato XML-RPC call. Categories ---------- Add relatively mass filing and unfiling of entries from category-edit Syndication/Notification ------------------------ Allow synchronization to an external site such as an Advogato account. Allow the user to select the default syndication format (basically choosing between RSS 2.0, RSS 1.0, and Atom). If a notebook is just mirroring a syndication feed, the view screen and similar screens shouldn't work for the notebook. (?) Plugins ------- Make plugins able to define HTML snippets for use in eg. user links. Documentation ------------- Set up a wiki to hold documentation The mail importer works in isolation, but I've never tried hooking it up to procmail. I'd appreciate it if someone could write a document on doing this, since I'm unlikely to ever do it myself. Importing Entries For Fun And Profit Better define the capabilities of plugins. Cleanliness ----------- Fix getEntriesMatching hackiness Lots of duplicate code between trackbacks and comments, which are almost the same thing but maddeningly not the same thing. Add a utility to remove empty directories (or do it automatically); they don't hurt anything but they take up space. Robustness ---------- Handle bad PATH_INFO and CGI data Proper "No such category" error Trim off all but filename from uploaded files (IE-uploaded files have the full Windows filename). Images with non-urlable characters aren't escaped. Get SSIs to work when called from include virtual with named arguments Statistics ---------- Most graphics Most nested parentheses Longest quotation Most trackback Most comments Keep count of configurable list of words