Skip to main content

Crate to allow easy requests to uHunt's API

Project description

uInterface

Table of contents

  1. Table of contents
  2. uInterface (GUI application)
  3. uInterface (Python & Rust library)
  4. Contributing
  5. Mentions & bibliography

uInterface (GUI application)

What is uInterface

uInterface is an application that can be used alternatively to the UVa judge and uHunt websites. It offers pretty much the same functionalities as them, but with the key advantage that is not having to switch over multiple tabs in your web browser. Following there are a set of instructions to install uInterface, as well as a full-on explanation of the features of this application.

How to install uInterface

In order to install and use uInterface, you will have to follow the installation guide for your operating system.

Windows

Windows installation is as easy as it gets. Just go to releases and download the latest version of the uInterface windows executable (.exe).

Linux

To install the application for linux, go to releases and download the source code. Once downloaded, extract the files and execute the shell script run_linux.sh. Note you may need to give the script permission to execute with sudo chmod +x run_linux.sh. The script will download all the dependencies needed to run the application and run it. Note that once the dependencies are installed, they will not be downloaded next time you execute the script.

Features of uInterface

uInterface has some unique features, which will be descriped below.

The app allows users to log-in to their UVa judge accounts (same system as uHunt) to see their last submissions and position in the global ranking. Also, they can search for a problem, wich will promt the user with the pdf of that problem, statistics for it and last submissions to the problem by the logged in user (if any submissions were done). Problems can also be submited here by clicking the button Sumbit this problem, which will take them to the UVa judge submission page. Note that they will have to be logged in to their UVa judge account on the website, otherwise they will be asked to log-in and take them to the main page of the judge.

uInterface (Python & Rust library)

What is uInterface library

For correct development of the GUI application, a Python library was coded using Rust. This library can also be used in Rust and links to both PyPI and crates.io are found at the end of the README under Mentions & bibliograpy.

The library(es) provide an easy to use interface to make requests to uHunt's API. This requests get parsed to a struct or a dictionary (rust and python respectively), which allow to access the fields of the responses.

How to install uInterface library

To install the libraries, run either pip install uInterface for python or add the following dependency to your Cargo.toml file:

uInterface=1.0.0

How to use uInterface library

To get a look on how to use these libraries, go to the PyPI/crates.io page for the libraries (Mentions & bibliograpy) and read the full documentation, which contains the functions implemented by this libraries.

Contributing

To contribute to the project, please read the short CONTRIBUTING.md file. If you want to submit a new issue, follow the issue templates. Pull requests don't have a template, but they should be linked to an isuue and tagged properly.

Mentions & bibliography

Special thanks to:

  • Felix Halim, creator of uHunt website and uHunt's API
  • Universidad de Valladolid, for hosting the UVa judge

Bibliograpy

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uInterface-1.0.1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

uInterface-1.0.1-cp310-cp310-manylinux_2_34_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.34+ x86-64

File details

Details for the file uInterface-1.0.1.tar.gz.

File metadata

  • Download URL: uInterface-1.0.1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/0.14.16

File hashes

Hashes for uInterface-1.0.1.tar.gz
Algorithm Hash digest
SHA256 514a70b5b6866f89b43e24dbf820b7b7577ca007071df0589a00ae4540f7a981
MD5 07e817782e49035313de905c6c4173a4
BLAKE2b-256 62f9945713615dacac4ae109facec847813acbba04bb81454e2531d2955f5a2e

See more details on using hashes here.

File details

Details for the file uInterface-1.0.1-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for uInterface-1.0.1-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7800b60fdb2fb0ee97c3fcab9db111b7068eceeec25ff10716a36e1cf2d140e4
MD5 6872a2e4e585a6d98b62ba2bf44a630f
BLAKE2b-256 d60a3eb8c33380c4a679513cc4d4f615fc9f35b484f3716824bc72e9b4ab6115

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page