Key Cast - Cast your key presses and mouse clicks on the screen, while casting your favorite application on the screen. Better than the rest.

Overview

Linux Windows macOS made-with-python PyPI license


Logo

Key Cast

Screen cast your keyboard and mouse clicks in style
Project Homepage »

View Demo · Report Bug · Request Feature

Table of Contents
  1. Introduction Functionalities
  2. Getting Started Getting Started (Development)
  3. Usage
  4. License
  5. Contact
  6. Acknowledgement
  7. Info
  8. Issues

Introduction

Keycast in action

In this internet age, everyone is learning to stay ahead in their career or to develop something new, creative and fun. Digging the internet for quality tutorials, watching that youtube videos of blender, illustrator, photoshop, webdev and what not. To give back to your community, you also thought of creating some tutorials, but guess what, you are not having any good keyboard and mouse indicators, and that ones which are available in the market, do not suits your personality.

Here comes Keycast, which enables you to, screen cast your keyboard and mouse clicks, while also being pleasant to your eyes and why you should consider Keycast, here's why:

  • Cross-platform: Run it anywhere. Run it on Linux, Windows or OS X.
  • Keybaord & mouse clicks: From keyboard presses to mouse clicks, we've covered you all!.
  • Drag it anywhere: Obstructing your view? place it anywhere on the screen.
  • [IN PROGRESS!] Show in style: Choose from numerous themes, or create your own.
  • [IN PROGRESS!] Transparency control: Adjust the transparency level of the panel as per your convenience.

Functionalities

  • Following are the functionalities implemented till now:
  • Show previous and current keypresses/key combinations
  • Show mouse activity
  • Drag and drop anywhere on the screen
  • Second instance prunning of the running application

Built With

This was achieved with Python (cPython), with Pynput as global keyboard and mouse event listener, Tkinter powering the GUI, & Pyinstaller for creating distributable package files.

Getting Started

  • You do not need Python installed to use this app, just go to the application Homepage, and download the package as per your OS.

For Linux/OS X users only

  • After downloading the file, open the properties of the file, go to permissions tab and check the option saying allow executing file as program, and then run the file, now it would run smoothly.

Getting Started (Development)

This section will help you to get started with the project, locally

Prerequistes

  • You should be having Python version > 3.6.x
  • Install the requirements from REQUIREMENTS.txt file via pip before actually running the application, with
    pip3 install -r REQUIREMENTS.txt

Installation

  • Clone the project locally with
    git clone [email protected]:daxter-army/key-cast.git
  • Navigate to the project dir and activate virtual env
  • for windows
    .\keycast_env\bin\activate
  • for linux/OS X
    source .\keycast_env\bin\activate
  • Now you'll see that virtual env has been activated, after this hit
    python3 keycast_dev.py
  • You have done it, you will be seeing a window running on your screen, if everything goes well.

Building

To create one distributable file on linux/OS X, type

    pyinstaller keycast_prod.py --onefile -i "path_to_icon/icon_file.ico" --add-data "assets:assets"

With hidden console window, in Windows, type

    pyinstaller keycast_prod.py --onefile -i "path_to_icon/icon_file.ico" --add-data "assets:assets" --windowed

With console window in the background, in Windows, remove --windowed argument

Usage

gui

You can use it with any of your favourite software while making any tutorial, screen casting your screen, or while streaming your game over the internet.

More themes coming soon!

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Mehul Singh Teya - [email protected] | LinkedIn
Project Link: https://github.com/daxter-army/key-cast
Project Homepage : https://daxter-army.github.io/key-cast

Acknowledgement

Info

  • Right now it is heavily under development, and is being developed in linux (ubuntu). You can see unidentified characters being shown by the software, because sometimes different key combos having different key codes, I am working on this to support as many as keyboards and key combos possible.

  • windows_bundle directory contains bundled package for windows, same is the case with linux_bundle, bundle to be created for mac OS X.

  • The main file that runs is /dist/keycast_prod.exe, these are also the files that are available on the homepage to be downloaded.

  • For development use, keycast_dev.py, then copy-paste the whole code to keycast_prod.py, and also paste the code of additional files in that file also, to increase the performance.

Issues

Visit Issues tab
Issues

Owner
Mehul Singh Teya
No Bio, only CS
Mehul Singh Teya
Chatterpatter - A simple GUI complex backend Chat Application made using python

Chatterpatter - A simple GUI complex backend Chat Application made using python

Gurneet Singh 2 Jan 08, 2022
A simple todo GUI applicaiton

simple_todo_gui A simple todo GUI applicaiton To create an .exe file, run 'Python setup.py build' after installing PyQt5 and cx_Freeze with pip. Then

Dhammike Piyumal 2 Nov 11, 2021
Declarative User Interfaces for Python

Welcome to Enaml Enaml is a programming language and framework for creating professional-quality user interfaces with minimal effort. What you get A d

1.4k Jan 07, 2023
CBMPy Metadraft: a flexible and extensible genome-scale model reconstruction tool

CBMPy Metadraft: a flexible and extensible, GUI-based genome-scale model reconstruction tool that supports multiple Systems Biology standards.

Systems Biology Lab, Vrije Universiteit Amsterdam 1 Mar 14, 2022
A keyboard-driven, vim-like browser based on PyQt5.

qutebrowser is a keyboard-focused browser with a minimal GUI. It’s based on Python and PyQt5 and free software, licensed under the GPL.

qutebrowser 8.4k Jan 01, 2023
Software com funçoes de A a Z feito no Python

Introdução Iniciante em programação Python, decidi criar um programa com diversas ferramentas de A a Z. Funções Ferramenta de Gerenciamento e Manutenç

João Pedro 1 Jan 26, 2022
Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies

(This library is available under a free and permissive license however, if you Enjoy Dear PyGui please consider becoming a Sponsor) Dear PyGui is a si

Jonathan Hoffstadt 9.4k Jan 07, 2023
Python script with tkinter that allows you to open a local chat room

Server_chat Python script with tkinter that allows you to open a local chat room To begn you'll have to start the server side script and run it. You w

2 Feb 11, 2022
A Virtual Desktop Assistant Written in Python

DesktopAssitant A Virtual Desktop Assistant Written in Python. It's generally a basic virtual assistant The basic purpose of this is to make work easi

Technerd brainiac 609 Jan 07, 2023
EZ Presence - A GUI-Python app which makes it easy to set a custom Discord Rich Presence. (BETA)

EZ Presence EZ Presence is a GUI-Python app which makes it easy to set any custom Discord Rich Presence. Using the App How to Run Since the app is in

notsniped 2 Mar 01, 2022
Python Screen Recorder

Python Screen Recorder a simple customizable screen recorder made in python 🐍 Requirements Operation system: Windows Python Version: 3.9.x Required M

Arsh 3 May 25, 2022
Create shortcuts on Windows to your Python, EXE, Batch files or any other file using a GUI made with PySimpleGUI

shor Windows Shortcut Creation Create Windows Shortcuts to your python programs and any other file easily using this application created using PySimpl

PySimpleGUI 7 Nov 16, 2021
Function-Plotter - GUI Application to plot math Functions

Function Plotter GUI Application to plot a user given function How to run instal

1 May 05, 2022
These are some useful tkinter utilities that i like to personally use.

ntkutils nefs tkinter utilities These are some useful tkinter utilities that i like to personally use. I upload this here because someone might wants

nef 7 Dec 06, 2022
A simple project used Tkinter module to make a seperate window

Project Title This is a program to run a databse where you can store the general information of poeple. This is a very simple project and i have used

Divyansh Bhardwaj 0 Jun 25, 2022
Aplicação GUI feita em Python para estudos de cadastro (forms).

Cadastro de DEVs GUI 💻 A ideia original veio do repositório do https://github.com/PedroTomazeti nomeado 'Projetos-Independentes-HTML-CSS' Nele há um

Yago Goltara 3 Aug 15, 2021
This is a GUI application to plot functions in the form Y = F(X)

Plotter This is a GUI application to plot functions in the form Y = F(X) Technologies Python Qt designer Python unittest matplotlib Running Navigate

ahmedasad236 3 Dec 26, 2021
Verify file hashes of downloaded files easily in a GUI

HASH-verify Verify file hashes of downloaded files easily in a GUI What it does... This gui based Python3 app calculates 3 types of file hashes and ca

Christian Richter-Pedersen 10 Dec 13, 2022
Pyabr lightweight OS with Python and Qt

Pyabr cloud computing software In the name of God, the Compassionate, the Merciful Pyabr © 2021 Mani Jamali. Free Software GNU General Public License

PyFarsi Software Foundation 88 Dec 26, 2022
Use NixOS Without Coding

(Work in Progress) Nix-Gui Make NixOS usable for non-technical users through a settings / package management GUI. Motives The declarative nature of Ni

548 Dec 30, 2022