selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

friendup logo

Self-host friendup

Hydrogen-4-1.2.8

Web-based operating system and collaboration platform

ReleaseOpen SourceOther
Updated2 years ago
LanguageJavaScript
Setup difficultyAdvanced
MobileResponsive
Stars
357
Ports
6502 (Main Friend Workspace), 3478 (STUN server (UDP/TCP)), 5349 (STUN server (TLS))
Requires
PHP
Install with Build from Source

What is friendup?

Friend OS (FriendUP) is a self-hosted web operating system that runs entirely in the browser, providing a responsive desktop environment with a file manager, terminal, text editor, media player, and collaborative applications. It uses a C-based core (FriendCore) with PHP modules and a JavaScript frontend. The system requires MySQL for data storage and can be extended with Friend Network for peer-to-peer connectivity and Friend Chat for integrated text and video communication. Installation involves building from source on Ubuntu with PHP, MySQL, and various system libraries. The kernel core is MIT licensed, modules are LGPLv3, and the GUI workspace is AGPLv3. The project includes a default admin user (fadmin/securefassword) and supports customization via site.ini. Mobile devices are supported through responsive design and browser installation as a PWA.

Should you self-host friendup?

friendup scores 44/100 on selfhost.directory (how scoring works) and ranks #23 of 30 in Collaboration. It has 357 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is advanced: plan for several services and some ongoing maintenance. It is Other-licensed and written mostly in JavaScript.

Its closest alternative on selfhost.directory is penpot (84/100, 61 785 stars). It scores higher overall, so compare the two before you pick. See friendup vs penpot side by side.

Features

  • Collaborative workspaces
  • Customizable Branding
  • File Manager
  • Invite system
  • OnlyOffice integration
  • Peer-to-Peer NetworkingRequires separate Friend Network installation and Node.js
  • Proxy/reverse proxy support
  • SSL/TLS support
  • Terminal (Prompts)Requires optional SSHy module
  • Text and video chatRequires separate Friend Chat installation
  • User management and admin panel
  • Web-based desktop environment
  • Web push notificationsRequires Composer and optional module

friendup README

How to install friendup

Install friendup with Build from Source

  1. Clone this repository into a folder
  2. Install the following dependencies – below, to install for Ubuntu 20.04:
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update

sudo apt-get install bash libssh2-1-dev libssh-dev libssl-dev libaio-dev mysql-server php7.4-cli php7.4-gd php7.4-imap php7.4-mysql php7.4-curl libmysqlclient-dev build-essential libmatheval-dev libmagic-dev libgd-dev libuv1 rsync valgrind-dbg libxml2-dev php7.4-readline cmake ssh make libsmbclient-dev libwebsockets-dev libsqlite3-dev
  1. Change to the repository folder
cd friendup
  1. Build FriendCore
echo "USE_SSH_THREADS_LIB=0" >> Config
echo "OPENSSL_INTERNAL=1" >> Config
make clean setup
make compile
make install
  1. Create database / access In your Friend folder:
sudo mysql
create user frienduser@localhost identified by "somepassword";
create database frienddb;
use frienddb;
source db/FriendCoreDatabase.sql;
grant all privileges on frienddb.* to frienduser@localhost;
flush privileges;
exit
  1. Configure config file, located in build/cfg/cfg.ini
  2. Once you have configured your cfg.ini file, run FriendCore:
cd build/
./FriendCore

Requires Ubuntu 20.04 or compatible; PHP 7.4; MySQL; build tools

friendup releases & version history

More in File Sharing & Collaboration

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…