Straw is a feed reader aimed for users using the GNOME desktop. You subscribe to news, blogs, and podcast feeds and read the feeds in the comfort of your desktop, with or without online access.
The goal of Straw is to be an easy-to-use feed reader and one that is integrated with the rest of your desktop. It should support the capabilities provided by the desktop as well as not being hard to users when it comes to usability and in terms of providing functionality.
- RSS and ATOM support
- Support for enclosures
- Export and import of feed list from OPML
- Offline reading of blog and news (and other) feed content
- Support for grouping of feeds (categories)
Getting in Touch
/SystemArchitecture, the specification of the context and structure of Straw
/DataModel, the specification of how Straw sees the data it handles
/HowtoBuildFromSource, how to build straw from subversion or git
The following are guidelines as to where we are going. Feel free to comment below or contact us in our mailing list or on #straw IRC channel at freenode.net server.
Because we want to release 0.28 soon, we should work to meet /ReleaseRequirements.
/NetworkCode, improve and optimize the networking code.
[DONE] /FeedCategories, allow organizing feeds into categories.
[DONE] /EventHandling, improve the event handling and producing code.
- [DONE] Plan: Improve user interface usability and design a more efficient way of interacting with the user interface
- [DONE] Move to tree-based view of the feed list
- [DONE] Aggregated item viewing (e.g., display all new items regardless of what feed they are in)
- [DONE/IN PROGRESS] Plan: Aggressive refactoring and redesign (if necessary) to improve the code base
- [DONE/IN PROGRESS] Modularity, 'touching' a piece of code should not break other code and other subcomponents
You can use the following links to Bugzilla search queries to see various types of issues we're working on:
IDEA - issues we don't (know how to) process yet. As Tuukkah described it: "someone got an idea, and now we have to do something about it"
REGRESSION - anything that is a step back from the previous versions of Straw.
TASK - straight-forward issues to be taken care of without (much) programming, be it routine maintenance, source code audit or tasks related to release (or other) requirements.
QUALITY - weird behaviour, crashes etc. that cause Straw to be of bad quality.
COMPLIANCE - compliance issues such as mishandling RSS/ATOM/... or HTTP specification details; also includes platform and GNOME HIG issues.
These types are used as keywords in "Status whiteboard" field in Bugzilla using the straw[''KEYWORD_NAME''] format.
Research and design
Plan: /LongTermPlanning, find the reasons for Straw to exist and people to use and develop it.
Plan: /DiscussionTracker, track all kinds of discussions with new backends and frontends.
Research: /OtherReaders, take a closer look at other applications out there.
Idea: /GnomeDesktop, get included in GNOME releases.
Idea: /InternalWebServer, enable better HTML, Web and distributed features.
Idea: /GnomeInteraction, Target milestone: 0.40.
- Feed metadata should be indexable and searchable by third-party indexers and search apps
- Provide DBUS APIs for other applications to interact
- Idea: Web application interaction
- Bookmark with del.icio.us
- Submitting posts to Digg
- Idea: OPML is ugly for feed list import
- Support FOAF and Atom
- Offline reading of "full story" links
- Blog commenting and blog posting?
- Syncing between computers the status of read articles?
- Google (feed) Search
- Have a standalone feed viewer for viewing feeds in nautilus