# CraftOS-PC — Modern ComputerCraft emulator

> Retro terminal emulator for running Lua programs and emulating ComputerCraft. (iPhone/iPad app by Jack Bruienne.)

- Source: https://appshunter.io/ios/app/craftos-pc/id1565893014 (this page in markdown: same URL + `.md`)
- Developer: [Jack Bruienne](https://appshunter.io/developer/1542538425)
- Category: Developer Tools, Utilities
- Price: Free with in-app purchases
- Rating: 4.80/5 from 17 App Store ratings · 17 written reviews indexed
- Age rating: 4+
- Requires: iOS 13.0 · 11 MB
- Languages: American English
- Released: 2021-07-23
- Data updated: 2026-08-22
- Monetization: free
- User reviews in markdown: https://appshunter.io/ios/app/craftos-pc/id1565893014/reviews.md

## What is CraftOS?

CraftOS-PC is a fantasy terminal that allows you to write and run programs inside an ‘80s-style text console.

CraftOS-PC emulates the popular Minecraft mod "ComputerCraft", which adds programmable computers to Minecraft using the Lua programming language. CraftOS-PC takes this experience outside Minecraft to allow you to run the same programs anywhere you go.

CraftOS-PC provides a set of functions (called APIs) that make it super easy to do simple tasks such as write text to the screen, read files, and more. The simplicity of these functions makes CraftOS-PC great for new programmers, but their power makes it possible to write all sorts of complex programs with less code.

If you aren’t ready to write programs yet, there’s already a large number of programs for ComputerCraft that will work in CraftOS-PC, ranging from simple games to whole graphical operating systems. These can be downloaded through the built-in Pastebin and GitHub Gist clients.

• Full Lua 5.2+ scripting environment and command-line REPL
• 16-color text-based terminal display
• Expansive virtual filesystem for program and data storage
• Built-in shell with syntax similar to most desktop shells
• APIs to easily access terminal, filesystem, Internet, event queue, and more
• Built-in programs make it easy to navigate & edit files without a single line of code
• Plenty of help documents to assist programmers
• Compatibility with thousands of existing ComputerCraft programs
• Over 3x faster than Minecraft mod and comparable emulators
• Emulation of all peripherals available in ComputerCraft
• Easily access configuration from inside CraftOS
• Exclusive graphics mode providing up to 256-color, pixel-based screen manipulation
• Edit Lua scripts from CraftOS or other code editing apps
• Open-source app makes it easy to suggest and contribute changes

Documentation on all of the APIs that ComputerCraft provides are available at https://tweaked.cc, and CraftOS-PC’s unique APIs are described at https://www.craftos-pc.cc/docs/.

Join the CraftOS-PC community at https://www.craftos-pc.cc/discord!

## Key features

- Lua 5.2+ scripting environment
- 16-color text-based terminal
- Virtual filesystem
- Built-in shell
- Extensive APIs
- Compatibility with ComputerCraft programs
- Exclusive graphics mode

## Pricing and in-app purchases

Base price: Free.

**One-time purchases**

| Purchase | Price | Type |
| --- | --- | --- |
| Plugin Collection 1 | $0.99 | one-time |


## Recent user reviews (10 of 17)

All indexed reviews: https://appshunter.io/ios/app/craftos-pc/id1565893014/reviews.md

### 5/5 — Ho my god thanks

*2026-06-09*

There is a problem the in app purchasse is broken. 

Love CraftOs thanks you

### 4/5 — AMAZING!

*2026-06-06*

The only two things missing from this is a copy feature to copy your code, and to be able to scroll instead of pressing enter 500 times then deleting all of them.

### 5/5 — Ho my god thanks

*2026-05-17*

Thanks for keeping this app updated i love this projet so much

### 5/5 — I love this🩷

*2025-11-13*

This is an amazing app.

### 1/5 — Bad

*2025-05-09*

Bad

### 5/5 — Absolute, unbridled peak

*2025-03-15*

Pocket computer will be real by 2014

### 5/5 — How to make to I start a workspace

*2024-08-19*

How please type under in massage

### 5/5 — Имба

*2024-05-22*

Имба

### 5/5 — Fantastic tool, and free, too

*2023-06-19*

Absolutely amazing FREE tool for learning not only ComputerCraft, but generally learning how to code in Lua. Worth a download as a non-Minecraft player just for the learning experience alone.

### 5/5 — Incredible!

*2023-01-23*

Absolutely amazing! This is perfect for my projects on ComputerCraft, and I can also just tinker around with Lua! 

Perfect for when I am coding away from my laptop!

## Frequently asked questions about CraftOS

### What is CraftOS-PC?

CraftOS-PC is a fantasy terminal that emulates the popular Minecraft mod 'ComputerCraft', allowing you to write and run Lua programs outside of the game. It provides a retro text console experience with a full Lua scripting environment.

### Is CraftOS-PC free to use?

Yes, CraftOS-PC is completely free to download and use. It does not require any payment to access its features.

### What devices can I use CraftOS-PC on?

CraftOS-PC is available for iPhone, iPad, and iPod devices. It is designed to run on iOS and iPadOS.

### Does CraftOS-PC have ads?

No, CraftOS-PC does not contain advertisements. It is a free and ad-free application.

### Can I run existing ComputerCraft programs on CraftOS-PC?

Yes, CraftOS-PC is designed for compatibility with thousands of existing ComputerCraft programs. You can download them through the built-in Pastebin and GitHub Gist clients.

### How often is CraftOS-PC updated?

The app was last updated on March 14, 2024, with version v2.8.1. Being open-source, it encourages community contributions for ongoing development and improvements.

### What is the age rating for CraftOS-PC?

CraftOS-PC has an age rating of 4+, making it suitable for a wide range of users interested in programming and retro computing.

### Where can I find documentation for CraftOS-PC?

Documentation for the ComputerCraft APIs is available at https://tweaked.cc, and CraftOS-PC's unique APIs are described at https://www.craftos-pc.cc/docs/. You can also join their Discord community for support.

## Version history (last 5 releases)

### v2.8.1 — 2024-03-14

Happy new year! This release of CraftOS-PC finally brings Lua 5.2 support along with compatibility with CC: Tweaked 1.109.3. In addition, it adds a new WebSocket server API, and lots and lots of critical crash fixes.

This version is a breaking release. Notably, all files are now handled in binary mode, which may break programs that have embedded UTF-8 characters (this was always discouraged for this reason). In addition, bytecode dumping and loading is disabled in standards mode, but it remains enabled when standards mode is disabled. However, despite the introduction of the goto keyword, it remains a valid identifier, so programs with variables or functions named goto should continue to function.

• Updated CC:T version to 1.109.3
  • Update to Lua 5.2
    • getfenv/setfenv now only work on Lua functions.
    • Add support for goto.
  • Remove support for dumping and loading binary chunks.
    • Only disabled in standards mode
  • File handles, HTTP requests and websocket messages now use raw bytes rather than converting to UTF-8.
  • fs.open now supports r+/w+ modes.
  • Add allow_repetitions option to textutils.serialiseJSON.
  • math.random now uses Lua 5.4's random number generator.
  • tostring now correctly obeys __name.
• Rewrote WebSocket server API (#337)
  • Use server = http.websocketServer(port) to create a server handle
  • server.listen() waits for a new connection, and returns a new WebSocket handle
  • Handles have an additional clientID field for identifying the client connection
  • server.close() closes the server
  • Events are now under the websocket_server_ domain
• WebSocket close events now send the close code if available
• Fixed WebSocket ping messages causing the socket to close
• Fixed many memory corruption issues around ropes
• Fixed some issues with debug hooks and yielding
• Fixed crash when erroring from a debug hook (#326)
• Debuggers now inherit the mount list from the original computer (#327)
• Fixed memory reporting when using string.rep (#328)
• Fixed fs.getFreeSpace not checking parent directories if the path doesn't exist (#330)
• Fixed crash when using HTTP in the VS Code extension (#332)
• Fixed repeated websocket.close calls causing a crash (#336)
• xpcall error handlers can now yield
• Added onboarding screen for navigation bar instructions

### v2.7.5 — 2023-08-08

CraftOS-PC v2.7.5 is a minor update that includes some new CC:Tweaked features, as well as some small fixes, plus a new in-app purchase for bonus plugins.

• Added plugin support on iOS through in-app purchases
  ° Use the `plugins` program to buy new plugin packs
  ° Only one is available at the moment, featuring `ccemux`, `joystick`, and `sound`
• Updated CC:T version to 1.106.1
  ° The shell now supports hashbangs (`#!`) (emmachase).
  ° Error messages in edit are now displayed in red on advanced computers.
  ° Improvements to the display of errors in the shell and REPL.
  ° Fix `rednet` queueing the wrong message when sending a message to the current computer.
  ° Fix the Lua VM crashing when a `__len` metamethod yields.
  ° `table` methods and `ipairs` now use metamethods.
  ° Argument errors now follow the standard "X expected, got Y" format.
  ° Add `coroutine.isyieldable`.
  ° Type errors now use the `__name` metatag.
  ° `xpcall` now accepts arguments after the error function.
  ° `speaker` program now reports an error on common unsupported audio formats.
  ° multishell now hides the implementation details of its terminal redirect from programs.
  ° `settings.load` now ignores malformed values created by editing the .settings file by hand.
  ° Ignore metatables in `textutils.serialize`.
  ° Fix `gps.locate` returning `nan` when receiving a duplicate location (Wojbie).
  ° Optimise JSON string parsing.
  ° Add `colors.fromBlit` (Erb3).
  ° Add custom timeout support to the HTTP API.
  ° The speaker program now errors when playing HTML files.
  ° `edit` now shows an error message when editing read-only files.
  ° Port `fs.find` to Lua. This also allows using `?` as a wildcard.
  ° Add option to serialize Unicode strings to JSON (MCJack123).
  ° Small optimisations to the `window` API.
  ° Lua REPL no longer accepts `)(` as a valid expression.
  ° Fix several inconsistencies with `require`/`package.path` in the Lua REPL (Wojbie).
• Added `term.relativeMouse` function, which converts `mouse_move` events into `mouse_move_relative` events with relative velocities
• Native `load` now uses Lua 5.2 syntax, matching Cobalt's behavior
• Fixed crashing when calling `monitor.blit` when the cursor is off-screen
• Fixed `modem.getNameLocal` not existing
• Fixed abort timeouts firing after the computer goes into sleep mode
• Fixed stack corruption when using `string.format("%q")`
• Fixed a niche case crash when the computer turns off while prompting for abort timeout

If you need help using CraftOS-PC, I'm available on the CraftOS-PC Discord server (https://www.craftos-pc.cc/discord) as @jackmacwindows. Feel free to ping me if you need anything.

### v2.7.3 — 2023-02-21

It's been a while since the last update! CraftOS-PC v2.7.3 brings a large number of fixes (which have been waiting for too long...), as well as a few goodies for Linux and mobile users.

• Updated CC:T version to 1.102.2
  • Moved Lua portions of `fs` and `http` outside the BIOS
  • Trim spaces from filesystem paths.
  • Fix `import.lua` failing to upload a file.
  • Reduce inconsistency with the table length operator in some cases
• Replaced rope and substring allocation with clusters
  • This should hopefully fix performance and memory allocation issues with string concatenation
• Added new multi-touch events on mobile platforms
  • `_CCPC_finger_touch`, `_CCPC_finger_up`, `_CCPC_finger_drag`
  • All events get finger ID, X, and Y as parameters
  • These events co-exist with single-touch mouse events
• iOS now has Page Up/Down keys on the arrow toolbar for quicker navigation
• Added function authentication for C functions to mitigate bytecode vulnerabilities
• Improved performance of binary `file.readAll`
• `unpack` no longer uses a table's `n` field
• Fixed error when setting palette colors on windows in 256-color graphics mode
• Fixed more crashing when filesystem functions fail (#280)
• Fixed crashes due to stack overflows
• Fixed WebSocket pings sending a close response (#214)
• Fixed crashes in `websocket.receive()` when receiving a message that's too large (#297, #214)
• Fixed vague error message responses when an HTTP request fails (#292)
• Fixed DAP crash from setting a breakpoint in an unknown file
• Fixed breakpoints activating on the wrong line
• Fixed first line of a file not being able to trigger a breakpoint
• Fixed debugger errors when invalid arguments are used on the ccdb command line (#294)
• Fixed precision issues with `os.epoch("nano")` (#299)
• Fixed `rawlen` and `__ipairs` being missing from the global table
• Fixed some inconsistencies with seeking beyond a file's limits (#310)

### v2.7.2 — 2023-01-21

CraftOS-PC v2.7.2 is mostly a maintenance release, fixing a bunch of bugs that have plagued people for a while. It also updates CC:T support to 1.101.1, which includes a new style for uploading files. I hope to make some more significant fixes in the next version (including some pervasive memory issues with ropes), but I needed to get these first few bugs squashed as soon as possible.

• Updated CC:T version to 1.101.1
  • File drag-and-drop now queues a file_transfer event on the computer. The built-in shell or the import program must now be running to upload files.
  • The peripheral now searches for remote peripherals using any peripheral with the peripheral_hub type, not just wired modems.
  • Add include_hidden option to fs.complete, which can be used to prevent hidden files showing up in autocomplete results. (IvoLeal72)
  • Add shell.autocomplete_hidden setting. (IvoLeal72)
  • Prevent edit's "Run" command scrolling the terminal output on smaller screens.
  • Mention WAV support in speaker help (MCJack123).
  • Add http programs to the path, even when http is not enabled.
  • Fix example in textutils.pagedTabulate docs (IvoLeal72).
  • Fix help program treating the terminal one line longer than it was.
• Fixed a syntax error in the CCEmuX plugin's `emu` program (#271)
• Fixed a bug causing copies out of virtual mounts to fail (#272)
• Adjusted some behavior of ropes to hopefully make them faster & use less memory
  • Further fixes are in progress to fully optimize memory usage
• Fixed issues when reading from a bad file handle
• Fixed crashing when some filesystem functions fail
  • This was causing autocompletion on `config` to fail on Windows (#273), as well as crashing when using `fs.getSize` on a folder (#281)
• Fixed failure to launch on Apple Silicon Macs due to incorrectly named libraries (#287)
• Fixed missing `chest.getItemLimit` method (#291)
• Adjusted some logic in WebSocket handles to fix some potential issues
• Fixed window palettes being broken in graphics mode

### v2.7.1 — 2022-09-02

After over a year since v2.6, CraftOS-PC is getting another major update. This version brings generic peripheral emulation and plenty of bugfixes to go around.

* Bumped CC:T version to 1.100.9
  * Added basic WAV support to speaker.lua
* Added basic generic peripheral emulation
  * New peripheral types: `chest`/`minecraft:chest` (`inventory`), `tank` (`fluid_storage`), `energy` (`energy_storage`)
  * `tank` and `energy` may also have custom types set on them (for emulating compatible blocks from other mods)
  * See the full documentation for more info
* Rewrote filesystem code to use C++17 filesystem library
* Added ability to resize monitors programmatically, including by block size (#261)
* Added `istailcall` field to `debug.getinfo`
* Adjusted configuration loading code to avoid crashes from invalid files
* Keystrokes now automatically reset modifier keys on mobile platforms
* Fixed "not enough memory" error when calling `string.rep` with a negative length
* Fixed a crash from invalid WebSocket data
* Fixed an HTTP issue causing the `Host` header to be set incorrectly when connecting to `localhost`
* Fixed a crash if a computer is closed before an HTTP request finishes
* Fixed a rendering issue when using a custom font with the hardware renderer
* Fixed `string.format("%q")` not accepting non-string arguments (#251)
* Fixed a typo in the `setGraphicsMode` argument checking code
* Fixed an issue causing the debugger to error after a reboot
* Fixed a crash when using `debug.getinfo(f, ">")`

*If you need help using CraftOS-PC, I'm available on the [CraftOS-PC Discord server](https://www.craftos-pc.cc/discord) as `@JackMacWindows#9776`. Feel free to ping me if you need anything.*

## Apps similar to CraftOS

| App | Rating | Price | Category |
| --- | --- | --- | --- |
| [WattUp](https://appshunter.io/ios/app/wattup/id1576818379) | 4.2 (5) | Free | Developer Tools |
| [LispPad Go](https://appshunter.io/ios/app/lisppad-go/id1565747728) | 4.9 (36) | Free | Developer Tools |
| [Rubyist - Ruby Scripting](https://appshunter.io/ios/app/rubyist-ruby-scripting/id1539089868) | 4.6 (93) | Free | Developer Tools |
| [Secure Terminal](https://appshunter.io/ios/app/secure-terminal/id1463284695) | 4.5 (60) | Free | Developer Tools |
| [SNMP Network Monitor](https://appshunter.io/ios/app/snmp-network-monitor/id1375270867) | 4.8 (135) | Free | Developer Tools |
| [NanoBeacon BLE Scanner](https://appshunter.io/ios/app/nanobeacon-ble-scanner/id6444070302) | 4.2 (5) | Free | Developer Tools |

## Related topics

[allegro startup asystent](https://appshunter.io/ios/topics/allegro-startup-asystent)

---

*Data collected daily from the US App Store and indexed by [AppsHunter](https://appshunter.io/). User reviews are verbatim App Store reviews. Ratings, prices and chart positions refresh continuously; this snapshot is from 2026-08-22.*
