Endive: A JVM native WebAssembly runtime
Recorded: May 28, 2026, 8:03 p.m.
| Original | Summarized |
GitHub - bytecodealliance/endive: A JVM native WebAssembly runtime · GitHub Skip to content Navigation Menu Toggle navigation
Sign in
Appearance settings PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersView all resourcesOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorGitHub StarsArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing Search or jump to... Search code, repositories, users, issues, pull requests...
Search Clear
Search syntax tips Provide feedback Include my email address so I can be contacted Cancel Submit feedback Saved searches
Name Query To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up
Appearance settings Resetting focus You signed in with another tab or window. Reload to refresh your session. Dismiss alert bytecodealliance endive Public
Notifications
Fork
Star Code Issues Pull requests Actions Projects Security and quality Insights
Additional navigation options
Code Issues Pull requests Actions Projects Security and quality Insights
mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History1,422 Commits1,422 Commits.github.github .mvn.mvn android-testsandroid-tests annotationsannotations bombom build-time-compiler-clibuild-time-compiler-cli build-time-compilerbuild-time-compiler clicli codegencodegen compiler-maven-plugincompiler-maven-plugin compiler-testscompiler-tests compilercompiler dircachedircache docs-libdocs-lib docsdocs fuzzfuzz jmhjmh loglog logoslogos machine-testsmachine-tests nightly-testsuitenightly-testsuite runtime-testsruntime-tests runtimeruntime scriptsscripts simdsimd test-gen-libtest-gen-lib test-gen-plugintest-gen-plugin wabtwabt wasi-test-gen-pluginwasi-test-gen-plugin wasi-testswasi-tests wasiwasi wasm-corpuswasm-corpus wasm-toolswasm-tools wasmwasm .gitignore.gitignore .gitmodules.gitmodules ADOPTERS.mdADOPTERS.md AGENT.mdAGENT.md CODE_OF_CONDUCT.mdCODE_OF_CONDUCT.md CONTRIBUTING.mdCONTRIBUTING.md LICENSELICENSE NOTICENOTICE README.mdREADME.md SECURITY.mdSECURITY.md endive.pngendive.png jitpack.ymljitpack.yml mvnwmvnw mvnw.cmdmvnw.cmd pom.xmlpom.xml View all filesRepository files navigationREADMECode of conductContributingApache-2.0 licenseSecurityEndive A Bytecode Alliance hosted project Website | Endive is a JVM native WebAssembly runtime. It allows you to run WebAssembly programs with Reach out to us: let us know what you are building with Endive. Get started now with the official documentation Be the default runtime for Wasm on the JVM Roadmap Wasm binary parser Ongoing Performance On the press Chicory: A Zero Dependency Wasm Runtime for the JVM on Java Advent 2023 Prior Art asmble Who uses Endive? About A JVM native WebAssembly runtime endive.run/ Topics java webassembly wasm Resources Readme Apache-2.0 license Code of conduct Code of conduct Contributing Contributing Security policy Security policy Uh oh! There was an error while loading. Please reload this page. Activity Custom properties 30 1 2 Report repository Releases Uh oh! There was an error while loading. Please reload this page. Contributors Uh oh! There was an error while loading. Please reload this page. Languages Java WebAssembly Shell Rust Dockerfile JavaScript Other Generated from bytecodealliance/ba-template
Footer © 2026 GitHub, Inc. Footer navigation Terms Privacy Security Status Community Docs Contact Manage cookies Do not share my personal information You can’t perform that action at this time. |
Endive is presented as a JVM native WebAssembly runtime designed to execute WebAssembly programs without relying on any native dependencies or the use of JNI. The project aims to run WebAssembly code within any environment compatible with the Java Virtual Machine, prioritizing simplicity and safety in its design. It is explicitly positioned as a fork of Chicory by Dylibso, Inc., acknowledging their foundational contributions to the development of this technology. The motivation behind creating Endive stems from the friction points encountered when integrating established WebAssembly runtimes, such as v8, wasmtime, wasmer, and wasmedge, into existing Java applications. These existing runtimes, being implemented in languages like C/C++/Rust, introduce significant challenges regarding distribution and runtime safety. Specifically, distributing a Java library necessitates distributing associated native objects, complicating distribution matrices. Furthermore, utilizing these native runtimes at runtime requires Foreign Function Interfaces (FFI), which compromises the security and observability guarantees inherent in the JVM. Endive seeks to resolve these issues by establishing a pure JVM runtime, ensuring that all security and memory guarantees remain within the JVM context while enabling WebAssembly execution. The overarching goals for Endive are centered on establishing a superior standard for WebAssembly execution on the JVM. These goals include becoming the default runtime for WebAssembly on the JVM, maximizing safety, enabling the execution of WebAssembly in any JVM environment without requiring native code, ensuring full support for the core WebAssembly specification, and making integration with Java and other host languages idiomatic and easy. The development roadmap details the progress made in achieving these objectives, building upon work initiated in September 2023. Completed features include the development of a Wasm binary parser, a simple bytecode interpreter, the generation of JUnit tests from Wasm test suites, validation logic for safety, the establishment of a v1.0 API for stability and extensibility, and the creation of decoupled interpreter and compiler engines where build-time compiler passes adhere to the same specifications as the interpreter. Further completed achievements involve support for WASIp1, SIMD, tail calls within both the interpreter and compiler, exception handling, support for threads, extended constant expressions, garbage collection support, and multi-memory support. Ongoing development focuses on performance improvements and the support for WASIp2. The project leverages a substantial contributor base, with the repository showing a strong focus on the Java language, which accounts for approximately ninety-three point seven percent of the contributors. Endive aims to provide a secure, portable, and integrated solution for leveraging WebAssembly capabilities within the established environment of the JVM ecosystem. |