Installation and CLI
This page explains how to install RayQuiro 0.1.0, how modules are installed, and what the full rqio command set looks like.
🚀 Install RayQuiro
Quick Install (Recommended)
Windows (PowerShell)
Run this one-liner in a PowerShell terminal:
irm rq.raytolfas.cc | iex
Linux / macOS (Bash)
Run this command in your terminal:
curl -s rq.raytolfas.cc/linux | bash
The installer does the following automatically:
- Downloads the latest
update.jsonto resolve the download URL. - Downloads the latest
rqiobinary (orrqio.exefor Windows). - Installs it into the system binaries directory (
C:\Program Files\RayQuiroon Windows or/usr/local/binon Linux). - Adds the installation directory to the system
PATHenv variable.
After installation, verify it works:
rqio version
Build From Source
Clone the RayQuiro repository and build the binary:
Windows (PowerShell)
git clone https://github.com/Raytolfas/RayQuiro.git
cd RayQuiro
./build.ps1
Requirements: MSYS2 (for GCC/G++), PowerShell 5+
Linux / macOS (Bash)
git clone https://github.com/Raytolfas/RayQuiro.git
cd RayQuiro
mkdir build && cd build
cmake .. -DRAYQUIRO_ENABLE_ENGINE=OFF
make -j$(nproc)
sudo cp rqio /usr/local/bin/
Requirements: GCC/G++ (C++17), CMake,
libpq-dev(for SQL db module support)
⚙️ CLI Command Reference
Running Scripts
| Command | Description |
|---|---|
rqio file.rq | Run a .rq source file directly |
rqio run file.rq | Explicit run form (same as above) |
rqio run --vm file.rq | Execute through the RayQuiro VM path |
rqio bundle.rqb | Execute a pre-compiled .rqb bytecode bundle |
Building and Packaging
| Command | Description |
|---|---|
rqio build file.rq | Compile to a native Windows .exe |
rqio build file.rq -o out.exe | Compile to a custom output path |
rqio pack file.rq | Create a .rqb bytecode package |
rqio pack file.rq -o out.rqb | Custom output path for bytecode |
rqio bundle file.rq | Create a distributable bundle directory |
rqio bundle file.rq -o dir | Custom output directory |
rqio build-vm file.rq -o dir | VM-focused bundle alias |
Project Management
| Command | Description |
|---|---|
rqio init <folder> | Initialize a new RayQuiro project |
rqio fmt <file.rq> | Format a RayQuiro source file in place |
rqio version | Print the current rqio version |
rqio help | Show all available commands |
Module Management
| Command | Description |
|---|---|
rqio install <name> | Install a source framework or native module globally |
rqio install <name> --local | Install locally into the current project |
rqio install rayquiro.web | Install the rayquiro.web native module |
rqio install rayquiro.ui | Install the rayquiro.ui native module |
rqio install rayquiro.app | Install the rayquiro.app native module |
rqio install rayquiro.engine | Install the rayquiro.engine native module |
Framework Management
| Command | Description |
|---|---|
rqio framework install Owner/Repo | Install from GitHub |
rqio framework install Owner/Repo@branch | Install a specific branch |
rqio framework install Owner/Repo --local | Install locally |
Updates
| Command | Description |
|---|---|
rqio self-update | Check for updates and interactively install |
rqio self-update check | Just check for updates without installing |
💡 Auto-Update: In
0.1.0,rqioautomatically checks for updates once every 24 hours on startup and prompts the user with an update dialog.
📦 Installing Official Modules
Native Modules (.dll / .so)
Install globally (available to all projects on your machine):
rqio install rayquiro.web
(Note: Windows-specific UI modules like rayquiro.ui and rayquiro.app are only available on Windows).
Install locally (only available in the current project):
rqio install rayquiro.web --local
Local installs appear in .rq_modules/native/:
.rq_modules/
native/
web.dll # Windows
web.so # Linux
Source Frameworks
Install directly from GitHub:
rqio framework install RayQuiro/Telebot
rqio framework install RayQuiro/Telebot@main
rqio framework install RayQuiro/Telebot --local
Install from the approved registry by name:
rqio install telebot
rqio install telebot --local
The registry file is located at:
https://raw.githubusercontent.com/Raytolfas/RayQuiroAssets/main/frameworks.json
📁 Project Layout
rqio init my-app creates this starter structure:
my-app/
main.rq
rqproject.json
.rq_modules/
build/
.gitignore
rqproject.json Fields
| Key | Description |
|---|---|
name | Project name |
version | Project version string |
entry | Main script entry point |
build_dir | Output directory for builds |
Example:
{
"name": "my-app",
"version": "1.0.0",
"entry": "main.rq",
"build_dir": "build"
}
🗂️ Module Resolution Directories
When a non-built-in import is encountered, rqio searches for it in this order:
- Direct local relative paths (e.g.
./lib/math.rq) - Project-local source modules in
./.rq_modules/ - Project-local native modules in
./.rq_modules/native/ - User-level source frameworks:
%USERPROFILE%/.rqio/frameworks(or~/.rqio/frameworkson Linux) - User-level native modules:
%USERPROFILE%/.rqio/modules(or~/.rqio/moduleson Linux) - Machine-level native modules:
C:\Program Files\RayQuiro\modules(or/usr/local/lib/rayquiro/moduleson Linux)