Freenet alternatives and similar software solutions
Based on the "Custom" category.
Alternatively, view Freenet alternatives based on common mentions on social networks and blogs.
-
Mattermost
Mattermost is an open source platform for secure collaboration across the entire software development lifecycle.. -
Zulip
Zulip server and web application. Open-source team chat that helps teams stay productive and focused. -
Jitsi Meet
Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application. -
Centrifugo
Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever. -
Berty
Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network -
Jitsi Video Bridge
Jitsi Videobridge is a WebRTC compatible video router or SFU that lets build highly scalable video conferencing infrastructure (i.e., up to hundreds of conferences per server). -
Rallly
Rallly is an open-source scheduling and collaboration tool designed to make organizing events and meetings easier. -
Live Helper Chat
Live Helper Chat - live support for your website. Featuring web and mobile apps, Voice & Video & ScreenShare. Supports Telegram, Twilio (whatsapp), Facebook messenger including building a bot. -
RetroShare
RetroShare is a Free and Open Source cross-platform, Friend-2-Friend and secure decentralised communication platform. -
Broid
DISCONTINUED. Broid enables rich conversations on all messaging channels within a single schema integration using W3C standards. -
MiAOU
A chat server with OAuth2 authentication, persistent and searchable history, video and audio, markdown formatting, private and public rooms, stars, votes, embedded games, and many other features -
Wirow video conferencing platform
DISCONTINUED. A full featured self-hosted video web-conferencing platform. -
Matrix Console Web
DISCONTINUED. A web client meant to be a showcase of Matrix capabilities, and reference implementation of the Matrix standard. -
GNUNet
DISCONTINUED. GNUnet is an alternative network stack for building secure, decentralized and privacy-preserving distributed applications. Our goal is to replace the old insecure Internet protocol stack. Starting from an application for secure publication of files, it has grown to include all kinds of basic protocol components and applications towards the creation of a GNU internet. https://git.gnunet.org/ -
Syndie
Syndie is an open source system for operating distributed forums, offering a secure and consistent interface to various anonymous and non-anonymous content networks. -
Mumblecop
Stream audio from youtube and soundcloud, simulate dice rolls, or write your own commands with a simple plugin format.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Freenet or a related project?
Popular Comparisons
README
Freenet
Freenet is a platform for censorship-resistant communication and publishing. It is peer-to-peer software which provides a distributed, encrypted, decentralized datastore. Websites and applications providing things like forums and chat are built on top of it.
Fred stands for Freenet REference Daemon.
Building
We've included the Gradle Wrapper as recommended by the Gradle project. If you trust the version we've committed you can build immediately:
POSIX / Windows PowerShell:
$ ./gradlew jar
Windows cmd:
> gradlew jar
We've [configured it](gradle/wrapper/gradle-wrapper.properties) to verify the checksum
of the archive it downloads from https://services.gradle.org
.
Build with ant
$ mkdir -p lib; cd lib && grep -o CHK.* ../dependencies.properties | xargs -P16 -I {} bash -c 'fcpget -v {} "$(echo {} | sed s,^.*/,,)"'
$ ant -propertyfile build.properties -f build-clean.xml -Dtest.skip=true -Dfindbugs.skip=true
Testing
Run Tests
To run all unit tests, use
./gradlew --parallel test
You can run specifics tests with a test filter similar to the following:
./gradlew --parallel test --tests *M3UFilterTest
TODO: how to run integration tests.
Run your changes as node
To test your version of Freenet, build it with ,./gradlew jar,
stop your node, replace
freenet.jarin your
Freenet directory with
build/libs/freenet.jar`, and start your node again.
To override values set in build.gradle
put them into the file
gradle.properties
in the format variable = value
. For instance:
org.gradle.parallel = true
org.gradle.daemon = true
org.gradle.jvmargs=-Xms256m -Xmx1024m
org.gradle.configureondemand=true
tasks.withType(Test) {
maxParallelForks = Runtime.runtime.availableProcessors()
}
Contributing
See our [contributor guidelines](CONTRIBUTING.md).
Add a new dependency
All dependencies must be available via Freenet, so it must be added to dependencies.properties.
- Add it to build.gradle dependencies and dependencyVerification.
Run
./gradlew jar --debug
to find files that fail the verification. - fcpupload {dependencyfile.jar}
- add it to all installers: wininstaller-innosetup, java_installer, mactray. Search for
jna-platform
to find out where to put and register the dependency. - add dependency and the CHK to
dependencies.properties
. - update
scripts/update.sh
andres/wrapper.conf
andres/unix/run.sh
in java_installer to include the dependency.
With the example of pebble: The filename is just the jarfile. The key is what fcpupload returns. Size is wc -c filename.jar
, sha256 is sha256sum filename.jar
, order is where it should be put in wrapper.conf
in wrapper.java.classpath.
pebble.version=3.1.5
pebble.filename=pebble-3.1.5.jar
pebble.filename-regex=pebble-*.jar
pebble.key=CHK@y~p8HMUVXmVgfSnrmUyu2UNXMO9uMDHS5nwo2YuOKvw,yzwLFP0GXa8RjwRpicQCPFKNggDXLkTQKH8nISe0qUY,AAMC--8/pebble-3.1.5.jar
pebble.size=318169
pebble.sha256=85e77f9fd64c0a1f85569db8f95c1fb8e6ef8b296f4d6206440dc6306140c1a1
pebble.type=CLASSPATH
pebble.order=4
Licensing
Freenet is under the GPL, version 2 or later - see LICENSE.Freenet. We use some code under the Apache license version 2 (mostly apache commons stuff), and some modified BSD code (Mantissa). All of which is compatible with the GPL, although arguably ASL2 is only compatible with GPL3. Some plugins are GPL3.
*Note that all licence references and agreements mentioned in the Freenet README section above
are relevant to that project's source code only.