Git Product home page Git Product logo

client's Introduction

Spacebar Client

This is a WIP React app

client's People

Contributors

dependabot[bot] avatar developomp avatar maddyunderstars avatar puyodead1 avatar sushinpv avatar thearcanebrony avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

client's Issues

Warnings for messages containing links based on categories (ex. Adware, malware, gambling, fake news, etc.)

I think it'd be a useful feature to have links flagged with a warning message if it belongs to a certain category.
I think that StevenBlack's hosts is a good starting point for the categories that should be included (adware+malware, fakenews, gambling, porn, social)

I created a rough mockup:
IMG_20210516_002000
Links that are matched with a category display a warning with the category they are matched with.

I think the user should have the option to disable/enable the warning based on categories (ex. Some people might want to be warned about social media links while most people probably won't) as well as the ability to create custom lists

Split View

  • Open multiple windows/channels in split view

Unicode Links

As described in the IDN homograph attack:

For example, a regular user of example.com may be lured to click a link where the Latin character "a" is replaced with the Cyrillic character "а".

Thats why we need to encode the domain with Punycode

For example: apple.com -> will be encodes as xn--80ak6aa92e.com

Video Avatars

Many people don't want to turn on the camera as they might not look good or are not comfortable sharing their face.
Thats why there should be virtual avatars that project your mimic onto digital avatars, or at least apply video filter (e.g. retouch).
There should also be the option to adjust how strong it should "comicify" the face/avatar.

Similar to Apple Memoji and Snapchat filters

Expand/collapse large messages

As it can be seen here:

image

large messages fill the whole chat thats why messages exceeding a certain line threshold should automatically be collapsed and be able to expand

Push Notifications

  • also receive notifications, if the app is not open, especially on desktop

Solo mode

if many people talk at the same time and you are currently talking with someone it would be very convenient if you could enable focus mode on the specific user to only hear him and everyone else is muted locally.

Plugins

The plugin system should have a Permission API, and be secure.
The plugins should work on desktop and on mobile.
The plugins can be loaded from a plugin store and should be approved first.

we could have a look how vscode handles plugin securely

cant login

Windows 10, Chrome, i go to the login page, login, press login onto fosscord button, redirect to introduction, after seenig like foss and stuff, it just softlocks

Fosscord + Discord accounts loged in(merged) at the same time.

Give the ability for users to sign in with multiple accounts at once so they can use "fosscord" + "discord" at the same time. This allows for better user experience because it means we don't have to pick one or the other, or have to keep signing in and out of our different accounts.

Image zoom

zoom into images directly in the client.
no need to open it in the browser

Sidebar

  • Server List
  • Channel List
  • Dm's (Direct Message Channels)

Open links with VPN/proxy

Many inexperience new users click on links from random users that want to harm them.
This can expose their ip address and their location to the attacker and they could DDOS the victim.
Thats why (only achievable in the application) links should open in a secure separate webview that routes everything through a proxy/VPN to hide the users real ip address.

Can Fosscord be made LibreJS compilant?

GNU LibreJS is a Mozilla Firefox addon which filters out non-free and non-trivial JavaScript from any website. As Fosscord is already Free Software, licensed under the AGPL, can it be possible to make it LibreJS compliant? The GNU project has also published some guides on how to free your Javascript here and here. Thank you.

Improve Video Conferences

The fundamental problem of video conferences is that you don't have eye to eye contact and no interpersonal interaction. This is the reason if someone asks a question looks into the camera and no one feels addressed.

There is not a real "solution" in MS Teams or zoom where you can reareange people in a chair/room like background, but you still look directly into the camera and don't feel addressed.

Solution

Virtual Eye contact

There is a new technology (AI) that adjusts the eye position to always look at the camera. We could use that concept by adjusting the eye to look at you only if the person is focusing you with e.g. mouse.

Virtual focus

If you hover over someone with your mouse the recipient will notice it and can create a feeling of a "virtual eye contact".
To prevent someone focusing someone forever by forgetting the mouse over someone it should reset after a certain amount of time.

Whispering

If you have a video conference and don't wan't to share your thought with the whole audience (and possibly interrupt them) you should be able to "whisper" talk only to a certain person.

Virtual Rooms

Virtual Rooms that you can enter as a virtual character (or with your cam) combined with fosscord/fosscord-web-client#25 to make "real life" video conference rooms.

Broadcast messages

Just like in whatsapp, the client should broadcast lists to send a message to multiple people/guilds (without making a dm group) and across multiple instances.

Bulk actions

Allow users to easily do bulk actions through a neat ui without complicated bot commands.

examples:

  • filter members (roles, joinDate) and kick, ban, give/remove role, reset nickname
  • filter or select and delete multiple messages

Theme-Design-Editor

For non developer it would be nice if you wouldn't need css to make your own theme,
it would be sufficient first to edit the css variables,
and later we could go further and make our own visual css editor

3D Audio

There are multiple ideas to do this:

  • Game like 3D Room where you can move and see each other avatars/streams (make video conferences more fun)
  • third party plugin integrated in games to set the users virtual position

Screenshare

  • Desktop Audio
  • Multiple Screens/windows
  • allow users to interact (teamviewer)
  • annotate with whiteboard

Disable do not disturb for VIP

If you activate dnd you don't want to get notified if you get pinged by a random people, but there are cases you are waiting for an answer or don't want to miss a call from a specific person.
Thats why you should be able to specify users that will get through dnd.

Friends

  • All
  • Online
  • Blocked
  • Add Friend
  • Sidebar (current RPC's)

lock guild’s and dm‘s

Add the option for a user to secure certain guilds and dm channels/groups with a 4 digit long pin

Client wide proxy

(Not related to fosscord/fosscord-web-client#36)

have a setting where users can use custom proxy to use fosscord.
This should hide users' IP from instance owners.
This option is tor compatible.

Safemode

If a plugin breaks the client so it doesn't event start, boot into safe mode.
This will disable all plugins, so the user can remove the defective plugin.

Linux support?

Currently, there are files for windows, macOS, android, and IOS but I see no files related to linux.
Are there any plans for Linux based OS?

Polls

allow usage of polls

Guild Settings

  • Overview
  • Roles
  • Emoji
  • Moderation
  • Audit Log
  • Integrations
  • Widget
  • Server Template
  • Community
  • Server Insights
  • Partner Program
  • Discovery
  • Membership Screening
  • Welcome Screen
  • Members
  • Invites
  • Bans

Combined Channel View

it would be convenient if you could create a custom channel that combines and shows messages of multiple channels in one e.g. if you have multiple ongoing conversations.

Themes

The client should allow user supplied themes.
One thing we didn't decide yet if we should allow custom css (problematic because it could lead to malicious UI that tricks the user and it is not supported on react-native) or just allow to edit root css variables.
Themes should be loadable from a plugin store (maybe with up/downvote).
Guilds can apply their own guild-wide theme (which first need to be approved/accepted? and can be disabled on user side).

we could have a look how vscode handles themes

  • themes
  • custom css/variable editing
  • guild themes
  • channel themes

Sounds

  • original discord sounds (don't host them just load them on client side)
  • tts (teamspeak like) sounds
  • change soundpacks
  • different voice chat join sound for bots

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.