Hi Tatyana,

I have been working on designs for a filesharing plugin for the last
couple of months. I have not yet presented my ideas, as I was not quite
ready.  However, I'll go ahead and give a summary of my thoughts to
date.

I'm looking for a user interface much like that of YouTube. The
important part of this to me is the concept of "channels". Channels
allow a user to subscribe to content they are interested in. So, if a
user/channel publishes new content, all of the subscribers to that users
channel will be notified of the new content. Further, the new content of
all subscribed channels would be downloaded automatically. The idea here
is to lower the impact of Freenet's latency - much of the content you
are interested in is already downloaded and available when you begin
browsing. Channels will be rated and content prioritized for channels
that you have rated highly (WoT?). Filters would also be applied to
prevent large downloads without explicit permission.

Here are a few sections from my current design documentation (Please
note that this is a work in progress and that I have not yet
investigated the best leveraging of existing Freenet plugins):

Social Media User Interface and Functionality
Much like YouTube, the plugin will have a start page suggesting channels
and content that you may be interested in. However, the plugin content
is not limited to just videos, it can also include images, and audio
content. In the future, this may also include other media types, such as
PDFs and Wiki pages.

The channel suggestions will be channels that your subscriptions have
subscribed to. The concept here is that if you are interested in a
channel, it likely has content that appeals to you. Therefore it is
likely that any channels that they subscribe to may also have content of
interest to you. In order to assist you in determining if that is true,
channels suggestions will include a summary of the channel, something
not provided by YouTube. This is important, as new channels and new
channel content will not be immediately visible, due to the latency of
Freenet. Once you subscribe to a new channel, the content of that
channel will automatically begin to be downloaded and cached in the
background for later viewing (subject to filtering).

Videos will also have thumbnails and previews so that you can prioritize
downloads that you think you may be of interest to you. This is again
done to deal with the latency of Freenet. Content that is already cached
will have a symbol in front of it, indicating that it is available for
immediate viewing. If content is not cached, a download status and
preview frame will appear in the content's place, showing the current
download status, thumbnails and previews, if available. You can also
change the download priority from inside this frame.


Management of Multiple Channels

Unlike YouTube, the plugin anticipates that you will have and maintain
multiple channels for varying purposes (WoT identities). Because of
this, the plugin will always keep a channel drop-drown box at the top of
the screen, allowing you to change the channel you are viewing as and
managing at any time.

It is also possible, if not likely, that there are multiple channels
with the same name. There is no way to reserve a channel name in the
plugin, as you would in a hierarchical domain naming scheme. Although
the channel name is not unique in the plugin, each channel does have a
unique signature for identification of the channel and its contents.


Categorizing and Tagging Content

YouTube does not allow you to categorize your content. The only
categorization possible is by the use of Playlists. This plugin will
allow easy categorization of your content by use of folders. Folders are
hierarchical, meaning the folders can contain folders, just like on your
typical computer file system. Content that can be categorized in folders
includes your Channel list, Liked, Favorite, Playlists, Content and
External Links. In addition, all of the above can have tags placed on
them for simple locating and indexing of related content.


Content Views

All channel and content lists can be viewed as thumbnails that can be
drilled down into. This includes images, videos, audio and all other
types of media. Thumbnail views can be shown either on a sidebar next to
the current content being viewed or in a full page view. All content can
have a thumbnail image attached to it. If the thumbnail is not
available, an image of a ??? will be shown in its place.


Embedding external content as your own

External media content can be presented on a channel using the External
Content Wrapper and supplying the Freenet URL of the media content to be
added to your channel. Once external content is added to a channel, it
can be favorited or added to a playlist just like any other content. It
will be shown to other viewers of your channel as Uploaded content, just
as if you had uploaded it yourself.


Publishing your Channel

Changes you make are not immediately visible to your subscribers until
your channel is published. When you publish your channel, all of your
channel and its content are generated into XML files. Because you can
configure what content lists, types and categories you want published
for your channel, XML files will only be generated if they have been
previously marked for ?publication?. As a further safety precaution,
before publication, you are presented with a summary of what is going to
be published and can optionally exclude any of the above from being
published. Once this publication list is confirmed by you, any of these
XML files that have changed and have your permission to be published are
pushed onto the Freenet data-store.


Channel Indexing

TBD - Suggestions welcome

Extra Plugins

YouTube Scrapper Plugin

The YouTube Scrapper Plugin allows you to scrape an existing YouTube
channel and add it to your Freenet channel. This clones any YouTube
account for fast and easy generation of your channel and content.


Browser Plugin

Using a browser plugin, the download status of content will be reflected
by the color of the tab. When a video is ready to play, the tab of the
video will turn green; or in the alternate, activated. As soon as the
tab is activated, the video will begin to play. {Need to investigate
feasibility of this plugin}

Plugin Implementation
The user interface of the plugin will be locally generated from XML
files and templates. This is done so that the plugin can have a rich
user interface without any risk of downloading executable code from
Freenet that could compromise the identity or security of the the user.
These XML files will hold:


      * Channel Profile

      * Channel CSS Customizations

      * Channel Subscription Requests

      * Channel Subscriber Requests

      * Channel Subscriptions *

      * Channel Subscribers *

      * Channel Content Watched *

      * Channel Content Favorites *

      * Channel Content Likes *

      * Channel Playlist Enumeration *

      * Channel Playlist *

      * Channel Content/Products (Uploads)

      * Content Comments

      * Content Comment (like/dislike/spam) Votes



* Uploaded/shared optionally to Freenet based on local user preferences.

As these XML files change, they will be published back out to Freenet,
where channel subscribers will download and cache them, along with any
related content files. These XML files will then be used to build the
web pages locally. This preserves security, since you always know the
source of the code being executed - the plugin.



Let me know what you think...

On Sun, 2011-10-16 at 23:58 +0400, Tanya Pyatigorskaya wrote:
> Hi guys,
> 
> 
> 
> I would like to say hello to all of you after my rather long absence.
> I have been working on the task "filesharing application for freenet"
> due gsoc 2010. Than I had to postpone my Freenet activities due to
> personal circumstances. Now I am back, and I am happy to be able to
> continue my work on my Freenet task. This application allows
> 
> 
> - select files/directories to be shared and tag them for search;
> 
> - search file indexes published by other users (effectively view of
> WoT filtered by filesharing context);
> 
> - manage trust settings for other user identities (using WoT).
> 
> Since I was out of the day-to-day work in the community for quite a
> long period of time, what I need now is to become up to date and to
> join efficient development ASAP. May I ask you to let me know whether
> this task is still interesting for Freenet? Which details of the task
> should I consider to be of most help? Who is working on something
> similar, and whom should I contact to combine our efforts for quicker
> and better results? Certainly I would be grateful for any other
> relative suggestions, advices and considerations. 
> 
> Thank you very much for your time!    
> 
> Best regards,
> Tatyana Pyatigorskaya aka nikotyan
> 
> 
> 
> _______________________________________________
> Devl mailing list
> Devl at freenetproject.org
> http://freenetproject.org/cgi-bin/mailman/listinfo/devl


-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20111122/dc3b5d76/attachment.html>

Reply via email to