Skip to content
This repository was archived by the owner on Sep 5, 2025. It is now read-only.
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
177 commits
Select commit Hold shift + click to select a range
9fab497
Added a comment (I know a lot of work)
Unbreathable Jan 16, 2025
dde5a91
Removed unneeded code
Unbreathable Jan 17, 2025
efafd4d
Removed more unneeded stuff
Unbreathable Jan 17, 2025
1611e98
First part of the new architecture
Unbreathable Jan 19, 2025
24d9b20
First attempt at making Spaces signals powered
Unbreathable Jan 19, 2025
75f186b
Ported Warp to the new architecture
Unbreathable Jan 20, 2025
2dca1e4
Fixed errors in services
Unbreathable Jan 21, 2025
2fb80d1
Space Signals rewrite complete
Unbreathable Jan 22, 2025
ede202c
Fixed a bug where Tabletop would send errors when joining a space
Unbreathable Jan 22, 2025
1e9fd8f
Updated changelog
Unbreathable Jan 22, 2025
51f93ba
Fixed a ton of silly bugs
Unbreathable Jan 22, 2025
68a088f
Merge pull request #47 from Liphium/feat-space-signals
Unbreathable Jan 22, 2025
039e689
Worked on a first draft for the connection
Unbreathable Jan 23, 2025
10bc220
A little more
Unbreathable Jan 23, 2025
e3ed01f
Some small fixes for Tabletop
Unbreathable Jan 23, 2025
3a4d78c
Draft of a first connection implementation
Unbreathable Jan 23, 2025
41a05a0
Connection works at least
Unbreathable Jan 24, 2025
f0465d3
First steps for tracks
Unbreathable Jan 25, 2025
50dac21
Some basic track management
Unbreathable Jan 28, 2025
7f03cd3
Video preview
Unbreathable Jan 29, 2025
83fdff1
Fixed a navigation helper method
Unbreathable Jan 30, 2025
4439515
Fix something not being in a batch
Unbreathable Jan 31, 2025
9805ea3
macos
Unbreathable Feb 5, 2025
3ef1e44
Start on media constraints
Unbreathable Feb 5, 2025
2c2050c
More WebRTC fixes
Unbreathable Feb 6, 2025
890f104
WebRTC tracks work finally
Unbreathable Feb 7, 2025
b2b74e5
Added the space grid renderer
Unbreathable Feb 9, 2025
2d510f0
Removed unneeded stuff from before
Unbreathable Feb 9, 2025
9a0cb3e
Flutter generated stuff
Unbreathable Feb 9, 2025
a8de774
Conversation vault sync (untested)
Unbreathable Mar 3, 2025
b5bfda5
Remove unused imports
Unbreathable Mar 3, 2025
30cf9bb
New flutter version
Unbreathable Mar 3, 2025
60e5a03
Finished library and conversation vault sync (untested)
Unbreathable Mar 3, 2025
0c54970
New database schema works now
Unbreathable Mar 3, 2025
559d50b
Start work on new friend vault sync
Unbreathable Mar 4, 2025
50ff490
Progress on friend request migration
Unbreathable Mar 5, 2025
82e48c2
Rework of friend requests finished (untested)
Unbreathable Mar 5, 2025
951c84b
Added vault sync to changelog
Unbreathable Mar 5, 2025
c862cff
New versioning system to get rid of some code
Unbreathable Mar 5, 2025
79da842
Removed unused import
Unbreathable Mar 5, 2025
4e978ed
Fixed vault sync
Unbreathable Mar 5, 2025
a74f7f6
New vault sync finally works
Unbreathable Mar 5, 2025
ee6fdd3
Fixed all problems with vault sync
Unbreathable Mar 6, 2025
378541a
Friends vault should only be touched by services
Unbreathable Mar 6, 2025
6ab8c58
Merge pull request #49 from Liphium/feat-new-vault-sync
Unbreathable Mar 6, 2025
af8c6f3
Started work on a new (not broken) text renderer
Unbreathable Mar 6, 2025
53eeb24
macOS new stuff
Unbreathable Mar 7, 2025
f480c39
New text formatter hopefully done
Unbreathable Mar 7, 2025
018acca
Added more comments for clarity
Unbreathable Mar 7, 2025
c8b6d94
Fix comment
Unbreathable Mar 7, 2025
f3eb256
Some fixes, but also regressions xd
Unbreathable Mar 7, 2025
b2540c8
New message formatter (not yet tested)
Unbreathable Mar 8, 2025
3d2fcbe
Finished the new message formatter
Unbreathable Mar 9, 2025
e92c6cb
Next text formatter finished
Unbreathable Mar 9, 2025
e2973df
Conversations: All signals conversation & members
Unbreathable Mar 9, 2025
ebf8ff6
Messages: Converted message controller to signals
Unbreathable Mar 9, 2025
345771c
First full signals build (without attachments for now)
Unbreathable Mar 11, 2025
afea1af
More progress on the rewrite
Unbreathable Mar 11, 2025
690a099
Code cleanup for stuff from yesterday
Unbreathable Mar 12, 2025
448474a
Setting controller signals
Unbreathable Mar 12, 2025
44aef2d
Signals rewrite finished, but not tested yet
Unbreathable Mar 12, 2025
aba87cd
No more GetX state now
Unbreathable Mar 12, 2025
d02c074
Everything now works with Signals (not tested)
Unbreathable Mar 13, 2025
bbdf46e
Fixed a few bugs with Signals
Unbreathable Mar 13, 2025
89b9c9c
Fixed a lot of bugs
Unbreathable Mar 14, 2025
460f368
Fixed the library
Unbreathable Mar 14, 2025
67730c4
Merge pull request #50 from Liphium/feat-all-signals
Unbreathable Mar 14, 2025
c7c8c2d
Merge branch 'feat-space-video-audio' into dev
Unbreathable Mar 14, 2025
7b29cb1
Merge pull request #51 from Liphium/dev
Unbreathable Mar 14, 2025
7bc5795
Fixed for new dev branch
Unbreathable Mar 14, 2025
da7e630
Updates
Unbreathable Mar 14, 2025
9dbdf20
Added rust
Unbreathable Mar 14, 2025
83fdba7
Studio: Added Trickle Ice Support
Unbreathable Mar 15, 2025
7649519
Studio & Lightwire: First implementation
Unbreathable Mar 16, 2025
bdb4619
Start on audio settings
Unbreathable Mar 17, 2025
cb62b70
Microphone selector
Unbreathable Mar 17, 2025
43ef2a6
Studio: Audio settings & first Rust bindings
Unbreathable Mar 17, 2025
fa789e4
Lightwire: Add voice activity detection
Unbreathable Mar 18, 2025
04322db
Audio settings: Added talking preview
Unbreathable Mar 18, 2025
294effc
Spaces: Automatic Studio connection
Unbreathable Mar 19, 2025
0f1b2fb
Studio: Render member list
Unbreathable Mar 19, 2025
8d15ae4
Update README.md
Unbreathable Mar 20, 2025
9862665
Studio: Member list progress
Unbreathable Mar 20, 2025
abff7a4
Studio: Muted & deafened state
Unbreathable Mar 21, 2025
922ce67
Studio: Handle mute & audio + buttons
Unbreathable Mar 21, 2025
39e3522
Lightwire: Decode packets & voice chat works
Unbreathable Mar 21, 2025
50ec74e
Studio: Better handle talking states
Unbreathable Mar 21, 2025
3a4af32
Lightwire: Deafen implementation + Talking state fix
Unbreathable Mar 22, 2025
dc46e5b
Lightwire: Fixes & improvements
Unbreathable Mar 22, 2025
1a93f70
Builds on macOS (somehow)
Unbreathable Apr 1, 2025
2c86aea
Input & output device selection (untested)
Unbreathable Apr 9, 2025
dde9255
New Dart Formatter + Fixes in Lightwire
Unbreathable Apr 11, 2025
b464e80
Studio: Added right click to change device
Unbreathable Apr 11, 2025
e46177f
Studio: Add turn servers received from the server
Unbreathable Apr 12, 2025
d50b249
Merge pull request #52 from Liphium/feat-space-video-audio
Unbreathable Apr 12, 2025
b31073d
New formatter on generated code
Unbreathable Apr 12, 2025
3fb392a
Chat: Fix error in the Space embed
Unbreathable Apr 12, 2025
2874024
Chat: Add editing conversation title
Unbreathable Apr 12, 2025
850fa1e
Update changelog
Unbreathable Apr 12, 2025
a88563b
Chat: Better right sidebar, still needs fixing
Unbreathable Apr 13, 2025
66abe75
Chat: Fixed the right sidebar and search
Unbreathable Apr 13, 2025
d4f8faf
New formatter settings
Unbreathable Apr 14, 2025
979faee
Chat: New create menu
Unbreathable Apr 14, 2025
75f8078
Chat: Preparation for squares + dot adjustment
Unbreathable Apr 14, 2025
631a4c1
Settings: Standardized the amount of dots
Unbreathable Apr 15, 2025
2e801ca
Chat: Added window for creating squares
Unbreathable Apr 16, 2025
8b31f75
Chat: Creation and first UI for squares
Unbreathable Apr 16, 2025
5cd0e56
Chat: Quality of life + extra support for messages
Unbreathable Apr 17, 2025
a78eede
Chat: Under the hood preparation for Squares
Unbreathable Apr 17, 2025
6ea597c
Squares: Topic creation and limit of 5
Unbreathable Apr 19, 2025
56efc3e
Squares: Dedicated expansion button
Unbreathable Apr 19, 2025
bbe3adc
Squares: Proper topic design
Unbreathable Apr 20, 2025
50b7072
Chat: Remove unnessecary fonts + fixed message duplication bug
Unbreathable Apr 20, 2025
cf38098
Chat: Start on implementation using ChatList
Unbreathable Apr 21, 2025
6ac801f
Chat: Fixes for the message list
Unbreathable Apr 21, 2025
4caeb87
macOS support
Unbreathable Apr 22, 2025
472de24
Chat: Attempted to fix profile pictures
Unbreathable Apr 22, 2025
458d025
Chat: Reworked sidebar sorting
Unbreathable Apr 22, 2025
7fb3fe4
Chat: Load testing start
Unbreathable Apr 23, 2025
b995317
Chat: More accurate message sync
Unbreathable Apr 23, 2025
c3e1c0d
Chat: Support for new message reads
Unbreathable Apr 23, 2025
5dfc226
Chat: Start on new reads
Unbreathable Apr 23, 2025
1531c47
Chat: Notifications fixed, except for squares?
Unbreathable Apr 24, 2025
caa126f
Chat: Bitrate in the audio settings
Unbreathable Apr 24, 2025
b5fc1cd
Chat: Attempt to fix chat view
Unbreathable Apr 24, 2025
7a58c4a
Chat: Shitty solution to the notfiications
Unbreathable Apr 24, 2025
1ddfb06
Chat: Better notification count
Unbreathable Apr 24, 2025
6019903
Chat: Notifications finished
Unbreathable Apr 24, 2025
c9b219b
Chat: Design changes & mockup for square channels
Unbreathable Apr 24, 2025
ec0f25f
Chat: Better space preview
Unbreathable Apr 25, 2025
c7d6a2e
Chat: Fix the sidebar sometimes rendering conversations weirdly
Unbreathable Apr 26, 2025
fbef889
Chat: Shared spaces, first implementation
Unbreathable Apr 26, 2025
222c86b
Chat: Pinned shared spaces start
Unbreathable Apr 27, 2025
846b22d
Squares: Shared space pinning and ordering
Unbreathable Apr 27, 2025
db09779
Chat: Shared spaces complete
Unbreathable Apr 27, 2025
c18c333
Chat: Fixed not being able to join from non-pinned shared spaces
Unbreathable Apr 29, 2025
08cfeb0
Squares: Better UX with renaming & dragging
Unbreathable Apr 29, 2025
173d372
Squares: Added re-ordering topics
Unbreathable Apr 30, 2025
b529660
Chat: Fix shared spaces edit dialog
Unbreathable Apr 30, 2025
dd1ba2f
Update github actions
Unbreathable Apr 30, 2025
2685285
Fix windows action
Unbreathable Apr 30, 2025
4c8edfa
Chat: Topic deletion & editing
Unbreathable Apr 30, 2025
2975916
Merge pull request #53 from Liphium/dev
Unbreathable Apr 30, 2025
081bdd8
Fixed linux build
Unbreathable Apr 30, 2025
da296ec
Add libsecret for linux action
Unbreathable Apr 30, 2025
b86c4f9
Wrong libsecret
Unbreathable Apr 30, 2025
8c2776e
Chat: Final changes for next beta
Unbreathable Apr 30, 2025
7357314
Merge pull request #54 from Liphium/dev
Unbreathable Apr 30, 2025
baea0e8
Changed workflows for the next branch
Unbreathable Apr 30, 2025
44fadb5
Merge pull request #55 from Liphium/dev
Unbreathable Apr 30, 2025
cf2ecb5
Forgot to rename workflows
Unbreathable Apr 30, 2025
460430c
Merge pull request #56 from Liphium/dev
Unbreathable Apr 30, 2025
45429fe
Update windows-release.yml
Unbreathable Apr 30, 2025
13688b1
Merge pull request #57 from Liphium/next
Unbreathable Apr 30, 2025
8e09221
Linux debug build fix
Unbreathable Apr 30, 2025
29437e0
Merge pull request #58 from Liphium/dev
Unbreathable Apr 30, 2025
bf30503
Chat: Fixed bugs in the friend request system
Unbreathable Apr 30, 2025
89ff42b
Merge pull request #59 from Liphium/dev
Unbreathable Apr 30, 2025
b798788
Maybe we were missing this all along?
Unbreathable May 1, 2025
9bd73ce
Log the webrtc config
Unbreathable May 1, 2025
a244775
Merge branch 'dev' of https://github.com/Liphium/chat_interface into dev
Unbreathable May 1, 2025
514f456
Fixed the wrong avatar rendering in the message list
Unbreathable May 1, 2025
2248f48
Spaces: Clicking on pinned spaces makes you join them now
Unbreathable May 3, 2025
1e977b2
App: Fix jittering and flickering glitches
Unbreathable May 4, 2025
54d203a
Merge pull request #60 from Liphium/dev
Unbreathable May 5, 2025
e441680
Instances: Use dbus_secrets on Linux to fix key storage
Unbreathable May 5, 2025
dfd8c4d
Unused import
Unbreathable May 5, 2025
131b71e
Merge pull request #61 from Liphium/dev
Unbreathable May 5, 2025
0bd0970
Quick fix in the new dbus implementation for linux
Unbreathable May 6, 2025
b237e2d
Other dbus name
Unbreathable May 6, 2025
0c91235
Merge pull request #62 from Liphium/dev
Unbreathable May 6, 2025
032b955
Remove minimizing to tray (doesn't work on Linux atm)
Unbreathable May 6, 2025
7390129
New dbus name
Unbreathable May 6, 2025
7fffb15
Merge pull request #63 from Liphium/dev
Unbreathable May 6, 2025
452c1ea
Update to new packages
Unbreathable May 6, 2025
e8c38e6
Merge pull request #64 from Liphium/dev
Unbreathable May 6, 2025
3c4b618
Merge branch 'main' into next
Unbreathable May 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
58 changes: 58 additions & 0 deletions .github/workflows/linux-release-beta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Linux Release Debug
# Do this whenever someone pushes to the main branch
on:
push:
branches: ["next"]
jobs:
build:
# Normally you should build this stuff on older versions, but somehow older Ubuntu didn't work, don't want to debug
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

# Get flutter downloaded
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"

# Just to make sure
- run: flutter --version

# Get the Rust toolchain
- name: Install Rust
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable

# Make sure Rust is installed
- run: rustc --version

# Get all the dependencies
- name: Get dependencies
run: flutter pub get

- name: Update apt sources and stuff
run: sudo apt update

- name: Install all dependencies with apt
run: sudo apt install cmake ninja-build libgtk-3-dev libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio libsodium-dev

- name: More dependencies (GStreamer fucked the last line)
run: sudo apt install jackd libasound2-dev libjack-jackd2-dev libayatana-appindicator3-dev libopus-dev libsecret-1-dev

# Runs a set of commands using the runners shell
- name: Start release build
run: flutter build linux --release -v

- name: List directory (in case I'm stupid rn)
run: ls -a

- uses: actions/upload-artifact@v4
with:
name: linux-build
path: ./build/linux/x64/release/bundle/
retention-days: 14
compression-level: 6
overwrite: false
15 changes: 12 additions & 3 deletions .github/workflows/linux-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ on:
branches: ["main"]
jobs:
build:
# Normally you should build this stuff on older versions, but I don't want people to have old shit, so we're gonna do it this way
runs-on: ubuntu-22.04
# Normally you should build this stuff on older versions, but somehow older Ubuntu didn't work, don't want to debug
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
Expand All @@ -20,6 +20,15 @@ jobs:
# Just to make sure
- run: flutter --version

# Get the Rust toolchain
- name: Install Rust
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable

# Make sure Rust is installed
- run: rustc --version

# Get all the dependencies
- name: Get dependencies
run: flutter pub get
Expand All @@ -31,7 +40,7 @@ jobs:
run: sudo apt install cmake ninja-build libgtk-3-dev libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio libsodium-dev

- name: More dependencies (GStreamer fucked the last line)
run: sudo apt install libayatana-appindicator3-dev libsecret-1-dev
run: sudo apt install jackd libasound2-dev libjack-jackd2-dev libayatana-appindicator3-dev libopus-dev libsecret-1-dev

# Runs a set of commands using the runners shell
- name: Start release build
Expand Down
48 changes: 48 additions & 0 deletions .github/workflows/windows-release-beta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Windows Release Debug
# Do this whenever someone pushes to the main branch
on:
push:
branches: ["next"]
jobs:
build:
runs-on: windows-latest

steps:
- uses: actions/checkout@v3

# Get flutter downloaded
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"

# Just to make sure
- run: flutter --version

# Get the Rust toolchain
- name: Install Rust
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable

# Make sure Rust is installed
- run: rustc --version

# Get all the dependencies
- name: Get dependencies
run: flutter pub get

# Runs a set of commands using the runners shell
- name: Start release build
run: flutter build windows --release -v

- name: List directory (in case I'm stupid rn)
run: ls

- uses: actions/upload-artifact@v4
with:
name: windows-build
path: ./build/windows/x64/runner/Release/
retention-days: 14
compression-level: 6
overwrite: false
9 changes: 9 additions & 0 deletions .github/workflows/windows-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,15 @@ jobs:
# Just to make sure
- run: flutter --version

# Get the Rust toolchain
- name: Install Rust
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable

# Make sure Rust is installed
- run: rustc --version

# Get all the dependencies
- name: Get dependencies
run: flutter pub get
Expand Down
25 changes: 5 additions & 20 deletions .metadata
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# This file should be version controlled and should not be manually edited.

version:
revision: "2663184aa79047d0a33a14a3b607954f8fdd8730"
revision: "09de023485e95e6d1225c2baa44b8feb85e0d45f"
channel: "stable"

project_type: app
Expand All @@ -13,26 +13,11 @@ project_type: app
migration:
platforms:
- platform: root
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: android
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: ios
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: linux
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
create_revision: 09de023485e95e6d1225c2baa44b8feb85e0d45f
base_revision: 09de023485e95e6d1225c2baa44b8feb85e0d45f
- platform: macos
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: web
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: windows
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
create_revision: 09de023485e95e6d1225c2baa44b8feb85e0d45f
base_revision: 09de023485e95e6d1225c2baa44b8feb85e0d45f

# User provided section

Expand Down
37 changes: 37 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,43 @@

## 0.6.0

### Major changes

- Compatability with protocol v8
- Added voice calling in Spaces using Lightwire, our own audio engine
- Added connecting to Studio, our WebRTC implementation, in Spaces
- Added a new conversation type called Square
- Multiple conversations (called Topics) can be created inside of them
- Spaces created inside of it will be displayed in the sidebar

### Minor changes and fixes

- Fixed that you couldn't invite people to a Space
- Fixed same addresses sometimes not being recognized
- Rewrote the entire code using new state management for a better structure
- It now uses [signals](https://pub.dev/packages/signals) instead of GetX
- It's now devided into services and controllers for a better overview
- Tabletop's architecture still needs to be improved
- Fixed Warp crashing when sharing invalid ports
- Fixed Warp allowing to share already shared ports
- Fixed being able to add accounts that are already friends as a friend
- Rewrote the entire vault synchronization for better performance and maintainability
- Rewrote the text formatting detection to make it more extensible and also more stable (\*\*\*\* no longer breaks the app)
- Regression: Links are no longer clickable (TODO: Fix before 1.0.0 Beta)
- Fixed cards in rotated inventories having an incorrect rotation
- Fixed not creating a new inventory when the old one has been deleted
- Fixed the "Edit title" button not actually doing anything
- Changed member and search sidebar to one consistent design
- Fixed member and search sidebar both being open when searching in group chats
- Fixed search not being scoped to individual conversations (and basically unusable)
- You can now choose how many dots appear
- All creation buttons are now in one menu in the sidebar
- Added a right click context menu in the sidebar
- More reliable notification handling
- The chat view now opens where the newest messages are

## 0.6.0

### Architecture changes and new features

- This release of Liphium is compatible with protocol v7
Expand Down
13 changes: 9 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,22 @@
# Liphium: Decentralization for everyone

Welcome to the repository of the app used to interact with [station](https://github.com/Liphium/station), our decentralized backend service. With this app you can share files of any size, chat with anyone who has a "town" (what we call our servers) and even go into Spaces with them where you can play card games or share Minecraft servers. This is probably the quickest introduction I've ever given about the app and if you want to know more: [Our website exists](https://liphium.com).
Welcome to the repository of the app used to interact with [station](https://github.com/Liphium/station), our decentralized backend service. With this app you can share files of any size, chat with anyone who has a "town" (what we call our servers) and even go into Spaces with them where you can play card games, share Minecraft servers or just talk with them. This is probably the quickest introduction I've ever given about the app and if you want to know more: [Our website exists](https://liphium.com).

You can find a lot of information about this app [on our help & resources page](https://liphium.com/docs). Be sure to check it out, and if your question isn't answered, you can always contact us through Discord or Email (available on our website).
You can find a lot of information about the app [in the help & resources page](https://liphium.com/docs). If you want to know what's next for Liphium, check out [the roadmap](https://liphium.dev/roadmap). If your question isn't answered, you can always join the [Discord](https://liphium.dev/discord) or send an E-Mail (both available on our website).

## Download

You can always find up-to-date information about where Liphium is available on [the downloads page](https://liphium.com/docs/general/download/). At the time of writing this Liphium is only available on Windows through the Microsoft Store. We're working on expanding to more platforms, but there's only so much one fellow can do. If you want to help pushing out Liphium to more platforms, join the Discord and contact any developer on there. We'd really appreciate the help.

## The goal

With Liphium, the attempt is to hide all of the decentralization magic and give the user a completely normal experience like on any other platform that is as good, if not better, than the other product. I don't want to make *another* open-source end-to-end encrypted messenger that brags about how privacy-focused it is. All of that should be obvious. I want to build something people *actually* want to use because of what it is and not just because of privacy promises or the promise of digital freedom. I want to show the world how you can build a really cool and useful platform on top of both end-to-end encrypted and privacy-focused backend while not even mentioning it to the normal if they don't want to hear about it. None of this has been achieved, but I've been building it for the last 2 years and know that it *can* be achieved. That's why I'm still working on this project after such a long time.

## This repository

With all that said, this repository contains the main app for Liphium. It's one codebase for both mobile and desktop platforms making use of the [Flutter](https://flutter.dev) framework for at least somewhat seamless experiences across platforms. The app looks the same and has the same categories for things like Settings on all platforms to make explaining it easier than ever. All settings are the same in the same order across every platform. This consistency is key to making a good app (in my opinion) and makes writing documentation and more a lot easier. Every single piece of code can be re-used making adding features quite easy across the board.
This repository contains all of the code available for Liphium's client app.

## Contributing

Hey, I appreciate that you want to contribute, but I'm sorry to report that all of the guides are just not there yet. If you are really curious about the app, you can reach out to me over on our Discord server (you can find the invite on [our website](https://liphium.com)). Contribution guides and more will be available at some point, but for now I just wanna develop this app alone and make sure there is some documentation because I don't want your experience making contributions to be really bad and I also want you to know where what is and why it's that way. The code quality is also still really bad and rough in some places, I'd also like to fix all of that before allowing contributions. So, just wait for now and let me cook.
I appreciate that you want to contribute, the problem is just that there are no guides on how to navigate this gigantic codebase and before I sent you down this big rabbit hole I want to actually provide decent information on where things are and how things work. If you just want to help fix some typos, feel free to create a pull request. If you have a feature you want to request or have a bug that's bothering you, open an issue. If you want to help ship Liphium to more platforms, either open an issue or join the Discord server and contact me through there. Once guides and more are available I'll also make an announcement somewhere.

3 changes: 3 additions & 0 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,6 @@ linter:
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options

formatter:
page_width: 120
Binary file removed assets/NotoColorEmoji-Regular.ttf
Binary file not shown.
Binary file removed assets/OpenSans.ttf
Binary file not shown.
Binary file removed assets/Roboto-Regular.ttf
Binary file not shown.
Loading