Hi all, First, let's see the current situation :
#Navigation : 9 items is really the max we can afford. Currently there are 9 items, but they aren't all necessary, and can confuse the newbies. #Browse Freenet page : The ?Search Freenet? field and bookmarks are definitly a good thing. However, why do we have : ?Fetch a key? : we don't want to fetch a key, we want to browse Freenet. ?Version Information & Node Control? : we don't care, we just want to browse Freenet. ?Current Activity? : idem #Messages : I agree we need to inform user when something is wrong. However, for the bookmarks, it's not the good place. I don't think either that there should be one page just for the messages : sometimes there is no message, it just wastes space. #Download and Upload : No clear separation between dowloads and uploads. #Plugins : This is a mess : here we access the plugins, we can add an official plugin, we can add a plugin from an url, we can add a plugin from freenet. #Connections to friends + connections to strangers : Why 2 separate pages ? Why showing informations about the current activity of the node ? All is mixed : managing nodes (adding/deleting) and showing their status. Why are the ports showed ? #Statistics : Nothing to say. It's just statistics. Maybe divide in several category. #Internet Connection : ??? It doesn't even work here... And when it works, it shows debug informations or really advanced ones. Why a level 1 page for that ? (why a page for that in fact..) #Configuration : A big big mess. Really. When in simple mode, it's almost ok, but in advanced mode.... Why a link to the security levels just on side of mode switching buttons ? It's not even related. #Mode switching : It's a pita : I have to go in the advanced configuration page to change this, or to click on the button on each page Now, what do I propose : #Navigation : ##Menu : (level 1, category : noun; level 2, action : verb) Freesites : => Browse Freenet => Insert your own site (when available) Filesharing : => Download files => Upload files Discussion : => Talk with FreeTalk (when Freetalk available) Status : => Show the {number of messages} messages (if there are some) => Show connections => Show statistics Configuration Plugins (if required) => Plugin 1 => Plugin 2 => Plugin 3 ?. Managing the node : A always seeable (sorry for new words...) button 'Shutdown the node' and 'Restart the node' Mode switching : Idem with : 'Switch to {mode=simple?advanced:simple} mode' #Details : ##Freesites : ###Browse Freenet : if XMLLibrarian plugin is loaded, show the search freenet field, else, show a message like : 'if you want to search freesites, you have to load the XMLLibrarian plugin' followed by a button 'Load the plugin' Then show bookmarks. If a bookmark is updated, highlight it. That's all. ###Insert your freesite : two solutions : not displaying it until we have a plugin for that or display a message like 'This feature is not yet available. Please use ?jSite / Thingamablog / the-other-freesite-manager-I-don't-remember-the-name? instead.' Possibility to add some instructions, like how to make a freesite available for all. ##Filesharing : On both pages, at the exact same place : Show the number of current downloads and uploads. ###Downloads : Field bulk download; Show the progress of downloads. Propose to clear all the finished downloads. Propose to clear or stop the downloads one-by-one (as now). Add a checkbox to all downloads, and propose and action for the selected dl (like in the connection to friends page). ###Uploads : File : Field 'Path' + Button browse. Checkbox : upload through the browser Insert as : * CHK : explain what it is * SSK/USK : idem * KSK : idem + ask for the name Insertion progress ##Talking : see ?insert your freesite? ##Status : ###Messages : as it is; ###Connections : Number of connections : X Friends : Y Strangers : Z Details : Friends details : as it is Strangers details : idem Add a friend : (I'm not sure wether we should have a page for that or do that here) Your darknet ref : Don't show the opennet ref : we don't need it, do we ? ###Statistics : sub-menu : node related things : (JVM + node version + datastore) bandwith : bandwith usage + number of bits dl/ul misc : cpu, threads, generate thread dump, etc. ##Configuration : sub-menus : one per category (+ security level); javascript could help here : we can keep in memory the changes in the configuration and have a global 'apply' button. + plugins : this interface is just to add plugins and configure them. Plugins should integrate in the ui. If not, they're put in the plugins menu. So : a list of all official plugin with checkbox (already added plugins have a checked checkbox) + button configure (greyed if the plugin is not added). 'apply' button : all unchecked plugin are removed if they were previously activated, all checked plugins are added. Field add a plugin from a uri (local, web, or freenet) : parse the uri to see which case it is, don't let the user do that for you. + button 'add' (add the plugin to the list, checked) I think that's all. Comments are *very* welcome of course :)