Project

General

Profile

Brainstorming » History » Version 53

Greg Burri, 11/18/2009 04:30 PM

1 1 Greg Burri
h1. Brainstorming
2
3 31 Greg Burri
[[Brainstorming version 1.0]]
4 1 Greg Burri
5
h2. Future versions
6
7 31 Greg Burri
* Fork Qt and improve http://qt.gitorious.org/qt/qt/blobs/master/src/corelib/io/qfilesystemwatcher.cpp (and dependence files) to
8
** Watch "recursively" and "passively"
9
** For the three platforms : Linux/Win/MacOSX
10 30 Greg Burri
* The user can set a flag to active bandwidth and CPU limitation. If activated then downloading, uploading and hashing rates will be reduced.
11 32 Greg Burri
** This option is available from the trayicon (Core) or in the settings panel (GUI)
12 36 Greg Burri
** Automatically detect a running game and set the limitation flag.
13
** Automatically detect CPU/bandwidth usage and set limitation flag.
14 1 Greg Burri
* The user can dynamically change the number of _downloader_ in the settings window (1 to 10 for example).
15 36 Greg Burri
** More downloader will increase the global transfer rate but will download more file in the same time thus the files will be available later.
16 20 olivier morel
* Detect duplicates (files which have the same size, same hash and same name) on the local machine and allow the user to easily remove them. 
17 23 Greg Burri
** [Greg] Compare only the hashes is better because some identical files may have not the same filename. Moreover the size (or the name) is pointless because the hash identify the data.
18 15 Greg Burri
* See by an icon next to the peer name in the peer list when a peer has setted the option to reduced the bandwidth.
19 5 Greg Burri
* An URL is displayed on top of the file browsing windows like : _aybabtu://192.168.1.46/movies/sci-fi_. It's allowed to copy or paste an URL.
20
** There is a button somewhere to open a blank browsing window.
21 1 Greg Burri
* The users can add some comments or tags associated to theirs sharing. These comments or tags are displayed in the list of peers (new column ? tooltip ?).
22 10 Greg Burri
** You can switch the peer-list to a tag-list
23 1 Greg Burri
* Free space management.
24
* Preview of video and mp3 files from a peer. Streaming ?
25
* Virtual folder to aggregate some real folders. For example the virtual folder 'Divx' may merge '/mnt/Divx1', '/mnt/Divx2' and '/home/paul/movies'.
26 17 Greg Burri
* Multi languages. (that can be changed dynamically on the fly, available with Qt).
27 1 Greg Burri
* Create a theme with : "Qt Style Sheets":http://doc.trolltech.com/4.5/stylesheet-examples.html. See the interface of _Qt Examples and Demos_.
28
* Protect some sharing by a password / user rights for shares.
29 19 Greg Burri
* Statistics window with real time graphs. (see the statistics of eMule).
30
** The most uploaded files
31 18 Greg Burri
* IPv6 support.
32
* The user can save favorites (a folder in a peer). The favorites are displayed in a panel below the peer list.
33 1 Greg Burri
* The peer list shows by an icon the OS (Linux/MacOSX/Windows)
34
* Use of a faster malloc (and optimized for multi-threading) lib like "nedmalloc":http://www.nedprod.com/programs/portable/nedmalloc/ or "hoard":http://www.hoard.org/.
35
* Identify certain file (like mp3) without theirs metatags. Same mp3s with different id3tag will be considering to have the same content.
36
* The user can create peer groups and drags peer into like a classic IM (pidgin).
37 40 Greg Burri
* Automatic update system under windows and mac osx. Like Firefox.
38 41 Greg Burri
* Try to keep a small core and add a plugin system like Firefox.
39
** Use of qt-script for plugins ?
40 42 Greg Burri
* To have the Windows 7 compatible certification : http://www.readyset7.com/software.aspx :F
41 43 Greg Burri
* Using of "Lucene":http://lucene.apache.org/ for a better searching engine
42 44 Greg Burri
* Use of the Jabber protocol for the chat system.
43 46 Greg Burri
* Create a tool like "ExpanDrive":http://www.expandrive.com/windows (_Windows_) which can simulate a file system. Therefore the user can browse an Aybabtu network from Explorer, for example : _G:\<user>\<share1>\etc.._. Same thing under _Linux_ with _mount_.
44 48 Greg Burri
* Create a voting system per peer, you can tell if you like or dislike a peer ('+' or '-'). Then, a good or bad icon will appear next to the nick of each peer in the peer list. If a peer share virus or corrupted files it will be shown as such.
45 49 Greg Burri
* Add a link definition. The user can make link from its files/folder or from a remote file/folder. See [[Protocols#Links-to-resource]].
46 50 Greg Burri
* Use THEX:"http://open-content.net/specs/draft-jchapweske-thex-02.html#anchor4" to verify file integrity.
47
48 38 Greg Burri
49
h3. Searching
50
51
* User can use quotes to search a complete sentence, for example : "I have a dog".
52
* Search in meta data like ID3tag and in compressed file (zip, etc.).
53
54
h3. Chat
55
56
* Private chat (point-to-point). 
57
* Chat by channel (each user can join one or more channel and he will receive all the messages broadcasted to the selected channels). The channel can be created by any user (like battlenet).
58 52 Greg Burri
* Status : online, occupied, away. (with auto away)
59 53 Greg Burri
* Be able to mute someone