Open source protocol for audio and video content streaming
+
+
+
+## What is FCast?
FCast is an open source protocol that enables wireless streaming of audio and video content between devices, supporting various stream types such as DASH, HLS, and mp4.
@@ -40,4 +56,4 @@ This project is licensed under the MIT License - see the LICENSE.md file for det
## Documentation
-Click [here](https://gitlab.com/futo-org/fcast/-/wikis/Protocol-version-1) to see the protocol documentation.
+Click [here](https://gitlab.futo.org/videostreaming/fcast/-/wikis/Protocol-version-1) to see the protocol documentation.
diff --git a/receivers/electron/README.md b/receivers/electron/README.md
index 95706c5..336093b 100644
--- a/receivers/electron/README.md
+++ b/receivers/electron/README.md
@@ -6,29 +6,31 @@ FCast is a protocol designed for wireless streaming of audio and video content b
The FCast receiver is a working receiver implementation compatible with Linux, Windows and MacOS that supports various stream types such as DASH, HLS and mp4.
-
+
# Protocol specification
-The protocol specification can be found here https://gitlab.com/futo-org/fcast/-/wikis/home
+The protocol specification can be found here https://gitlab.futo.org/videostreaming/fcast/-/wikis/home
-# Senders
+# Receiver application
-# Receivers
-
-There are currently receivers for
-
-
-
-1. Download the latest build for your platform from https://gitlab.com/futo-org/fcast/-/releases or build it yourself by following the build instructions.
+1. Download the latest build for your platform from https://fcast.org/#downloads or build it yourself by following the build instructions.
2. Unzip the archive at your desired location.
3. Run the FCast receiver.
- - **MacOS:** Run the FCastReceiver application
+ - **MacOS:** Run the `FCast Receiver` application
- **Linux:** Run the `fcast-receiver` application
- **Windows:** Run the `fcast-receiver.exe` application
-4. You should now have the receiver running on the background. On desktop it will have a tray icon as such allowing you to close the receiver.
+4. The application will open the main window where you can setup a connection to your sender device.
-
+
+
+The application will continue to run in the system tray when you close the player or main window. You can exit the application or access other menu options from the tray icon.
+
+There are also command line flags to customize application behavior, some of which include:
+* `--no-main-window`: Hide the main window on start
+* `--fullscreen`: Start the main window in fullscreen
+
+Use the `--help` flag to see full list of available flags.
# Connecting to the FCast receiver with the video streaming application
@@ -56,61 +58,38 @@ There are currently receivers for
# How to build
-# Preparing for build
+## Preparing for build
-Run the following commands in the `root` directory.
+A docker file is provided to setup your build environment. From the root of the repository:
+* Build: `docker build -t fcast/receiver-electron-dev:latest receivers/electron/`
+* Run: `docker run --rm -it -w /app/receivers/electron --entrypoint='bash' -v .:/app fcast/receiver-electron-dev:latest`
+
+You can then run the following commands to finish setup.
```
npm install
```
-# Building
+## Development
-Run the following commands in the `root` directory.
+Run the following commands in the `/app/receivers/electron` directory.
+* Build: `npm run build`
+* Run: `npm run start`
-```
-npm run build
-```
+## Packaging
-# Packaging
+Below are the following platforms currently used for packaging:
+* `npm run make -- --platform="darwin" --arch="arm64"`
+* `npm run make -- --platform="darwin" --arch="x64"`
+* `npm run make -- --platform="win32" --arch="x64"`
+* `npm run make -- --platform="linux" --arch="x64"`
+* `npm run make -- --platform="linux" --arch="arm64"`
-## Windows
+Other platforms and architectures supported by [Electron Forge](https://www.electronforge.io/) might work, but are currently untested.
-Run the following commands in the `packaging` directory.
+Packages that will be built from running the above `make` commands:
+* Windows: `.msi` and `.zip`
+* MacOS: `.dmg` and `.zip`
+* Linux: `.deb`, `.rpm` and `.zip`
-```
-sh package.sh win32-x64
-```
-
-## MacOS ARM64
-
-Run the following commands in the `packaging` directory.
-
-```
-sh package-macos.sh darwin-arm64
-```
-
-## MacOS x64
-
-Run the following commands in the `packaging` directory.
-
-```
-sh package-macos.sh darwin-x64
-```
-
-
-## Linux ARM64
-
-Run the following commands in the `packaging` directory.
-
-```
-sh package.sh linux-arm64
-```
-
-## Linux x64
-
-Run the following commands in the `packaging` directory.
-
-```
-sh package.sh linux-x64
-```
+Package artifacts will be located in `/app/receivers/electron/out/make`
diff --git a/receivers/electron/images/Untitled.png b/receivers/electron/images/Untitled.png
deleted file mode 100644
index 7da3078..0000000
Binary files a/receivers/electron/images/Untitled.png and /dev/null differ
diff --git a/receivers/electron/images/Untitled2.png b/receivers/electron/images/Untitled2.png
deleted file mode 100644
index 4f7afd6..0000000
Binary files a/receivers/electron/images/Untitled2.png and /dev/null differ
diff --git a/receivers/electron/images/main-window.png b/receivers/electron/images/main-window.png
new file mode 100644
index 0000000..22a0f51
Binary files /dev/null and b/receivers/electron/images/main-window.png differ
diff --git a/receivers/electron/images/player-window.png b/receivers/electron/images/player-window.png
new file mode 100644
index 0000000..d426da9
Binary files /dev/null and b/receivers/electron/images/player-window.png differ
diff --git a/website/images/ic_banner.svg b/website/images/ic_banner.svg
new file mode 100644
index 0000000..273e5fa
--- /dev/null
+++ b/website/images/ic_banner.svg
@@ -0,0 +1,164 @@
+
diff --git a/website/images/logo.svg b/website/images/logo.svg
index 4ebbfc5..51d1272 100644
--- a/website/images/logo.svg
+++ b/website/images/logo.svg
@@ -1,4 +1,103 @@
-