Executor app icon

Executor

v1.2

Developed by jjewuz

A next-generation Android app: commands are executed right as you type, in any text field — no menus, no extra buttons.

Module Library

Official library of additional modules — install new commands in a single tap.

Open the library →

🎯 App Purpose

Executor is designed for those who work with text, data, and quick formatting. It allows you to perform various operations directly while typing - from everyday actions to calculations and retrieving system information.

The app supports loading additional Python modules, making it infinitely expandable. Any developer or advanced user can write their own commands and connect them.

👥 Who will find it useful?

  • Those who work extensively with text
  • Programmers and technical specialists
  • Copywriters and authors
  • Automation enthusiasts

⭐ App Uniqueness

  • Command execution directly during input
  • Simple syntax like {command arguments}>
  • Support for Python modules to extend functionality
  • Flexibility and scalability

🧩 App Features

  • 📦 Package Manager — install pure-Python packages from PyPI right inside the app to use them in your modules. Popular packages (requests, numpy, Pillow, regex, lxml) are bundled out of the box.
  • ✏️ Built-in Code Editor — with Python syntax highlighting. Create and edit your modules right inside the app.
  • 📚 Module Library — browse and install official modules from the site in a single tap.
  • 📖 Documentation — built-in help covering syntax, commands, aliases and writing modules.

📌 List of Built-in Basic Commands

repeat

Repeats text n-times. If no repetition count is specified, defaults to 2.

Syntax:
{repeat <text> <count>}>
Example:
{repeat hello 3}>

Result: hello hello hello

randomize

Outputs a random number between values.

Syntax:
{randomize <number1> <number2>}>
Example:
{randomize 10 50}>

Result: 36

summarize

Sums up the provided numbers.

Syntax:
{summarize <number1> <number2> ...}>
Example:
{summarize 12 1 4 1}>

Result: 18.0

uppercase

Converts text to uppercase.

Syntax:
<text> {uppercase}>
Example:
hello world {uppercase}>

Result: HELLO WORLD

lowercase

Converts text to lowercase.

Syntax:
<text> {lowercase}>
Example:
HELLO WORLD {lowercase}>

Result: hello world

count

Counts the number of characters in text.

Syntax:
<text> {count}>
Example:
hello world this is test {count}>

Result: 24

erase

Syntax:
{erase}>

Result: clears the input field.

mock

Returns text with random case.

Syntax:
<text> {mock}>
Example:
hello world this is test {mock}>

Result: HeLlO WoRlD tHIs Is TeST

reverse

Returns text in reverse order.

Syntax:
<text> {reverse}>
Example:
hello world this is test {reverse}>

Result: tset si siht dlrow olleh

notify

Sends an Android notification with the given text. If no text is given, the text to the left of the command is used.

Syntax:
{notify <text>}>
Example:
{notify Don't forget the meeting}>

Result: a notification with the text is shown.

save

Saves text as an alias under a short name.

Syntax:
{save <name> <text>}>
Example:
{save hi Hello world!}>

Result: Alias 'hi' saved!

al

Executes a saved alias. The short form {name}> also works.

Syntax:
{al <name>}>
Example:
{al hi}>

Result: Hello world!

aliases

Shows all saved aliases.

Syntax:
{aliases}>

Result: Aliases: hi → Hello world!

clearalias

Deletes all aliases (no arguments) or a single one if its name is given.

Syntax:
{clearalias <name>}>
Example:
{clearalias hi}>

Result: Alias 'hi' deleted

info

Syntax:
{info}>

Result: displays program information.

ip

Syntax:
{ip}>

Result: shows the device's current IP address.

help

Syntax:
{help}>

Result: outputs a list of all modules, their descriptions, and command count.

{help <module_name>}>

Result: outputs a list of all module commands and their descriptions.

Executor monitors input in real-time. When a user enters text in this format, the app identifies the command, processes it, and replaces it with the result. Regular text can be written simultaneously - the app works like a "smart notepad".

Writing Custom Modules

Write a function in Python language. Don't forget about possible errors. The function must always return string type:


import urllib.request
import json

def ip():
    try:
        url = "https://api.myip.com"
        with urllib.request.urlopen(url) as response:
            data = response.read().decode()
            json_data = json.loads(data)
            ip = json_data.get("ip", "Not found")
            country = json_data.get("country", "Not found")
            return f"IP: {ip}, {country}"
    except Exception as e:
        return str(e)

You can use any pure-Python package from PyPI — install it from the Package Manager tab and import it in your module. Several popular packages (requests, numpy, Pillow, regex, lxml) are bundled and ready to use.

If your command assumes the use of the text on the left outside the command, specify `text` in the arguments. Example:


def lowercase(text):
    return text.lower()
            

Using many args:


def summarize(*args):
    total = sum(float(arg) for arg in args)
    return str(total)
            

Module and commands registration

To make commands available, you need to register them. Commands must have descriptions.


COMMANDS = {
    "ip": {
        "func": ip,
        "desc": "Shows your current IP address."
    }
}
            

Specify the necessary module data for the application. Module name is better to be short.

 
AUTHOR = "jjewuz"
NAME = "IPCheck"
DESCRIPTION = "This module has 1 command to show your IP."
            

Modules created for older application versions may malfunction or not work at all in newer releases.


Other

Privacy Policy

Have questions? Write to: mdenisov.work@gmail.com