Development

From RetroShare
Jump to: navigation, search

Contents

Software Development Projects.

**The following are the current high priority development projects for retroshare.**

Projects Already Underway:

Challenging Projects Looking for Developers:

F2F Broadcasting/Streaming (Live Streaming | Video on Demand )

Design Broadcasting Channels:
Broadcasting Live Content from VLC Outputs, from TV Card, from Webcam, Videofile to RetroShare for

  • Live Channels ( Live Streaming )
  • Video Channels ( Video Streaming | Video on Demand ).

Target: Not specified yet.

Video on Demand / Video Streaming

Because of the spacial locality between friends, a resource consumer service like video streaming could be implemented. Basically, the idea is to browse a video file on a friend's Files and play it on your computer without first downloading the whole of it and then playing it, but, use your friend's RetroShare as a streaming server and your RetroShare as a streaming client (and vice versa when is the case). Similar idea for audio files.

Target: Not specified yet.

In need of improvement/maintenance:

People / Identities

People Dialog:

  • Allow add People as Friend (if GXS ID is PGP associated, needs to be implemented)
  • Follow People (add to Following list or Favorites)

Identities:

  • Second View for Favorites
  • Manage from Context menu (Follow /Unfollow or Add to Favorites/Remove)

Channels

  • Add to generate automatically a Channel's Thumb from a video file.
  • Channel Poster picture.

Voip/ Video Chat Plugin (Improvements / High )

  • Launch an animation for Incoming and Outgoing voice Call
  • Notify Incoming Call/ Video Call via Sound and a CallToaster with a Hangup/Pikup Button
  • Add for Friendslist context menu "Call" functionality
  • Add for Friendslist context menu "Video Call" functionality

Shared Files

  • When Friend Doesn't have Shared Files then doesn't show his Blank Directory in Files.

Private chat

  • Conference , can invite other Friends in a Private Chat
  • Send a recorded voice message
  • Sound notifications
  • Animated Smileys support

Messages

  • Advanced Contacts (Adressbook, example from: Outlook, Thunderbird)
  • verification that the message was received.
  • Archive Messages (save the message as single file for every message or in a seperate folder. rs could scan this if the user want to look into the archive.)

Voting "I like this" and "I dislike this" Feature

The Voting is implemented for Posted Links.

It will be usefull for Gxsforums, gxschannels and Photoshare too.

 1. it can used for vote the thread and forum/channel posts
 2. it can be used for thx to a usefull thread post
 3. it can be used for hide stupid answers when post has too much dislikes
 4. display likes and dislikes

Photos (Photoshare / High)

  • Fix and improve to get working Photos (see Facebook Photos/Instagram for the design/ideas)
  • Add Voting for Photos/Albums (Like)
  • Add Tagging feature to a photo/photos, tag a Friend on a Photo.
  • display published Photos/Albums with thumbnail in News Feed

RS Wiki

As you can see, the current Wiki is a basic framework waiting to be expanded. There are lots of potential improvements... some of the ideas are listed below

Ideas:

  • Formatting: No HTML, lets use Markdown or something similar.,
  • Diffs, lots of edits will lead to complex merges - a robust merge tool is essential,
  • Read Mode... hide all the Edits, and only show the most recently published versions,
  • Easy Duplication - to take over an Abandoned or badly moderated Wiki. Copies All base versions to a new group,
  • WikiLinks. A generic Wiki Cross Linking system. This should be combined with Easy Duplication option,to allow easy replacement of groups if necessary... A good design here is critical to a successful Wiki ecosystem,
  • work out how to include media (photos, audio, video, etc) without embedding in pages, this would leverage the turtle transfer system somehow - maybe like channels.
  • Comments, reviews etc can be incorporated - ideas here are welcome.
  • Any other suggestion???


Wire (Twitter)

  • Following Friends.
  • Adding Person.
  • Search The Wire.
  • Search for friends.
  • Search for hash tags.
  • Search for keywords.
  • Search for Retweets.
  • Search for replies.

UseCases.txt


IM Window

needs redesign, rewrite completely... some improvements which we need have on im Window... look from example here

  • IM
  • Voice call
  • Conference call
  • Video Conferencing
  • Collaboration through Whiteboard documents ( where the participants have freedom to share text, drawing and graphical annotations)
  • Collaboration through PowerPoint/Impress documents ( where the participants can control and see presentations)
  • Polling lists ( where Presenters can organize polls and all participants can vote and see results.)
  • Desktop sharing ( usually by allowing participants to see and collaborate on a Windows screen )


Plugins:

SocialNet plugin

Some ideas & nice to have features:

Profile

  • Basic Information (Birthday, Gender, Intrested in)
  • Contact Information (Website, Email, phone)
  • Places Lived (Current City, Hometown)
  • Categories (Books, Sports, Tv Shows, Movies, Music)
  • Profile Picture
  • Profile Page
  • Background Title Picture (for the Profile Page Header)
  • Fan Page support
  • "Poke" somebody

Wall

Add a wall feature with friends. the idea is similar like Facebook's wall.

  • You or your friends can post to your own wall.
  • Each friend has his own wall.
  • You or your friends can comment each wall posts.
  • You can post or comment on friends walls too.
  • You or your friends can attach pictures or media files to the wall.
  • Friends own Wall posts will be displayed in News Feed
  • Share a post (own Wall, friends wall...)
  • #Hashtags (Hashtags allow you to flag and follow your interests).
  • @Mentions (Want to get someone’s attention? Just @mention them! It’s an easy way to alert one of your contacts to something you think they need to know about.)
  • Like/Love (Button) (Show your appreciation for something you like/love it.


Events

  • Events and tasks with your Friends, Family, Coworkers or Developers
  • Events Page (for Display Own or Invited Events) look example here
  • Create a Event(Dialog) (Name, Detials, Where, When, Privacy..)
  • Invite Friends/Groups to a own or friends Event
  • Notify new Events on News Feed
  • Join to a Event(going,maybe,not going)
  • Share a Event (will be displayed on own Wall & on Friends News Feed)

Video Chat Plugin

  • Video Chat with Friends,Coworkers or Developers
  • Video Messages, send a video greeting to multiple friends/coworkers/developers at once.
  • Video Call recording, create and share instant memories.
  • HD and High Resolution Video, Video calling with spectacular clarity and detail.
  • Audio Conference
  • Video Conference (HD to 1080p)
  • Call Group (group video call)

Calendar and Scheduling(plugin)

  • Implement Calender/Scheduling
  • example look here or here

Files and Folders Synchronize (plugin)

  • File Synchronization: Synchronizes multiple computers. Whenever a file on one is changed, the other computer will be updated.
  • Project Synchronization: Work on group projects. Automatically updates co-workers' computers when you make a change.
  • Sync Files
  • Sync Folders


SoundCloud (plugin)

  • Add your tracks & mixes
  • Player (buildin sound player),
  • Comment,like, tag a soundlcloud post
  • Add to playlist
  • Share a soundpost (it displays a news feed notify, or post on a wall (socialnet plugin))
  • Tracks (list all latest tracks)
  • Playlists (display peoples playlist)
  • Follow People (if followed, notify his latest soundposts)
  • add an interface to filetransfer to retrieve data chunks
  • make a http server which serve files from filetransfer(maybe libmicrohttpd can help us with this)
  • (extended goal: accept range headers and tell filetransfer which part of the file to download first. this would allow to stream a video from the middle of the file.)
  • use html 5 to play the audio file (for the webinterface)


Collaboration with Friends/Coworkers/Developers

  • Support collaborative work between friends/coworkers/developers.


Virtual Networking Device (TUN/TAP) for VPN support (plugin)

 **LOOKING FOR A LEAD DEVELOPER FOR THIS PROJECT**

Retroshare creates secure connections to your peers. For ultimate flexibility, these connections could be accessed as a Virtual Private Network device on your PC. We are looking for a VPN / TUN / TAP expert to run this project, as the existing retroshare developers have no experience in this area.

Target: Not specified yet.


Distributed Encrypted Backups

Started Projects

Completed Projects


RetroShare for Android

When the Android client is ready, some needed features:

  • Private chats
  • Group chats
  • Send photos, videos and audio media messages
  • Share locations
  • Use Android contacts
  • smileys support
  • chat bubbles
Personal tools
Namespaces

Variants
Actions
Navigation
External websites
Wiki
Toolbox