Development
>=============<
Roadmap
There is a rough roadmap at the introduction page, as well as a description of the basic ideas behind netrik: What it is, why it is there, where it is going to etc.
Here you will find information important if you want to keep track of netrik development, including a more detailed description of what netrik is, and what features are intended.
Features
As we mentioned in the introduction, netrik is primarily intended as a really cool text mode browser. It will be similar to w3m, but with many improvements over it, including lots of very own ideas we consider really interesting.
Here's a list of some of the ideas:
-
Adjustable rendering: As web pages are normally not intended to be viewed with a text mode browser, more complicated pages often look very bad in the available text mode browsers. The idea is to give the user a (simple) possiblity to adjust various parameters of rendering (how strict sizes are followed, which facilities are ignored, if wordbreaks are allowed etc.), making it possible to get as much as possible out of the page.
-
Variable color schemes: It is possible not only to change single colors, but to choose between several completely different color schemes, according to personal taste and to what makes sense for a given page. For most pages it is best to use colors to indicate different elements (like w3m), but for some pages it makes sense to use the site's colors, or use them partially.
-
Context-sensitive setup: Almost all options can be set dependant on the current URL. This is especially important for the two things mentioned above, but also cookie handling etc.
-
Exact layouting: Many pages rely on an exact layout. Thus it is important to have the possibility to render a page exactly as it would be rendered in graphical mode (including image boxes), even if it will look strange in textual mode.
-
System color: Netrik uses one own, reserved color to display some characters, which netrik inserts itself to indicate various things like word breaks, the type of a link, special text types etc.
-
Partially loaded pages: Presently Lynx is the only text mode browser that can display pages before they are loaded completely. (OK, Links can do also, but there seem to be some limitations to this...) This is not only a very nice feature, but even indispensable for some applications.
-
Builtin offline browsing: Offline browsing facilities built into the browser can be used much more efficiently and comfortably than an external offline proxy like wwwoffle.
-
Half-graphical mode: As we stated in the introduction, there are several advantages of text mode over graphical mode. Some of the most important are the ones regarding displaying itself. But this can easyly be "simulated" in graphical mode using the right properties (fixed width font, black background) -- with the additional advantage that images can be displayed. This also should be very easy to implement, and thus should come quite early.
-
Shared config and UI: If we really implement a half graphical or even full graphical mode at some point, it will use the same config, and will work exactly in the same way as in textual mode so that you can easily switch between different modes. It is also possible to directly transfer a session from one mode to the other, so that you can always work in the better suitable mode.
-
Efficient navigation: All available text mode browsers use a very primitive navigation, where all links are simply selected in the order as they appear in the file. This is quite unnerving with files having many links. Especially with browsers supporting tables and frames it doesn't make much sense. Netrik has several advanced navigation modes; Some of them editor-like (with a cursor), some of them pager-like (without a cursor, only a selected link), some of them with a combination of both. All of them have their advantages and disadvantages; but we are positive that we will find a really good compromise for the default behaviour...
-
Key mapping and macros: Similar to vi and mutt, netrik allows full mapping of keys and easy defining of macros, allowing very efficient usage. For example, if there is a page on which you always have to follow some special link, you can tell netrik to do this automatically as soon as you open this page.
-
Command prompt: Like in vi, all commands that can not be executed by simple keystrokes, can be entered on a command prompt.
-
Menus: All commands can also be executed via menus. When doing so, the corresponding keystrokes or command prompt input are displayed, so that you can learn them and use them next time you need the same command.
-
Online help: Netrik uses extensive, context sensitive online help. Similar to PINE, netrik tries to guide novice users; this can be disabled not to get into the way of experienced users.
You can look up the current development state at the state page, along with other topical info about netrik.
How can I help?
As with any Free Source Software project, there are several ways how you can help :-)
In any case, we ask you first to subscribe to our mailing list. You will get an idea of how netrik development works, get to know the developers. You can also tell us your experiences with netrik and take part in our discussions. That already helps us a lot. Also, this way you will get gradually involved in development, and you will find a suitable task for you, if you like. And sooner than you have noticed it, you are an indispensable netrik developer :-) Isn't it lovely, how easy things sometimes are? ;-)
Of course, you need to download netrik. You can get the most recent release from the SourceForge download page, but if you want to hack on the code or work on the documentation, sooner or later you will need to use CVS. This also keeps you more up to date. (You needn't bother about CVS yet; for now, simply watch what's going on :-) )
You should also know what Free Source Software is.
Finally, knowing our ideas about version numbering could prove useful.