Alt1-compatible widget host for RuneScape 3

Related tags

Djangorunekit
Overview

RuneKit

No Maintenance Intended

Alt1-compatible toolbox for RuneScape 3, for Linux and macOS.

Running

This project use Poetry as package manager.

Requires Poetry 1.1.

# Try this first
poetry install
# If previous fails and you're on Big Sur, try this instead
SYSTEM_VERSION_COMPAT=1 poetry install

poetry run make dev

# If you just want to load AFKWarden
poetry run python main.py https://runeapps.org/apps/alt1/afkscape/appconfig.json
# If you'd like to pick what app you load
poetry run python main.py

Linux additional instruction

Requires libxcb to be installed

macOS additional instruction

You will need to add Python in System Preferences > Security > Privacy in these sections:

  • Accessibility
  • Screen Recording

Note that Python might appear as the closest macOS application (eg. your terminal emulator) instead of Python

Developer

Start with --remote-debugging-port=9222 to enable remote debugger protocol. To debug, go to chrome://inspect on Chrome/Chromium.

License

This project is No Maintenance Intended. It is provided as-is and may not be actively maintained. There's no support, and no promise that pull requests will be reviewed and merged. In other word: I wrote this for my own use and there's no point in keeping it to myself so I'm sharing it. However, maintaining it as a proper open source project is an ongoing work that I don't have the bandwidth to do.

This project is licensed under GPLv3, and contains code from third parties. Contains code from the Alt1 application.

Please do not contact Alt1 or RuneApps.org for support.

Comments
  • Trim the xcffib reply to 4 bytes to avoid an unpacking error

    Trim the xcffib reply to 4 bytes to avoid an unpacking error

    I kept getting a "struct.error: unpack requires a buffer of 4 bytes" upon launch. After some quick investigation I found out that this buffer for me would contain something like b'\x03\x00\xc0\x07\x00\x00\x00\x00'. Where the last 4 bytes would always be 0. This patch simply trims this buffer to the first 4 bytes, after which everything started working on my setup.

    I have no real clue why it's even 8 bytes for me to begin with, it's a pretty stock Ubuntu 20.04 installation. There probably is a better solution of solving this, but this seems to work.

    opened by schoentoon 5
  • Update lastGameActivity upon focus

    Update lastGameActivity upon focus

    So, the lobby timer in afk warden wasn't working for me at all. I assume the following is supposed to be called upon focus

    instance.game_activity_signal.connect(function(){
       lastGameActivity = window.performance.now();
    });
    

    Upon some investigating however it seems like this isn't being called, or at least not reliably. By updating from the callback a bit higher up (as seen in the pull request) it does seem to be updated more reliably.

    opened by schoentoon 2
  • add documentation for macOS setup

    add documentation for macOS setup

    This PR adds additional documentation for programming novices to get this installed and set up in their environments.

    It also includes a workaround for poetry install that helps installation on Big Sur, as well as other reformatting.

    Thanks again for the amazing app @whs!

    opened by scottpchow23 2
  • sc - dont open cors in browser because it breaks afk warden

    sc - dont open cors in browser because it breaks afk warden

    This is definitely a first draft, but this change fixes afk warden on macs at the moment.

    Some things we can do to limit this change's effect:

    • make sure it's mac only
    • make sure it's only for the afk warden app

    Let me know what you think @whs.

    hacktoberfest-accepted 
    opened by scottpchow23 1
  • Use Option for macOS instead of cmd

    Use Option for macOS instead of cmd

    Generally on macOS Option is used as a substitute for ALT, whereas CMD is generally used in place of CTRL (you use CMD+C for copy, etc).

    Most people I've spoken to just assumed the key binding doesn't work seeing as it didn't work with Option, so figured it makes sense to just update it here to avoid confusion :)

    opened by whitfin 0
Releases(continuous)
  • continuous(Oct 10, 2021)

  • mac(Aug 21, 2021)

  • platypus-initial(Feb 8, 2021)

    OUTDATED

    ~~With several hacks I managed to package the app for macOS.~~

    ~~To package this, run make dist/RuneKitApp.app. The resulting .app wouldn't work outside of terminal. Use Platypus to package the runekit.sh file and add dist/RuneKitApp inside the bundle. It seems that the window is required or it might not run as well.~~

    ~~User instructions~~

    1. Extract zip
    2. Put RuneKit.app in Applications folder (otherwise permissions might not work)
    3. Make sure RuneScape is running
    4. Run RuneKit. May take a minute to load for the first time
    5. I recommend to load example app for the first time to fix any permission request as needed.
      • Click screenshot and grant the permission
      • Click notify and grant the permission
      • In game window, press cmd+1 and make sure that the app can see the game's screen
    6. Now you can run RuneKit with any app

    The log window can be minimized to the dock, it is not automatically closed when RuneKit closes.

    Do you even need 700MB for this?

    Python is about 80MB, Qt is about 370MB and QtWebEngine weights in another 200MB. Most of the Qt parts are unused, but it would require additional compiling to cut down the unused modules.

    And for QtWebEngine it's basically Chromium so you get the entire browser in there. That includes: a network stack, a media decoder for various file formats, a JavaScript and WebAssembly runtime, WebGL and VR support and so on.

    Source code(tar.gz)
    Source code(zip)
    RuneKit.zip(211.75 MB)
Owner
Manatsawin Hanmongkolchai
Software architect at @wongnai
Manatsawin Hanmongkolchai
An app that allows you to add recipes from the dashboard made using DJango, JQuery, JScript and HTMl.

An app that allows you to add recipes from the dashboard. Then visitors filter based on different categories also each ingredient has a unique page with their related recipes.

Pablo Sagredo 1 Jan 31, 2022
Bootstrap 3 integration with Django.

django-bootstrap3 Bootstrap 3 integration for Django. Goal The goal of this project is to seamlessly blend Django and Bootstrap 3. Want to use Bootstr

Zostera B.V. 2.3k Jan 02, 2023
Forward and backwards compatibility layer for Django 1.4, 1.7, 1.8, 1.9, 1.10, and 1.11

django-compat Forward and backwards compatibility layer for Django 1.4 , 1.7 , 1.8, 1.9, 1.10 and 1.11 Consider django-compat as an experiment based o

arteria GmbH 106 Mar 28, 2022
Duckiter will Automatically dockerize your Django projects.

Duckiter Duckiter will Automatically dockerize your Django projects. Requirements : - python version : python version 3.6 or upper version - OS :

soroush safari 23 Sep 16, 2021
TinyMCE integration for Django

django-tinymce django-tinymce is a Django application that contains a widget to render a form field as a TinyMCE editor. Quickstart Install django-tin

Jazzband 1.1k Dec 26, 2022
Add Chart.js visualizations to your Django admin using a mixin class

django-admincharts Add Chart.js visualizations to your Django admin using a mixin class. Example from django.contrib import admin from .models import

Dropseed 22 Nov 22, 2022
A django model and form field for normalised phone numbers using python-phonenumbers

django-phonenumber-field A Django library which interfaces with python-phonenumbers to validate, pretty print and convert phone numbers. python-phonen

Stefan Foulis 1.3k Dec 31, 2022
Phoenix LiveView but for Django

Reactor, a LiveView library for Django Reactor enables you to do something similar to Phoenix framework LiveView using Django Channels. What's in the

Eddy Ernesto del Valle Pino 526 Jan 02, 2023
A prettier way to see Django requests while developing

A prettier way to see Django requests while developing

Adam Hill 35 Dec 02, 2022
Easy thumbnails for Django

Easy Thumbnails A powerful, yet easy to implement thumbnailing application for Django 1.11+ Below is a quick summary of usage. For more comprehensive

Chris Beaven 1.3k Dec 30, 2022
Sistema administrador de contranas desarrollador en Django

Sistema Contrasenas Desarrolado en Django Proyecto sistema de administracion de contraseñas, de la experiencia educativa Programacion Segura Descripci

Ibrain Rodriguez Espinoza 1 Sep 24, 2022
Source code for Django for Beginners 3.2

The official source code for https://djangoforbeginners.com/. Available as an ebook or in Paperback. If you have the 3.1 version, please refer to this

William Vincent 10 Jan 03, 2023
Improved Django model inheritance with automatic downcasting

Polymorphic Models for Django Django-polymorphic simplifies using inherited models in Django projects. When a query is made at the base model, the inh

1.4k Jan 03, 2023
A pluggable Django application for integrating PayPal Payments Standard or Payments Pro

Django PayPal Django PayPal is a pluggable application that integrates with PayPal Payments Standard and Payments Pro. See https://django-paypal.readt

Luke Plant 672 Dec 22, 2022
A clone of https://virgool.io written in django

Virgool clone A clone of virgool blog written in django Installation first rename the .env.sample to .env and fill it. with docker docker-compose up -

Danial Selmipoor 7 Dec 23, 2022
Learn Python and the Django Framework by building a e-commerce website

The Django-Ecommerce is an open-source project initiative and tutorial series built with Python and the Django Framework.

Very Academy 275 Jan 08, 2023
Realtime data read and write without page refresh using Ajax in Django.

Realtime read-write with AJAX Hey,this is the basic implementation type of ajax realtime read write from the database. where you can insert or view re

Mehedi Hasan 3 Dec 13, 2022
Django StatusPage - App to display statuspage for your services

Django StatusPage - App to display statuspage for your services

Gorlik 1 Oct 27, 2021
A Django app for managing robots.txt files following the robots exclusion protocol

Django Robots This is a basic Django application to manage robots.txt files following the robots exclusion protocol, complementing the Django Sitemap

Jazzband 406 Dec 26, 2022
A better and faster multiple selection widget with suggestions

django-searchable-select A better and faster multiple selection widget with suggestions for Django This project is looking for maintainers! Please ope

Andrew Dunai 105 Oct 22, 2022