Giter Club home page Giter Club logo

dogehouse's Introduction

Taking voice conversations to the moon 🚀

discord - users online dogehouse - users online


Important DogeHouse Notice

I'm done with DogeHouse

Structure

Codebase Description
kousa Elixir API
shawarma Voice Server
dinner Puppeteer shenanigans
baklava Electron Wrapper
pilaf React Native App
kibbeh Next.js frontend
kebab API Client
dolma Chat Token Transcoder
globalkey Baklava's Global Keystroke Listener

Branches

  • staging -> pr this branch for everything
  • prod -> don't touch, this is what's running in prod

Contributions

DogeHouse is open to contributions, but I recommend creating an issue or replying in a comment to let me know what you are working on first that way we don't overwrite each other.

Please read CONTRIBUTING.md for details on this project.

DogeHouse Desktop

A desktop app built with Electron is available for Windows, Mac, and Linux.

There are different ways to get the Electron desktop app:

  • Get the official builds from here, in GitHub Releases for any platform.
  • Get it from AUR (unofficial package) for Arch/Manjaro or other Arch-based distro with yay -S dogehouse, using another AUR helper, or installing manually from the AUR.
  • Get the desktop client for Debian-based distros (including Ubuntu) from the official APT repo with these simple steps:
    • Add the repo with echo "deb http://ppa.dogehouse.tv/ ./" | sudo tee -a /etc/apt/sources.list > /dev/null
    • Add Ben Awad's GPG key with $(command -v curl>>/dev/null && echo "curl -o-" || echo "wget -q0-") http://ppa.dogehouse.tv/KEY.gpg | sudo apt-key add -.
    • Finally, update your local repository list and install DogeHouse with sudo apt update && sudo apt install dogehouse.
  • Get the snap for your systemd-powered Linux distro from either the Snap Store or in an terminal with sudo snap install dogehouse.
    • After installing the snap, you need to allow microphone access with sudo snap connect dogehouse:audio-record to be able to speak in rooms.

Notes:

  • If a warning message pops up on Windows, go to 'more info' and select 'Run Anyway'
  • Currently, the snap package's available channels are only edge as contributions for Baklava are merged almost on daily basis. Tested versions that are stable will be promoted into stable in the future.

DogeReviewers

Contributors helping to review/merge pull requests:

Code of Conduct

Please read CODE_OF_CONDUCT.md for details on our code of conduct.

How to run locally

Check here on how to run locally

Why did you make this?

https://www.youtube.com/watch?v=hy-EhJ_tTQo

Attribution

For emojis, we use Twemoji

dogehouse's People

Contributors

ajmnz avatar akshayjaitly avatar amitojsingh366 avatar arthurysong avatar benawad avatar bronzw avatar dk-raw avatar ermalsh avatar etienne-io avatar firecraftgaming avatar fotiemconstant avatar goldyydev avatar holopanio avatar imadill avatar ityonemo avatar jamesql avatar mayowa-ojo avatar meztlira avatar nadirabbas avatar overlisting avatar pistasjis avatar ronaldcolyar avatar rzs2006 avatar sahilmob avatar stratusfearme21 avatar tejxv avatar theotterlord avatar violet-crein avatar wes337 avatar xuhangc 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  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

dogehouse's Issues

Room name can be blank if you add a ZWJ

If the name only has spaces you'll get a "Name can't be blank" error, if it only has ZWJs it errors with "Must have at least 2 characters", but if you use a ZWJ (so it's not blank) as well as spaces (to match the character requirement) you can circumvent the validation and create rooms with no name.

No showstopper I guess, but given that the "mustn't be blank" error is already in place, I figure you'd prefer it if all rooms have actual names? 😄

Edit: wohoo, #1!! 🚀

Add LICENSE

It's not open source if you don't have a license - at best its source available

Link to create new private room

I'm not sure if the title describes my idea. Telegram has the "t.me/username" feature where you can quickly chat with someone and people typically post that url on their Twitter bio. I believe Zoom also has a "instant meetings" link for users like "zoom.us/my/username". I think a cool feature could be to add a link to your dogehouse.tv profile url and send a request to voice chat in a private room.

perhaps dogehouse.tv/request/username?x=specialTokenOrSomethingToPreventSpam

This assumes that notifications are enabled.

Private Rooms

Private rooms would be nice, or rooms that you need to ask for joining.

End to End Encryption

Would be cool to have end to end encrypted voice chats. Would beat Discord since they don't have E2E encrypted vc.

I can't see the number of followers

It's showing zero followers for every account. I noticed this when I clicked on my avatar and saw that the following numbers was right but the followers number is 0.

Original Roadmap

  1. Fix bugs
  • x-state??
  1. Fill in missing things

??? notifications → app needed → react-native-web

??? global keybinds → desktop app needed → electron

  1. Option to record rooms [podcast]

  2. Discord/Twitch features for monetization

  • DogeNitro
  • DogeSubs
  • DogeAds

Poll feature

Having polls would be a great way to interact with listeners.

Error :Refresh mic list

After giving the permissions to microphone in the website and checking the Voice setting i didn't found any microphone plugged and i try to refresh and nothing work .

Remove yourself from "Speakers" without refreshing webpage

image

If you're a "Listener", click the button to become a "Speaker", but you can't go back to a "Listener" without refreshing the page. Maybe the "Speaker" icon (above) could change to a "headphones" icon if you want to become a "Listener" again.

No Sound ⚠️

We need to create a room and turn our mic on for the first time to hear others in other rooms! Comment if it's not clear!

Possible solution:
Ask for voice permissions initially while signing up

Detaills:
Browser - Chrome
OS - Windows 10

Volume adjustment

Sometimes people just arent loud enough :) (and the rest may be too loud)

Ease Of Use Fixes For UI

The UI icons are somewhat confusing,

Labels for the Icons would be appreciated!

This problem becomes more of an issue because you can only ask to speak once in a room. In my case I entered the room, clicked the icons to see what they did, had no feedback, and then by clicking again I figured out I requested to speak.

I love the project though, I think a little more affordance would go a long way.

User left but room still shows user's name

So like Ben was in a room right now and even after he left, the room on the home page was showing Ben's name and even after I refreshed 3-4 times, it still showed Ben Awad in room user list at the hoom screen. It only got removed when he made a new room...

Labels for buttons

I think it would be useful to have labels for when you hover your mouse above a button. Just means you don't have to guess what things mean

Deafened Feature

Title says it all, a feature like the "deafened" option in discord to both mute your audio and prevent you from hearing audio. Good if you need to temporarily listen to something else but don't want to click off of a dogehouse entirely.

Privacy issue - mic auto unmute

When admin add a new speaker and the user had their mic as ON in previous chat room then it automatically makes their mic as ON as soon as the user is added as Speaker.

Possible Solutions:

  • Ask for listener's consent to make them speaker when admin adds the listener as speaker if listener didn't ask admin to be a speaker.
  • Start new speaker as mute. They can unmute when they want to speak.

Text Chat

Listeners are unable to react with the speakers in any shape or form. At the very least a text chat would enable listeners to participate in the conversation. If you are afraid of spam you could have slow-mode toggleable or make it emote-only.

Input device change

Could you add a feature to select your input device manually without joining a room

Mic list

Microphone list is 3 options but all the options are empty

error connecting to voice server

When trying to join the room "React.js and Kubernetes", this error pops up:

error connecting to voice server | Cannot read property 'recvTransport' of undefined

Mind you, this room had 80+ listeners/speakers when this error started to occur, but I am still able to listen to other rooms with lower number of listeners/speakers.

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.