RetroShare
retroshare.ccSecure group communications, with the option to be used over Tor or I2P. Fast intuitive group and 1-to-1 chats with text and rich media using decentralized chat rooms, with a mail feature for delivering messages to offline contacts. A channels feature makes it possible for members of different teams to stay up-to-date with each other, and to share files. Also includes built-in forums, link aggregations, file sharing and voice and video calling. RetroShare is a bit more complex to use than some alternatives, and the UI is quite retro, so may not be appropriate for a non-technical team.
- Homepage: retroshare.cc
- GitHub: github.com/RetroShare/RetroShare
- Web info: web-check.xyz/check/retroshare.cc
RetroShare Source Code
Author
Description
RetroShare is a Free and Open Source cross-platform, Friend-2-Friend and secure decentralised communication platform.
Homepage
https://retroshare.cc/License
NOASSERTION
Created
31 Jul 15
Last Updated
27 Jun 26
Latest version
Primary Language
C++
Size
135,408 KB
Stars
1,989
Forks
321
Watchers
1,989
Language Usage
Star History
Top Contributors
-
@csoler (5130)
-
@defnax (1087)
-
@G10h4ck (1086)
-
@PhenomRetroShare (718)
-
@thunder2 (360)
-
@jolavillette (227)
-
@hunbernd (143)
-
@sehraf (141)
-
@mr-alice (136)
-
@RetroPooh (104)
-
@electron128 (92)
-
@zeners (77)
-
@kdebiec (67)
-
@AsamK (57)
-
@felisucoibi (54)
-
@drbob (42)
-
@chelovechishko (37)
-
@PYRET1C (31)
-
@dbear496 (27)
-
@JohannesKleine (22)
-
@zapek (18)
-
@mestaritonttu (18)
-
@samuel-asleep (14)
-
@natinew77-creator (9)
-
@SaurabhCodesAI (9)
-
@cavebeat (9)
-
@Passw (8)
-
@b1rdG (7)
-
@realityfabric (7)
-
@ericthefish (7)
-
@chozabu (7)
-
@ppetr (6)
-
@heini (4)
-
@Copilot (3)
-
@merkeld (3)
-
@altcoinpirate (3)
-
@myfingerhurt (3)
-
@jpascualsana (2)
-
@fkobi (2)
-
@dartraiden (2)
-
@Ppjet6 (2)
-
@Kcchouette (2)
-
@Gottox (2)
-
@rex4539 (2)
-
@crhode (2)
-
@alvaro-salort (1)
-
@diversys (1)
-
@grennvyper (1)
-
@Steve-V (1)
-
@vladpirlog (1)
-
@amir28 (1)
-
@anontahoe (1)
-
@Hopetech (1)
-
@cicicmanu (1)
-
@pztrn (1)
-
@redDwarf03 (1)
-
@retrop00h (1)
-
@shibe2 (1)
-
@sirjenster (1)
-
@Piraty (1)
-
@rottencandy (1)
-
@marcobarbosa16 (1)
-
@keisentraut (1)
-
@hasufell (1)
-
@Josep-San (1)
-
@topcat (1)
-
@D4ndellion (1)
-
@cristeab (1)
-
@deferredreward (1)
-
@BabushkaRetroShare (1)
-
@aral (1)
-
@comradekingu (1)
Recent Commits
-
csoler (25 Jun 26)
Merge pull request #3245 from jolavillette/fix/qt6-qdatetime-settime_t Qt6: replace removed QDateTime::setTime_t() with setSecsSinceEpoch()
-
csoler (24 Jun 26)
Merge pull request #3241 from jolavillette/fix/rsgraphwidget-area-fill fix(gui): RSGraphWidget area fill — close polygon on a flat baseline
-
csoler (23 Jun 26)
Merge pull request #3231 from jolavillette/fix/macos-camera-mic-permissions fix(macos): add camera & microphone usage descriptions to Info.plist
-
csoler (22 Jun 26)
Merge pull request #3240 from csoler/v0.6-FeedItem2 Add a TLS attempt item to display connections without certificates in a separate more appropriate item.
-
jolavillette (20 Jun 26)
fix(gui): replace QDateTime::setTime_t with setSecsSinceEpoch for Qt6 QDateTime::setTime_t() was deprecated in Qt 5.8 and removed in Qt6. setSecsSinceEpoch() exists since Qt 5.8 so the GUI keeps building against both Qt5 and Qt6. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
jolavillette (06 Jun 26)
fix(macos): add camera & microphone usage descriptions to Info.plist macOS 10.14+ terminates the app with SIGABRT when it accesses the camera or microphone without the matching usage-description keys in the bundle's Info.plist. Any VOIP audio/video call therefore crashes on macOS as soon as the capture device is opened (AVCaptureDeviceInput via QVideoInputDevice::start()). Add NSCameraUsageDescription and NSMicrophoneUsageDescription so the system shows the standard permission prompt instead of aborting the process. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
csoler (19 Jun 26)
updated CMakeLists to TLSItem
-
jolavillette (18 Jun 26)
fix(gui): RSGraphWidget area fill — close polygon on a flat baseline The PLAIN (area) paint style closed the fill polygon by prepending only the bottom-right corner, so the polygon's closing edge ran from the bottom-right corner straight to the leftmost data point. Whenever that leftmost point was high, this drew a spurious diagonal across the whole graph, with the real curve clipped above and/or below it. Close the area along a flat baseline instead: add a baseline point under the first (leftmost) and last (rightmost) data points, guarded on a non-empty set. This affects every area-style RSGraph, but it is most visible in the VOIP plugin's config-panel "Required bandwidth" graph: the value swings widely (x264 variable bitrate) so the leftmost point is often high, making the diagonal appear intermittently there. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
csoler (17 Jun 26)
fixed file header
-
csoler (17 Jun 26)
removed spurious yml file from 3213
-
csoler (17 Jun 26)
merging with upstream/master
-
csoler (17 Jun 26)
added TlsItem files
-
csoler (17 Jun 26)
fixed a few bugs in TlsAttempt feed item
-
Gioacchino Mazzurco (17 Jun 26)
Merge pull request #3235 from defnax/update-workflows update workflows
-
Gioacchino Mazzurco (17 Jun 26)
Merge pull request #3239 from jolavillette/fix/posted-metatype-rspostedpost Fix missing Q_DECLARE_METATYPE include in Posted board widgets
-
jolavillette (17 Jun 26)
Fix missing Q_DECLARE_METATYPE include in Posted board widgets Commit 724db9ae6 ("Fix duplicated MOC declaration") consolidated Q_DECLARE_METATYPE(RsPostedPost) into PostedItem.h and removed the in-file declarations that PostedListWidgetWithModel.cpp and PostedPostsModel.cpp previously carried. But both translation units use QVariant with RsPostedPost (value<>() / fromValue()) and neither includes PostedItem.h, directly or transitively, so the build broke with: error: static assertion failed: Type is not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's meta-object system Add the missing #include "PostedItem.h" to both files so the metatype declaration is visible in those TUs. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
Gioacchino Mazzurco (16 Jun 26)
Fix and upgrade GitlabCI
-
Gioacchino Mazzurco (16 Jun 26)
Fix WEBUI dependent option value in gui and service
-
csoler (16 Jun 26)
added new feed item for TLS connection attempts
-
Gioacchino Mazzurco (16 Jun 26)
Fix duplicated MOC declaration
-
Gioacchino Mazzurco (16 Jun 26)
Merge pull request #3237 from jolavillette/qt6-cmake-compat Qt6 compatibility for the CMake build (version-agnostic Qt5/Qt6) There are a few minor issue to fix, but leave those for after we merge Qt6 support, and merge this AS IS before is too late
-
Gioacchino Mazzurco (16 Jun 26)
Merge pull request #3229 from jolavillette/CMakeMigration-Modular-CrossPlatform Port to CMake modular and cross platform There are a few minor issue to fix, but leave those for after we merge Qt6 support, and merge this AS IS before is too late
-
csoler (16 Jun 26)
Merge pull request #3196 from defnax/improve.emoticons [Emoticons] Added search & remember recent smileys
-
defnax (15 Jun 26)
added sizepolicy
-
csoler (15 Jun 26)
Merge pull request #3202 from defnax/boards-picture-navigation [Boards] Added navigation for boards picture viewer
-
jolavillette (15 Jun 26)
refactor(cmake): rename "monorepo" -> super-project terminology The root build is a modular super-project: libretroshare, retroshare-gui, retroshare-service, retroshare-friendserver and plugins are each a standalone CMake project that the top-level CMakeLists.txt only aggregates (and they live in separate git repos pulled as submodules). Rename project(retroshare-monorepo) -> project(retroshare-superproject) and reword the CI header comments. Purely cosmetic: the old name was referenced nowhere. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
jolavillette (15 Jun 26)
ci(cmake): add Windows and macOS Qt6 CMake build workflows Qt6 counterparts of windows-cmake.yml and macos-cmake.yml: build the tree against Qt6 on UCRT64 (qt6-* incl. qt6-5compat) and macOS (Homebrew 'qt'). Both keep plugins OFF since VOIP/FeedReader are not yet Qt6-ported. Completes the Qt6 CMake CI matrix (Ubuntu already green). Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
jolavillette (15 Jun 26)
fix(gui): guard GXS-id Q_DECLARE_METATYPE for Qt5 only (Qt6 AUTOMOC) Under Qt6 + CMake the build failed compiling mocs_compilation.cpp with 'specialization of QMetaTypeId<...> after instantiation' for RsGxsId, RsGxsGroupId and RsGxsMessageId. CMake AUTOMOC concatenates every moc_*.cpp into a single translation unit; in Qt6 these complete types get their QMetaTypeId implicitly instantiated by one moc section, so the explicit Q_DECLARE_METATYPE in a later section becomes an illegal re-specialization. qmake compiles each moc separately and never hits this. Qt6 auto-registers complete types with the metatype system, so the declaration is redundant there; guard it to Qt5 only. No behavior change on Qt5; QVariant and queued connections keep working on Qt6 via auto-registration. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
jolavillette (15 Jun 26)
ci(cmake): add Ubuntu Qt6 CMake build workflow Qt6 counterpart of ubuntu-cmake.yml: builds the tree against Qt6 on ubuntu-24.04 to exercise the version-agnostic Qt detection. Plugins kept OFF since VOIP (Qt5 QtMultimedia API) and FeedReader (Qt5-hardcoded CMake) are not yet ported. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
-
jolavillette (15 Jun 26)
build(cmake): make retroshare-gui Qt detection version-agnostic (Qt5/Qt6) Replace the hardcoded find_package(Qt5 ...) / Qt5:: links with the standard QT NAMES Qt6 Qt5 pattern driven by ${QT_VERSION_MAJOR}, so the same tree builds against both Qt5 and Qt6. On Qt6 add Core5Compat (for QRegExp et al.) and skip QtX11Extras (idle_platform.cpp already uses QNativeInterface there; X11/Xss are linked directly). Drop the dead 'if(NOT Qt6_FOUND) qt5_wrap_ui' double-wrap and keep a single versionless qt_wrap_ui call. The C++ sources are already Qt6-guarded upstream; this only wires Qt6 into the CMake build. VOIP/FeedReader plugins are out of scope (still Qt5-only). Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
RetroShare Security
RetroShare Website
Website
Retroshare
Redirects
Does not redirect
Security Checks
1 security checks failed (64 passed)
- Top-Level Domain Highly Abused
Server Details
- IP Address 185.199.108.153
- Hostname cdn-185-199-108-153.github.com
- Location California, Pennsylvania, United States of America, NA
- ISP GitHub Inc.
- ASN AS54113
Associated Countries
-
FR -
US
Safety Score
Website marked as risky
70%
Blacklist Check
retroshare.cc was found on 0 blacklists
- AntiSocial Blacklist
- Artists Against 419
- Badbitcoin
- Bambenek Consulting
- CERT Polska
- CoinBlockerLists
- CRDF
- CryptoScamDB
- EtherAddressLookup
- EtherScamDB
- Fake Website Buster
- MetaMask EthPhishing
- NABP Not Recommended Sites
- OpenPhish
- PetScams
- PhishFeed
- PhishFort
- Phishing.Database
- PhishStats
- PhishTank
- Phishunt
- RPiList Not Serious
- Scam.Directory
- SecureReload Phishing List
- Spam404
- StopGunScams
- Suspicious Hosting IP
- ThreatFox
- ThreatLog
- TweetFeed
- URLhaus
- ViriBack C2 Tracker
Website Preview
RetroShare Reviews
More Team Collaboration
-
Privacy-focused messenger using the Matrix protocol. The Element client allows for group chat rooms, media sharing voice and video group calls.
-
An IRC-based solution is another option, being decentralized there is no point of failure, and it's easy to self-host. However it's important to keep security in mind while configuring your IRC instance and ensure that channels are properly encrypted - IRC tends to be better for open communications. There's a variety of clients to choose from - popular options include: The Longe (Web-based), HexChat (Linux), Pidgin (Linux), WeeChat (Linux, terminal-based), IceChat (Windows), XChat Aqua (MacOS), Palaver (iOS) and Revolution (Android).
-
Mattermost has an open source edition, which can be self-hosted. It makes a good Slack alternative, with native desktop, mobile and web apps and a wide variety of integrations.
-
Easy-to-deploy, self-hosted team collaboration platform with stable, feature-rich cross-platform client apps. The UI is fast, good looking and intuitive, so very little technical experience is needed for users of the platform. Rocket.Chat's feature set is similar to Slack's, making it a good replacement for any team looking to have greater control over their data.
-
Open source team chat organized around topic-based threading, which keeps busy conversations easier to follow than channel-only tools. Can be self-hosted, or used as a paid cloud service. The threading model takes some getting used to.
About the Data: RetroShare
API
You can access RetroShare's data programmatically via our API. Simply make a GET request to:
https://api.awesome-privacy.xyz/v1/services/retroshare The REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.
Share RetroShare
Help your friends compare Team Collaboration, and pick
privacy-respecting software and services.
Share RetroShare and Awesome Privacy with your network!