Skip to content

Software Paradigms group project GWU. Elixir based audio streaming and download sharing client.

Notifications You must be signed in to change notification settings

biyasbasak/ElixShare-Client

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 

Repository files navigation

ElixShare

Description

Peer Audio Sharing is a desktop application in Elixir used to share audio files peer to peer instead of downloading it from main server. When a user wants an audio file, he/she searches for it. This application will check whether that file is availabe on any peer's application. If the file is available, it will download it from peer. Otherwise it will download it from main server. Peer Sharing reduces the traffic between client-server communication.

Technologies Used

  • Language: Elixir
  • Client-side: Json, mint, libcluster, CSV
  • Database: Sqlite3
  • Library for Backend: SqliteX, Plug, Json, Poison

Prerequisits

To run this application, it is necessary to install Elixir on the desktop. You can download Elixir here: https://elixir-lang.org/install.html

How to use?

1213_LI

  • Step 2: In any terminal, get to the folder in which the repository is downloaded.
  • Step 3: Change Directory to fs.
  • Step 4: Type iex --sname yourname@localhost --cookie token -S mix (yourname is any name you want to type)
  • Step 5: Type UI.start
  • Step 6: Enter the command download
  • Step 7: Enter the name of artist or author of the audio you are looking for.
  • Step 8: Enter the title of song or book you are looking for.
  • If the file is not present on local server, it will display message "File not found on local server" and download it directly from the main server and will display message "Downloaded from server".

1214

  • If the file is present with the peer (on local network), it will be downloaded from the peer.

About

Software Paradigms group project GWU. Elixir based audio streaming and download sharing client.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Elixir 100.0%