Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Install a supported Termux build, update its packages, and install all three tools with one command sequence:

pkg update && pkg upgrade
pkg install git python nodejs

Confirm that each executable is available with git --version, python --version, and node --version. Keep active projects in Termux’s private home directory; use shared Android storage only for exchanging files.

What you need before installing

Termux is an Android terminal environment with a Debian-style, apt-based package system. Its pkg command is a convenience wrapper around that package manager; the Termux command reference describes it as using apt “just like Debian.” Read the Termux tools command reference for the command behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a supported Termux distribution

Install Termux from F-Droid or from a current release in the project’s GitHub releases. Google Play builds are deprecated and unsupported according to Termux package-management guidance. If an old installation cannot update repositories or reports package errors immediately, replacing it with a supported build is usually the first corrective step.

#1 Best Overall
OMOTON Bluetooth Tablet Keyboard Rechargeable with Backlit, Oversize Keycap | Ultra-Slim Wireless Keyboard for Samsung Tablet, iPad, Smartphone, Android/iOS/Windows, Foldable Stand, Travel Office, Black
  • Full 3-System Compatibility & Wide Device Support: Perfectly compatible with Android, iOS and Windows three major systems. Works seamlessly with Samsung tablets, iPads, iPhones, laptops, smartphone, android, iOS, windows etc
  • How to Switch Systems: Switching to the corresponding system will improve compatibility and higher work efficiency (“FN + A” is for iOs , “FN + S” is for Windows, “FN + D” is for Android )
  • Enhanced Oversized Keycaps:27% bigger than standard keycaps. The spacious surface minimizes accidental presses and ensures comfortable typing for long hours
  • 5 Adjustable Angles & Foldable Stand for tablet or phone, It effectively eases hand and eye fatigue during long hours of use, helping you stay focused and work more efficiently
  • Long Battery Life & Smart Power Saving:Built‑in rechargeable lithium battery, Type‑C fast charging (full charge in 2–3 hours, last up to 200 hours with the backlight off, and 3-5 hours with the backlight on). Auto sleep mode after inactivity to save power, no frequent charging needed

Do not mix the Termux app or add-ons installed from different distribution sources. Android package signatures can differ, and components signed by different sources may not update or work together. Install the app and any add-ons from one source, then open Termux and complete the initial setup.

Expect rolling-release versions

Termux packages follow a rolling-release model. The version available on your phone depends on the configured repository and when you update, so a tutorial’s version number is not a compatibility guarantee. Check the version printed on your device instead of trying to force a historical release.

Update Termux and install the three packages

In the Termux shell, run the two commands from the introduction in order. The first refreshes package metadata and upgrades packages already installed; the second installs Git, Python, and Node.js:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Run pkg update && pkg upgrade. Approve upgrade prompts when Termux asks.
  2. Run pkg install git python nodejs. The package names are exactly git, python, and nodejs.

pkg update downloads current repository indexes. pkg upgrade brings the existing Termux environment into a consistent state before new packages are added. Updating first reduces failures caused by stale metadata or partially upgraded dependencies. Termux’s package-management guidance recommends keeping the environment updated because the repositories change continuously.

What to do when a prompt appears

Package upgrades can show a confirmation prompt or ask whether to replace a configuration file. Read the prompt and accept the normal package-maintainer choice unless you have deliberately edited that configuration. Keep the phone connected to a reliable network and avoid closing Termux while packages are being unpacked.

Verify Git, Python, and Node.js

After installation, check each command directly. These checks report the versions selected by your configured Termux repository:

Tool Installed package Verification command What a successful result looks like
Git git git --version A Git version string and a return to the shell prompt
Python python python --version A Python version string and a return to the shell prompt
Node.js nodejs node --version A Node.js version string and a return to the shell prompt

The Node.js build setup currently contains a value of 24.18.0, but that is a build-script setting, not a promise that every device will install that version. Repository updates, mirror state, and update timing can produce a different result. The setup file is visible in the Termux Node.js build configuration. Use the version printed locally when checking project compatibility.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If a command is not found

First rerun pkg update && pkg upgrade, then install the missing package by name. If the package manager itself reports repository or mirror errors, follow the mirror recovery steps later in this guide rather than downloading a random binary into Termux.

Rank #2
Arteck Compact Wireless Bluetooth Keyboard for iPad Tablet iPhone PC Black
  • Cable-Free: Bluetooth Connection with your mobile devices such as tablets and mobile phones. Bring you more convenience when you need to type. Operating distance up to 10 meters. This keyboard is bluetooth enabled and it doesn't come with a USB dongle. It also supports Bluetooth-enabled PCs or Laptops. Arteck Ultra-Slim Bluetooth Keyboard Compatible with iPad 10.2-inch / iPad Air / iPad 9.7-inch / iPad Pro / iPad Mini, iPhone and other Bluetooth Enabled Devices Including iOS, Android, Windows, Black
  • Broad Compatibility: Use with all four major operating systems supporting Bluetooth (iOS, Android, Mac OS and Windows), including iPad 10.2-inch / Air / iPad Pro / iPad 9.7-inch / iPad Mini / iPhone / Android Tablets like Samsung Galaxy Tab, Google Nexus / Windows, etc.
  • Convenient Layout: QWERTY layout with hot keys customized for all iPads, including volume, music control, brightness, etc.
  • Long Battery Life: Energy-saving design and automatic sleep mode allow up to 4 months between battery changes. (based on 2 hours' non-stop use per day) (2 X AAA batteries included)
  • Package contents: Arteck HB098 Bluetooth Keyboard, 2 X AAA batteries, welcome guide, our 24-month warranty and friendly customer service.

Choose a project directory that works with Android

Termux gives each installation a private home directory, represented by ~. This is the safest location for source trees, virtual environments, dependency caches, and Git metadata. Create a workspace with:

mkdir -p ~/projects
cd ~/projects

Files under this home directory use Termux’s normal Unix permissions and filesystem behavior. Git operations such as cloning, staging, and committing can fail when a working tree is placed directly in Android shared storage such as /sdcard. A Termux-specific setup guide documents those failures; its instructions are available in the code-server Termux documentation.

Use Git in Termux

Start a new repository

From a directory under your Termux home, initialize a repository:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
mkdir -p ~/projects/example
cd ~/projects/example
git init

git init creates the repository metadata in the project directory. You can now create files with a terminal editor, a connected editor, or another Android application that can write to the Termux home path.

Clone an existing repository

Change to the parent directory where you want the project and run git clone with the repository address:

cd ~/projects
git clone <repository-url>

The angle-bracket text is a placeholder for the actual HTTPS or SSH repository address; replace it before running the command. Clone into ~/projects or another directory inside ~, not into Downloads or /sdcard.

Make normal Git changes

Once inside a repository, Git’s command-line workflow is the same as on other Unix-like systems. Use git status to inspect changes, git add to stage files, and git commit to record a snapshot. If a commit asks for an author identity, configure the name and email you want stored in that repository or in your global Git configuration, then rerun the commit. Network operations such as fetch and push also require the repository’s normal authentication method and an active connection.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Move finished files to Android storage

Keep the working tree in Termux home while you develop. When you need to send a finished archive, image, or document to another Android app, copy only that output to a shared-storage link after granting permission as described below. This separation preserves Git’s behavior while still allowing normal Android sharing.

Rank #3
Sale
Arteck HB192 Universal Bluetooth Keyboard Multi-Device Stainless Steel Full Size Wireless Keyboard for Windows iOS Android Computer Desktop Laptop Surface Tablet Smartphone Rechargeable Battery
  • 3 Devices Switch with A Single Clicking: This keyboard is able to connect to 3 devices at the same time. You can switch between 3 devices with a single key clicking.
  • Ergonomic design: Stainless steel material gives heavy duty feeling, low-profile keys, full size keys, arrow keys, number pad, shortcuts offer quiet and comfortable typing.
  • Broad Compatibility: Use with all four major operating systems supporting Bluetooth (iOS, Android, Mac OS and Windows), including Computer, Desktop, PC, Laptop / iPad Pro, iPad Air, iPad, iPad Min, iPhone, Smartphone / Android Tablets like Samsung Galaxy, Surface etc.
  • 6-Month Battery Life: Rechargeable lithium battery with an industry-high capacity lasts for 6 months with single charge (based on 2 hours non-stop use per day).
  • Package contents: Arteck Stainless Bluetooth Keyboard, USB charging cable, welcome guide, our 24-month warranty and friendly customer service.

Run Python scripts

Create and execute a first script

From a project directory, create a file named hello.py using your preferred editor. A minimal example is:

print('Hello from Python in Termux')

Run it from the same directory:

python hello.py

The python command comes from the Termux python package. Check the interpreter that will run a script with python --version; do not infer it from a desktop tutorial or from the Node.js version.

Keep Python projects isolated

For projects that need third-party libraries, create a virtual environment inside the project directory:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
python -m venv .venv
source .venv/bin/activate
python --version

The activation command changes the shell’s path so that subsequent Python and package commands use the environment. Leave it with deactivate when you finish. A virtual environment is optional for a one-file script, but it prevents one project’s dependencies from changing another project’s interpreter environment.

Use a predictable working location

Store the script and its virtual environment under ~/projects. If you edit a copy in Downloads and then copy it into Termux, copy the source into the private project directory before creating the environment or installing dependencies. Shared-storage permission and filesystem restrictions can otherwise look like Python errors when the real problem is the location.

Run Node.js programs

Create and execute a JavaScript file

In a project directory, create hello.js containing:

console.log('Hello from Node.js in Termux')

Execute it with:

node hello.js

Check the installed runtime at any time with node --version. Some Termux documentation uses the equivalent short form node -v; both report the local runtime version. Because Termux is rolling release, record the version from your own device when a project requires a particular Node.js compatibility range.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Keep JavaScript project files together

Place package.json, source files, and dependency directories in a project under ~/projects. Run project commands from that directory so relative paths and local dependency resolution work consistently. If a project’s documentation specifies a Node.js version, compare that requirement with node --version before installing dependencies; do not assume the build-script value of 24.18.0 applies to your installation.

Rank #4
Logitech K480 Wireless Multi-Device Keyboard for Windows, macOS, iPadOS, Android or Chrome OS, Bluetooth, Compact, Compatible with PC, Mac, Laptop, Smartphone, Tablet - Black
  • Type on Any Device: A new type of wireless computer keyboard for your desk that also works with your tablet and smartphone; connect with any Bluetooth-enabled device with external keyboard support. Wireless range: > 10m wireless range
  • Easy-Switch Dial: Simply turn the dial of the Logitech K480 keyboard to switch typing between 3 connected Bluetooth wireless devices, you can work with Windows, macOS, Chrome OS, Android, and iPadOS
  • Familiar Keyboard Layout: Find all the shortcut keys you use the most, but in a space-saving design that lets you place your mouse close to you, for less arm reaching and better posture
  • Integrated Cradle: A cradle to hold your phone or tablet at just the right angle for you to read while you type; fits most phones and tablets up to 0.4 inches thick and 10 inches wide
  • Reliable Power: This portable, wireless Bluetooth keyboard comes with 2 pre-installed AAA batteries which can last up to 24 months (2) and is compatible with wired, wireless or Bluetooth mice. Battery indicator light

Access Downloads and other shared Android folders

Grant storage access

Termux does not have shared-storage access by default. If you need to read a file from Downloads or copy an output to another Android application, run:

termux-setup-storage

Android displays a permission request. Grant it, then inspect the links that Termux creates:

ls ~/storage
ls ~/storage/downloads
ls ~/storage/shared

The links under ~/storage commonly include ~/storage/shared for the shared-storage root and ~/storage/downloads for Downloads. The Termux command reference documents the storage setup command, and the Termux FAQ explains the Android restrictions that still apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Understand the shared-storage limit

Permission creates convenient links; it does not turn Termux into a file manager with unrestricted external-storage writes. Android limits access to shared and external storage, including some write operations. Treat shared storage as an exchange point: copy source files into a private Termux directory before running Git workflows, Python virtual environments, or Node.js dependency installers, and copy completed outputs back afterward.

Copy files safely

For example, after granting permission, copy a downloaded script into a private project directory and run it there:

mkdir -p ~/projects/example
cp ~/storage/downloads/hello.py ~/projects/example/
cd ~/projects/example
python hello.py

To return a generated file to Downloads, copy the output in the other direction:

cp output.zip ~/storage/downloads/

If a copy fails, verify the path with ls, confirm that Android permission is still enabled, and check available storage. Do not move a Git working tree back to /sdcard merely because a file needs to be shared.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Keep the Termux environment maintained

Update before installing new software

Run pkg update && pkg upgrade periodically and before adding packages to an older environment. Since the repositories are rolling release, this keeps installed dependencies aligned with current package metadata. It also means that commands copied from an old article may show newer versions or slightly different dependency behavior on your device.

Best Value
Samsers Foldable Bluetooth Keyboard with Touchpad, Ultra Slim Compact,Black | Multi-touch Trackpad, Full Size, Phone Holder, USB-C Charging, 1 Device, for Android Windows iOS Mac OS, Mobile Productivity
  • 【Folding Bluetooth Keyboard & Phone Stand Holder】Extremely thin design of the portable folding keyboard allows you to fold it up and put it in your pocket or bag without taking up too much space. The phone stand holder, best companion for folding keyboard, gives you perfect screen angle. Near-standard size design provides accurate, fast typing, just like the desktop keyboard you are used to. Quiet keys allow you to focus on your work. Perfect gift for travel and business trips!
  • 【Sensitive Touchpad Foldable Keyboard】Upgrade sensitive touchpad supports multi-touch, so you can control the device without using mouse. More convenient and efficient! (NOTE: IOS 13.4 and below or Android 3.0 and below are not supported!!!) Built-in rechargeable battery can last for 48 hours or 560 hours after 2-3 hours of charging. One full charge last enough for your short business trip or vacation!
  • 【Exquisite & Lightweight Portable Keyboard】Dark Black matte exterior, made of ABS+PC material, lightweight but sturdy, without fear of daily wear and scratches. The elegant matte design, excellent touch and clean look make it a perfect match for your tablet, phone and laptop. Only 5.53-ounce, palm-sized keyboard can be folded up and carried around. Provide you with maximum convenience with minimal weight and size. It must be a good choice for editors!
  • 【Stable Connection & Wide Compatibility】Samsers Bluetooth keyboard supports seamless connectivity to all your Bluetooth devices (iOS, Android and Windows). Maintain a stable connection and provide fast response to the device within 10 m. Simply turn on the keyboard and automatically connect to the last connected device. With a Samsers keyboard, you can record all your ideas at any time! (NOTE: this bluetooth keyboard is not compatible with various computer sticks)

Record local versions for bug reports

When asking for help with a project, include the output of:

git --version
python --version
node --version

Also state whether the project is under ~ or under shared storage. Those two details distinguish a runtime compatibility issue from a filesystem or repository problem.

Troubleshoot common failures

“Unable to locate package” or repository errors

  • Confirm that you installed a supported F-Droid or GitHub-release build rather than a deprecated Google Play build.
  • Check that the phone has network access and that the system date and time are reasonable for HTTPS connections.
  • Run termux-change-repo and select a working mirror when the configured mirror is unavailable or returns repository errors.
  • After changing mirrors, run pkg update and then pkg upgrade before retrying pkg install git python nodejs.

The package-management instructions at github.com/termux/termux-packages/wiki/package-management describe mirror selection and upgrade behavior. Do not mix repositories from unrelated Termux installations.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Git fails in Downloads or /sdcard

Move the repository into Termux home:

mkdir -p ~/projects
mv ~/storage/downloads/example ~/projects/
cd ~/projects/example

If the directory is too large to move, copy it, verify the copy, and then work from the private copy. Cloning, staging, and committing are the operations most likely to expose shared-storage restrictions, so test with git status after relocating the project.

Termux cannot see Downloads

Run termux-setup-storage from the Termux shell and approve Android’s permission dialog. If ~/storage is missing, close and reopen the shell after granting permission, then run ls ~/storage. A revoked Android permission must be enabled again in the system’s app-permission settings.

The installed version differs from an article

This is normal for a rolling-release package system. Use python --version and node --version to identify what is actually installed. Compare those values with the project’s stated compatibility range rather than trying to install the number shown in a tutorial. The Node.js build setup’s 24.18.0 value is not a universal device version.

A command works in one directory but not another

Check the current directory with pwd and confirm that the expected file exists with ls. Python and Node.js commands that name a script look in the current directory unless you provide a path. Git commands operate on the nearest repository metadata, so running them outside the intended project can produce “not a repository” errors.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Installation stops partway through

Reconnect to the network, reopen Termux, and rerun pkg update && pkg upgrade. Package managers generally resume by checking which packages are already installed. If the same package remains broken, capture the complete error text, check the repository mirror with termux-change-repo, and avoid deleting package directories manually; manual deletion can leave dependencies inconsistent.

A practical first-session workflow

  1. Open the supported Termux app and update packages with pkg update && pkg upgrade.
  2. Install the toolchain using pkg install git python nodejs.
  3. Verify all three executables with their version commands.
  4. Create ~/projects and keep active repositories beneath it.
  5. Initialize a repository with git init or clone one with git clone.
  6. Run Python files with python file.py and JavaScript files with node file.js.
  7. Run termux-setup-storage only when an Android shared folder is required, and use the resulting links for file exchange rather than primary development.

An external keyboard can make sustained terminal work easier, but the cited Termux guidance does not establish a particular model as best. Choose based on whether your phone supports Bluetooth or wired input, the keyboard’s layout and size, and whether carrying it is worthwhile for your workflow.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.