Skip to main content

ZEAL

繁體中文 | English

ZEAL (Zona's Easy Adapter for Lin-bot) helps you quickly create and configure a LINE Bot.

Inspired by Zona, ZEAL aims to help anyone who wants to build a LINE Bot finish the basic setup quickly, so they can spend their time developing the Bot itself.

Before you begin

Install

The commands below work in PowerShell and macOS/Linux terminals.

Install the published package from PyPI:

uv tool install zeal-builder

To work from the source checkout instead:

git clone https://github.com/stoday/ZEAL.git
cd ZEAL
uv sync

Run

zeal line-bot setup

From the source checkout, use:

uv run zeal line-bot setup

When Playwright Chromium is missing, ZEAL announces and downloads it. On Linux, it also installs required system packages, which may require administrator privileges.

ZEAL explains the steps first. After you press Enter, it checks ngrok on Windows, macOS, or Linux, downloads it if missing, and verifies that it runs. ZEAL reuses an existing tunnel for the Bot port; otherwise it checks ngrok configuration. If the Authtoken is missing, ZEAL shows where to register, log in, and copy it, then accepts it through a hidden terminal prompt and saves it to ngrok. If preparation fails, setup stops before the LINE account flow. ZEAL then asks whether to create a new Official Account or continue with an existing one. For a new account, enter its details and choose an industry in the terminal; ZEAL fills the form in the visible LINE browser. For an existing account, sign in and select one from the live list of accounts you can manage, then confirm the choice. ZEAL asks you to choose a Provider only when enabling Messaging API for the first time. If the account already has a channel, ZEAL explains that its Provider is already linked and continues with it. A gray veil means ZEAL is working and the page is locked against manual input; a green notice means you can use the page. Complete sign-in, OTP/MFA, and human verification in that browser when LINE asks. ZEAL locks the page again when it resumes. For a new account, it clicks both the initial Create button and the final Finish button automatically. If LINE shows the "Agree to our use of your information" page, ZEAL clicks Agree. If you rerun setup, ZEAL reuses an unchanged local project. If project files or .env conflict with the selected channel, ZEAL shows the existing path and an available numbered project name. Choose to overwrite, use the suggested new project name, or enter your own; setup then continues without repeating earlier steps. Overwritten project files or credentials are moved to a numbered backup first. When setup finishes, the command exits while the Bot and ngrok keep running. The summary shows their PIDs, log paths, and commands to inspect or stop them.

Open http://127.0.0.1:4040 to check the local ngrok tunnel. In PowerShell, (Test-NetConnection 127.0.0.1 -Port 4040).TcpTestSucceeded checks whether the inspector port is listening. To stop only ngrok, use the summary's Stop-Process -Id <ngrok PID>. To restart it, run the full ngrok command shown in the summary in a new terminal (ngrok http 8000 if ngrok is on PATH; replace 8000 with the Bot port). If the public URL changes, update the LINE Developers Console Webhook URL with /callback, click Verify, and confirm Use webhook is enabled.

ZEAL sets and tests the Webhook URL through LINE's documented Messaging API, then confirms that Use webhook is enabled. At the end, it opens a generated add-friend QR code in the visible browser and prints the add-friend link. Scan the code, send the Bot a message, and confirm the reply. ZEAL disables LINE's default auto-response when it enables the Webhook, so incoming messages receive one Bot reply. Greeting messages remain configurable. ZEAL creates line-bot-<account-name>/; edit app.py there to change the Bot's reply. Keep .env private.

Other commands

# Stop the Bot and ngrok when setup finishes instead of leaving them running
zeal line-bot setup --stop-after-setup

# Manually provide credentials for an existing Messaging API channel
zeal line-bot resume

# View all available options
zeal line-bot setup --help
zeal line-bot resume --help

# Show the installed ZEAL version
zeal --version

When working from the source checkout, prefix these commands with uv run.

After setup, use LINE Official Account Manager to edit account details and automatic replies. Use the LINE Developers Console to edit the Webhook and Messaging API settings.

For a detailed manual walkthrough in Traditional Chinese, see line-bot-apply.md.

Metadata

Release files for zeal-builder 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zeal-builder 0.4.1
File Size Uploaded
zeal_builder-0.4.1.tar.gz 38.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zeal-builder 0.4.1
File Interpreter ABI Platform
zeal_builder-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 79.1 kB

Release files / zeal_builder-0.4.1.tar.gz

Download URL zeal_builder-0.4.1.tar.gz
Size 38.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9fca32661b78eb0b752634f9694c6dd0e352c8131048ed68c2527d599c425b7d
BLAKE2b-256 checksum
How to use checksums
4afeadf627a2928421a33324769818b0d60962c34aca27a4436501881f21fb4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / zeal_builder-0.4.1-py3-none-any.whl

Download URL zeal_builder-0.4.1-py3-none-any.whl
Size 40.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
74a7c97bacf6b2dbfb775f4ec0132686f8663cfce07ca93f18cb1fa56d692e82
BLAKE2b-256 checksum
How to use checksums
55037e224cb65d3817a78b9e411b7624a8aa697fddaca23228f190f8d39843c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.6.1

2 release files

0.6.0

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

This release

0.4.1 This release

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page