awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
ading2210 avatar

ading2210/linuxpdf

0
View on GitHub↗
4,955 stars·248 forks·C·GPL-3.0·9 viewslinux.doompdf.dev↗

Linuxpdf

linuxpdf is a virtual machine and system emulator that boots and executes a full Linux kernel and root filesystem within a portable document format file. It utilizes a PDF-embedded JavaScript runtime to provide a self-contained, portable computing environment.

The project implements a RISC-V processor emulator using asm.js to achieve hardware-independent execution inside a document viewer. It simulates a visual screen by updating a grid of text fields with ASCII characters and captures user keystrokes through document input elements to translate them into virtual machine interrupts.

The system covers the full virtualization surface, including RISC-V instruction virtualization, virtual display rendering, and keyboard input capture. The Linux kernel and filesystem are bundled as static binary data arrays embedded directly within the document structure.

Features

  • PDF-Based Virtualization - Runs a full operating system inside a PDF document to provide a self-contained, portable computing environment.
  • Asm.js Emulator Cores - Uses asm.js to execute a RISC-V processor emulator efficiently inside a PDF viewer.
  • RISC-V Hardware Emulation - Implements a virtual machine that runs a RISC-V processor inside a PDF document.
  • RISC-V Instruction Virtualization - Simulates the RISC-V architecture by mapping CPU instructions to equivalent JavaScript operations.
  • Document-Embedded - Packages a Linux kernel and filesystem into a single PDF file that runs without installation.
  • Embedded Binary Filesystems - Bundles the Linux kernel and root filesystem as static binary data arrays embedded directly in the PDF.
  • PDF-Resident Linux Virtual Machines - Provides a portable PDF file that boots and executes a full Linux kernel and root filesystem.
  • Embedded JavaScript Scripting - Leverages the PDF document's internal JavaScript runtime to drive the virtual machine's logic.
  • Emulated Linux Environments - Executes a full Linux kernel and root filesystem emulated within a PDF document viewer.
  • Cross-Platform Execution - Provides a consistent Linux execution environment across different devices using only a PDF reader.
  • Text-Based Screen Emulators - Implements a virtual screen by updating a matrix of PDF text fields with ASCII characters.
  • Virtual Display Emulators - Visualizes emulator output using a grid of text fields to simulate a hardware monitor.
  • Virtual Input Emulators - Simulates keyboard peripheral input by sending keystrokes from PDF fields to the virtual machine.
  • Virtual Machine Input Mappings - Captures keystrokes through document input elements and translates them into virtual machine interrupts.
  • PDF-Based System Emulators - Renders a virtual display and captures keyboard input using PDF form fields and text elements.

Star history

Star history chart for ading2210/linuxpdfStar history chart for ading2210/linuxpdf

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Linuxpdf

Similar open-source projects, ranked by how many features they share with Linuxpdf.
  • misprit7/computerrariamisprit7 avatar

    misprit7/computerraria

    3,840View on GitHub↗

    Computerraria is a digital logic circuit simulator and computer architecture educational tool. It provides a sandbox environment for building and testing functional computer systems by connecting modular logic gates and electronic wires. The project serves as a RISC-V architecture simulator that executes RV32I machine code using virtualized hardware components. It includes a virtualized CPU toolchain that uses containerized systems to compile source code into binary formats compatible with these custom processor architectures. The system covers digital logic circuit design and RISC-V ISA sim

    Rustlogic-gatesrisc-vriscv
    View on GitHub↗3,840
  • sebastienros/jintsebastienros avatar

    sebastienros/jint

    4,653View on GitHub↗

    Jint is a JavaScript interpreter for the .NET ecosystem that executes code without requiring a browser or Node.js environment. It is an ECMAScript compliant engine that provides a sandboxed scripting runtime with configurable limits on memory and time to run untrusted code. The engine features a native object bridge that exposes .NET classes and methods to JavaScript scripts for bidirectional data exchange. To reduce overhead during repeated executions, it utilizes a precompiled script cache to store parsed JavaScript in memory. The project covers asynchronous script execution and promise ha

    C#
    View on GitHub↗4,653
  • anbox/anboxanbox avatar

    anbox/anbox

    9,056View on GitHub↗

    Anbox is an Android container environment and runtime designed to execute Android applications on Linux desktops. It utilizes a container-based system to run the Android operating system without the overhead associated with traditional hardware virtualization. The system features a hardware abstraction layer that routes hardware access and sensor data through a host daemon to provide accelerated rendering. It integrates with the Linux desktop by mapping individual Android application layers to separate windows, allowing apps to function as distinct desktop applications. The project supports

    C++
    View on GitHub↗9,056
  • gosub-io/gosub-enginegosub-io avatar

    gosub-io/gosub-engine

    3,673View on GitHub↗

    Gosub-engine is an HTML5 browser engine and web rendering pipeline that parses HTML5 and CSS3 to compute layout and render web content to pixels. It functions as a JavaScript runtime environment with a virtual machine and event loop for handling dynamic logic and asynchronous tasks. The system also includes a web storage manager for persisting cookies, local storage, and session storage. The project features a headless browser renderer capable of generating page images or extracting plain text without a visible window. It supports cross-platform graphics rendering through pluggable CPU and GP

    Rustbrowserhtml5rust
    View on GitHub↗3,673
See all 30 alternatives to Linuxpdf→

Frequently asked questions

What does ading2210/linuxpdf do?

linuxpdf is a virtual machine and system emulator that boots and executes a full Linux kernel and root filesystem within a portable document format file. It utilizes a PDF-embedded JavaScript runtime to provide a self-contained, portable computing environment.

What are the main features of ading2210/linuxpdf?

The main features of ading2210/linuxpdf are: PDF-Based Virtualization, Asm.js Emulator Cores, RISC-V Hardware Emulation, RISC-V Instruction Virtualization, Document-Embedded, Embedded Binary Filesystems, PDF-Resident Linux Virtual Machines, Embedded JavaScript Scripting.

What are some open-source alternatives to ading2210/linuxpdf?

Open-source alternatives to ading2210/linuxpdf include: misprit7/computerraria — Computerraria is a digital logic circuit simulator and computer architecture educational tool. It provides a sandbox… sebastienros/jint — Jint is a JavaScript interpreter for the .NET ecosystem that executes code without requiring a browser or Node.js… ncsoft/unreal.js — Unreal.js is a JavaScript runtime and scripting layer for Unreal Engine that embeds the V8 engine to implement game… gosub-io/gosub-engine — Gosub-engine is an HTML5 browser engine and web rendering pipeline that parses HTML5 and CSS3 to compute layout and… anbox/anbox — Anbox is an Android container environment and runtime designed to execute Android applications on Linux desktops. It… nilsirl/dockerc — dockerc is a container image compiler that converts OCI-compliant images into standalone executable binaries. It…