MCPcopy Index your code
hub / github.com/Satellite-im/Uplink

github.com/Satellite-im/Uplink @1.0.5

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0.5 ↗ · + Follow
3,913 symbols 11,605 edges 873 files 157 documented · 4% updated 2y ago1.0.5 · 2024-05-23★ 22320 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Uplink

Privacy First, Modular, P2P messaging client built atop Warp.

Uplink is written in pure Rust with a UI in Dioxus (which is also written in Rust). It was developed as a new foundation for implementing Warp features in a universal application.

The goal should be to build a hyper-customizable application that can run anywhere and support extensions.

Uplink UI


Pre-Compiled Development

For rapid inspection of our deployed binaries, you can open the settings once signed into Uplink, then navigate to About and click the version number 10 times, enabling a Developer section in the settings. From here, you can enable experimental features and helpful dev tools.

Quickstart

To get running fast, ensure you have Rust installed.

Standard Run:

cargo run --bin uplink

Rapid Release Testing: This version will run close to release but without recompiling crates every time.

cargo run --bin uplink --profile=rapid

Dependency List

macOS M1+ | Dep | Install Command | |------|------------------------------------------------------------------| | Build Tools| xcode-select --install | | Homebrew | /bin/bash -c "\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | | Rust | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh | | cmake | brew install cmake | | ffmpeg | brew install ffmpeg | | audio opus | brew install opus |

You can also run macos-install_dependencies.sh to install all of the above in bulk.

Windows 10+ | Dep | Install Command | |------|------------------------------------------------------------------| | Rust | Installation Guide | | ffmpeg | Installation Guide |

Ubuntu WSL (Maybe also Ubuntu + Debian) | Dep | Install Command | |------|------------------------------------------------------------------| | Rust | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh | | Build Essentials | sudo apt install build-essential | | pkg-config | sudo apt-get install pkg-config | | alsa-sys | sudo apt install librust-alsa-sys-dev | | libgtk-dev | sudo apt-get install libgtk-3-dev | | libsoup-dev | sudo apt install libsoup-3.0-dev | | Tauri Deps | sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev | | ffmpeg| sudo apt-get install ffmpeg | | libopus-dev| sudo apt-get install libopus-dev | | libxdo-dev| sudo apt install libxdo-dev |

Fedora 38 | Dep | Install Command | |------|------------------------------------------------------------------| | Rust | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \| sh | | Build Essentials | sudo dnf groupinstall "Development Tools" "Development Libraries" | | pkg-config | sudo dnf install pkg-config | | alsa libs & headers | sudo dnf install alsa-lib-devel | | libgtk-dev | sudo dnf install gtk3-devel | | libsoup-dev | sudo dnf install libsoup3-devel | | Tauri Deps | sudo dnf install webkit2gtk4.1-devel openssl-devel curl wget librsvg2-devel libindicator-devel | | ffmpeg| sudo dnf install ffmpeg | | libopus-dev| sudo dnf install opus-devel | | libxdo-dev| sudo dnf install libxdo-devel |

Contributing

All contributions are welcome! Please keep in mind we're still a relatively small team, and any work done to ensure contributions don't cause bugs or issues in the application is much appreciated.

Guidelines for contributing are located in the contributing_process.md.

Contributors

GitHub Contributors Image

Extension points exported contracts — how you extend this code

Extension (Interface)
This must be implemented by an extension [3 implementers]
extensions/src/lib.rs
IconShape (Interface)
This trait is used to abstract the icon shape so you can use shapes from the [`outline`] or [`solid`] modules for any pr
icons/src/lib.rs

Core symbols most depended-on inside this repo

match
called by 877
ui/extra/assets/scripts/editor.js
clone
called by 499
common/src/state/mod.rs
replace
called by 478
ui/extra/assets/scripts/editor.js
next
called by 475
ui/extra/assets/scripts/editor.js
map
called by 364
ui/extra/assets/scripts/editor.js
eat
called by 364
ui/extra/assets/scripts/editor.js
read
called by 310
ui/extra/assets/scripts/editor.js
eatWhile
called by 283
ui/extra/assets/scripts/editor.js

Shape

Method 1,647
Function 1,604
Class 580
Enum 80
Interface 2

Languages

TypeScript69%
Rust31%

Modules by API surface

ui/extra/assets/scripts/editor.js2,538 symbols
common/src/state/mod.rs119 symbols
common/src/state/ui.rs54 symbols
kit/src/components/message/mod.rs35 symbols
common/src/state/call.rs28 symbols
ui/src/layouts/chats/data/chat_data/active_chat/mod.rs25 symbols
ui/src/logger/mod.rs24 symbols
common/src/state/data_transfer.rs23 symbols
ui/src/lib.rs21 symbols
ui/src/layouts/chats/data/chat_data/mod.rs21 symbols
ui/extra/assets/scripts/prism.js18 symbols
kit/src/elements/input/mod.rs18 symbols

For agents

$ claude mcp add Uplink \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact