Skip to content

ab-muhammad-hamza/NumberDeck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

8 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

NumberDeck Cover

NumberDeck

Transform Your Numpad into a Productivity Powerhouse

Release License Stars Issues

Download | Report Bug | Request Feature

LOOG What is NumberDeck?

NumberDeck is an open-source project that replaces the physical Stream Deck with your Num Pad on your keyboard. NumberDeck was first designed to be helpful for streamers, but it can be used for any day-to-day work. In simple words, it turns your keyboard into a fully functioning Stream Deck!

Server Invite

โœจ Features

  • ๐ŸŽฎ OBS Integration: Control your streams with ease
  • ๐Ÿ–ฅ๏ธ Window Management: Switch between applications effortlessly
  • โŒจ๏ธ Custom Shortcuts: Create powerful macros for complex tasks
  • ๐ŸŒ“ Dark/Light Mode: Work comfortably in any lighting condition
  • ๐ŸŽจ Customizable UI: Personalize your NumberDeck experience

๐Ÿ†• New Features (v1.01)

  • ๐ŸŒŸ Title Glow: Title glows yellow if NumberDeck is listening but numlock is good, glows green if listening and numlock is on
  • ๐Ÿ…ฟ Port Field: Added port field to avoid confusion for OBS connection

๐Ÿ› ๏ธ Installation

  1. Download the latest release
  2. Extract the ZIP file to your preferred location
  3. Run numberdeck.exe to start the application

๐Ÿ”ง Usage

  1. Click the gear icon on any numpad key to configure
  2. Choose an action (OBS control, window management, or custom shortcut)
  3. Click the power button in the app to start listening for keypresses
  4. Use your numpad to execute your configured actions!

๐Ÿ–ฅ๏ธ Usage

Same section again? Yes this section will tell you more!

In the beginning, it was mainly designed for streamers. Now, it can be used by anyone with three major options.

๐ŸŽฎ For Streamers:

Streamers can use it to bind their NumPad keys to their OBS and can do the following:

  • Switch Scene
  • Mute Source
  • Unmute Source
  • Toggle Source Mute
  • Start Streaming
  • Stop Streaming
  • Start Recording
  • Pause Recording
  • Resume Recording
  • Stop Recording
  • Toggle Source Visibility

Every action like switching scenes, will have its own additional option to get the element/source/scene from the OBS and a particular element/source/scene can be selected!

PS: You can bind the same NumKey to mute and unmute any source at the same time.

How to Connect?

  • Download and Install OBS if you haven't already installed
  • Open OBS Studio and locate Tools > WebSocket Server Settings which can be found on the ribbon menu
  • Check the box on "Enable WebSocket Server"
  • Click on "Show Connect info"
  • Copy the Server IP and Server Password
  • Now open NumberDeck, and click on the gear icon which is at the top.
  • Paste the details in the OBS section
    • OBS Address = Server IP
      • In the IP address add a colon and copy the port from OBS and paste it. (if the IP is x.x.x.x, and the port is 123, then the address needed to be x.x.x.x:123) [The next update will have a separate field for this :)
    • Port = Port from OBS
    • OBS Password = Server Password
  • Click save after entering them
  • Now you'll see a camera icon at the top of the app in red color. Click on it to connect to OBS

There we go, it's done. Seeing these steps might seem like a big process. But trust me, it's really simple. I'll make a simple video on how to do that soon :)

๐Ÿง‘โ€๐Ÿ’ป For Developers

Developers can use NumberDeck in endless possible ways. My Fav usage is ctrl + shift + n to create a new folder any time, and ofc ctrl + c and ctrl + v ๐Ÿ˜. The Shortcut section makes it easier for developers to bind any shortcuts to the keyboard's NumPad. Don't get me wrong, OBS and windows options also will be useful for developers!!.

How to add shortcuts?

  • Open up NumberDeck
  • Click on your number of choice which you want to bind the shortcut to
  • Choose Shortcuts from the options.
  • Click on capture
  • Press the shortcut keys
  • Save and use!!

๐ŸŽจ For Creatives

Let me break it down. Every feature can be used by anyone. I am just giving the title so it will look a bit different. This is a window option, which is the basic feature of NumberDeck. You can maximize and minimize any active windows with the help of this option.

How to bind windows?

  • Yup, you need top open NumberDeck
  • Click on your number of choice which you want to bind the window to
  • Choose Windows from the option
  • From the next dropdown, select any active window
  • Save and enjoy!!

๐Ÿ’ป Local Development

# Clone the repository
git clone https://github.com/ab-muhammad-hamza/NumberDeck.git

# Navigate to the project directory
cd NumberDeck

# Install dependencies
flutter pub get

# Run the app
flutter run

๐Ÿ”  Languages and Technologies

Dart Flutter Windows

NumberDeck is primarily built using:

  • Dart: The core programming language used for logic and functionality.
  • Flutter: The UI toolkit used for building natively compiled applications.
  • Win32 API: Used for Windows-specific functionality and system interaction.

This combination allows for a performant, visually appealing, and deeply integrated Windows application.

Dependencies

๐Ÿค Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

ChangeLog

v1.01 (28/09/2024)

- Added Glow indications in the title. Glows yellow if NumberDeck is listening but numlock is good, glows green if listening and numlock is on
- Added port field to avoid confusion for OBS connection
- Fixed fields not filling up properly while typing in settings

v1.0 (10/08/2024)

- Initial Release