by NuiLab

NuiLab / code-vr

🐍 Program and explore real applications with virtual reality! Learn how to program, compete to buil...

130 Stars 11 Forks Last release: Not found MIT License 96 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

CodeVR Logo

License Unit Tests Coverage Tests Discord Server

🚧 Currently Under Construction 🚧 - Currently building the engine, follow the devlog at @alainxyz or at my website.

Code VR is a free virtual reality game for programming, designed to teach beginners the fundamentals of programming, let intermediate/advanced developers compete in daily programming competitions, explore existing codebases as if they were a real place, and collaborate with other programmers whether they're on their favorite Text Editor/IDE or in the game.

Currently it only supports Python, but we plan on adding support for more languages in the future.

| | Screenshots | | |:--:|:--:|:--:| | | | |


Code VR is built on top of Rust, Vulkan, OpenVR, and Language Servers.

The application is divided into the main application that handles rendering/networking/gameplay/mods, a language server that conforms to the Language Server Protocol Spec, and a Language VR Server to send language specific VR metadata along side the language server.

Data Flow

Source data flow

A set of source files are first converted to an abstract syntax tree, and then traversed to determine their position/relations to one another. This results in a

file. This file is then converted to a GLTF scene graph at runtime, which is rendered by our Vulkan rendering engine, and the application takes over to allow for changes in the scene and writing those changes to the coresponding



This project was sponsored by the OpenHID Lab, an HCI research lab part of the High Performance Database Research Center at Florida International University.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.