Introduction
To lower the usage threshold for community users and enhance the user experience, the IvorySQL community has specially launched the IvorySQL-WASM project to help users quickly demo online.
IvorySQL-WASM is developed based on the open-source Postgres-WASM framework. It allows users to experience IvorySQL directly in their web browsers without local installation or complex deployment. By combining WebAssembly and virtualization technology, IvorySQL-WASM provides a simple, lightweight, and easily accessible way for developers, testers, and database enthusiasts to explore the powerful features of IvorySQL.
Technical Analysis
The core technologies of IvorySQL-WASM include:
-
V86: An x86 emulator that simulates the hardware environment required for a virtual operating system, including components such as CPU, memory, VGA, BIOS, and serial ports.
-
BuildRoot: Used to build a minimal Linux system image that runs on V86, integrating the IvorySQL 4.4 service and its stable operating environment.
-
WebAssembly (WASM): A low-level assembly-like binary instruction format that compiles C/C++ code into WASM modules using tools like Emscripten[1], allowing the existing C library ecosystem to be ported to the web platform. WASM features a compact binary format and near-native execution performance, making it the core technology for running database services in the IvorySQL-WASM project.
Quick Deployment
If developers want to deploy the IvorySQL-WASM project locally, they can refer to the following steps:
Linux Environment
- Prepare the required dependency tools: Node.js and npm.
- Clone the project:
<span>git clone [email protected]:IvorySQL/ivorysql-wasm.git</span> - Navigate to the
<span>package/runtime</span>directory and start the HTTP service:<span>npx serve</span> - Access in the browser:
<span>http://server_ip:3000</span>
Windows Environment
- Download and install Node.js[2].
- Execute
<span>npx.cmd serve</span>in the corresponding directory in PowerShell to start the HTTP server.

Experience
By visiting <span>http://192.168.31.186:3000/</span>, users can experience IvorySQL online, such as creating a <span>t1</span> table and listing the tables.

When running the minimal Linux virtual machine, the browser needs to download the relevant image system files (approximately 35MB) and state snapshots (15MB). Therefore, the first time the page is opened, it may take a few seconds to over twenty seconds, depending on whether the HTTP service is in an internal or external network environment. The state snapshot is used for quickly loading the pre-configured database.
Through the task manager, it can be observed that the operation of IvorySQL in the browser has a relatively ideal CPU and memory usage.

Notes
-
The database is stored in memory, and refreshing the page will clear the database, restoring the system to its initial state.
-
IvorySQL uses a dual-port design, with the default connection port being 1521. If you need to log in from port 5432, please exit psql in the shell terminal and then execute: psql -U postgres -p 5432 -d postgres

-
If users want to save the current database, they can click “Save state to file,” and the browser will automatically generate and download the
<span>v86state.bin</span>file; to use the saved database again, click “Restore from file” on the page and upload the<span>v86state.bin</span>file. -
The minimum memory configuration for the V86 system is 128 MB, which is currently configured.
Developers can modify the source code to meet actual needs.
- For the BuildRoot part, please refer to
<span>package/buildroot/README.md</span> - For the V86 part, please refer to https://github.com/copy/v86/releases/tag/latest
- For the web page part, please refer to
<span>package/runtime/README.md</span>
Community Edition Coming Soon
The IvorySQL-WASM community edition will be released alongside IvorySQL 4.5. For more details, please follow the IvorySQL official website[3] and this public account for updates.
HOW 2025 Preview
Focusing on the core theme of “PostgreSQL Technology Ecosystem,” the HOW 2025 Ecological Conference will open on June 27 in Jinan, focusing on global database technology development trends, open-source innovation, and industry practices, creating a deep integration platform for technology exchange among industry, academia, and research. The conference will last for two days, collaborating, learning, and innovating around PostgreSQL to jointly promote the future of PostgreSQL technology.
Currently, the call for topics is in full swing! Whether you are a PostgreSQL kernel developer, DBA, or a technical expert in the PostgreSQL field, you are welcome to share your valuable technology and experience.
- Official website: https://howconf.cn/
- Direct link for topic submission: https://jsj.top/f/Tr5eXn
Reference Links
[1]
Emscripten: https://emscripten.org/
[2]
Node.js: https://nodejs.org/dist/v22.15.0/node-v22.15.0-x64.msi
[3]
IvorySQL Official Website: https://www.ivorysql.org/zh-cn/
Follow our public account for more community updates
– Recommended Reading –
PGConf.dev 2025 successfully concluded! The HOW 2025 Ecological Conference is about to set sail!Global PG experts gather in the spring city! The HOW 2025 Ecological Conference invites you to submit topicsIn-depth analysis of the SELECT query execution mechanism of PostgreSQL foreign data wrappers (FDW)Technology knows no boundaries, co-creating the future | Highlights of the PG Global Developer Conference (PGConf.Dev)Exploring the functionality of table access methods: Sequential scan analysis– About IvorySQL –IvorySQL is an open-source PostgreSQL compatible with Oracle, led by Hango Co., Ltd.IvorySQL closely collaborates with the PostgreSQL international community to maintain synchronization with the latest PG version kernel, providing users with a convenient upgrade experience. Based on a dual parser architecture design, it is 100% compatible with native PostgreSQL, supports a rich ecosystem of PostgreSQL tools and extensions, and provides customized tools based on user needs. At the same time, IvorySQL offers more comprehensive and flexible Oracle compatibility features, with high SQL and PL/SQL compatibility, enabling enterprises to build more efficient, stable, and flexible database solutions.Official website:https://www.ivorysql.orgGitHub (feel free to click star to bookmark):https://github.com/IvorySQL/IvorySQLCommunity:Search for “ivorysql_official” on WeChat to add the assistant to the group