Tangram
Run web apps on your desktop
About
Tangram is a new kind of browser. It is designed to organize and run your Web applications. Each tab is persistent and independent. You can set multiple tabs with different accounts for the same application.
Common use cases:
- Stay up to date with your favorite communities; Mastodon, Twitter, ...
- Merge all these chat applications into one; WhatsApp, Messenger, Telegram, ...
- Group your organization tools under one application; EMail, Calendar, ...
- One-stop for multiple sources of documentation or information
Installation
Platform | Package Name/Link | Maintainer |
---|---|---|
Flatpak | re.sonny.Tangram |
Sonny Piers |
Arch Linux (aur) | tangram |
Mark Wagie |
Reporting an issue
Before submitting a compatibility issue with a Website, please try to reproduce it with GNOME Web. If you can, report the issue to WebKitGTK, the Web engine behind Tangram and GNOME Web.
Features
- Setup and manage web applications
- Persistent and independent tabs
- Custom title
- Re-order tabs
- Change tabs position
- Navigation
- Shortcuts
- Smart notifications
- Downloads
- Touchpad/touchscreen gestures
Security
Both Flatpak and non-Flatpak versions of Tangram provide sandboxing for Web applications.
- Flatpak via our restricted permissions
- Non-Flatpak through WebkitGTK Sandboxing (requires WebkitGTK >= 2.26)
In the media
GNU/Linux.ch – Tangram - eine neue Art des Webbrowsers (Review) - 2021-04
Chris Were Digital - Tangram a browser just for web apps share.tube / youtube.com - 2021-02
addictivetips.com - How to run web apps with ease on Linux - 2020-09
ubunlog.com - Tangram, nueva opción basada en GNOME para agrupar nuestras web-apps - 2020-09
edivaldobrito.com.br - Como instalar o navegador Tangram no Linux via Flatpak - 2020-08
linux-magazine.com - Tangram integrates social media services in a single app - 2020-06
linux-community.de - Tangram integriert Social-Media-Dienste und Messenger in eine App - 2020-02
linuxdicasesuporte.blogspot.com - Navegador Tangram no GNU/Linux - 2019-11
diolinux.com.br - Tangram, um app para gerenciar Webapps - 2019-09
Development
Install packages
Ubuntu
sudo apt install npm libglib2.0-dev-bin flatpak-builder git
Arch Linux
sudo pacman -S npm glib2 flatpak-builder git
Fedora
sudo dnf install npm glib2-devel flatpak-builder git
Install dependencies
cd Tangram
git submodule init
git submodule update
npm install
Run
cd Tangram
./run.sh
./run.sh
runs the application in development
mode. Hit <Ctrl><Shift>Q
to restart the application.
- data files are stored in
./var/data/
instead of$XDG_DATA_HOME/Tangram/
- cache files are stored in
./var/cache/
instead ofXDG_CACHE_HOME/Tangram/
To test desktop notifications you can add https://jhmux.codesandbox.io/
.
Test
make test
Meson
meson --reconfigure --prefix $PWD/install build
ninja -C build install
GSETTINGS_SCHEMA_DIR=./install/share/glib-2.0/schemas/ ./install/bin/re.sonny.Tangram
Flatpak
flatpak-builder --user --force-clean --install-deps-from=flathub flatpak re.sonny.Tangram.json
flatpak-builder --run flatpak re.sonny.Tangram.json re.sonny.Tangram
Flatpak sandboxed
flatpak-builder --user --force-clean --repo=repo --install-deps-from=flathub flatpak re.sonny.Tangram.json
flatpak --user remote-add --no-gpg-verify --if-not-exists Tangram repo
flatpak --user install --reinstall --assumeyes Tangram re.sonny.Tangram
Inspect
gsettings set org.gtk.Settings.Debug enable-inspector-keybinding true
GTK_DEBUG=interactive ./run.sh
Release
git tag $VERSION
git push origin $VERSION
# send PR to https://github.com/flathub/re.sonny.Tangram/blob/master/re.sonny.Tangram.json
Credits
Icon by Tobias Bernard
Igalia and contributors for the amazing work on WebKitGTK