Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsiTechGuides 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.
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
- 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.
- Run
pkg update && pkg upgrade. Approve upgrade prompts when Termux asks. - Run
pkg install git python nodejs. The package names are exactlygit,python, andnodejs.
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.
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
- 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:
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.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →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
- 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:
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.
Recommended Free Tools
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
- 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.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteUnderstand 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.
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
- 【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-repoand select a working mirror when the configured mirror is unavailable or returns repository errors. - After changing mirrors, run
pkg updateand thenpkg upgradebefore retryingpkg 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.
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.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →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
- Open the supported Termux app and update packages with
pkg update && pkg upgrade. - Install the toolchain using
pkg install git python nodejs. - Verify all three executables with their version commands.
- Create
~/projectsand keep active repositories beneath it. - Initialize a repository with
git initor clone one withgit clone. - Run Python files with
python file.pyand JavaScript files withnode file.js. - Run
termux-setup-storageonly 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.
Quick Recap
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.

