lxmcf/raylib-vapi

Bindings for for Vala to use the simple and easy to use graphics library Raylib.

20

stars

32

commits

C

primary language

May 10, 2026

updated

README

Raylib VAPI

Bindings for Vala to use the simple and easy to use graphics library Raylib.

Description

Raylib VAPI currently supports the core module of Raylib using a C style API for ease of code porting.

Some VAPI's will be released to follow a more OOP design as well if you wish to use them in a more traditional Vala style.

Supported Modules

ModuleSupportedOOP AvailableVAPI NameVersion
raylib:heavy_check_mark::x:raylib.vapi6.0
rlgl:heavy_check_mark::x:rlgl.vapi6.0
raymath:heavy_check_mark::x:raymath.vapi2.0
raygui:heavy_check_mark::x:raygui.vapi5.0
rpng:x::x:
rres:x::x:
rini:heavy_check_mark::x:rini.vapi3.0
physac:heavy_check_mark::x:physac.vapi1.1

Example

using Raylib;

public const int WINDOW_WIDTH = 800;
public const int WINDOW_HEIGHT = 450;

public static int main (string[] args) {
    init_window (WINDOW_WIDTH, WINDOW_HEIGHT, "raylib [core] example - basic window");

    set_target_fps (60);

    while (!window_should_close ()) {
        begin_drawing ();
            clear_background (RAYWHITE);

            draw_text ("Congrats! You created your first window!", 190, 200, 20, LIGHTGRAY);
        end_drawing ();
    }

    close_window ();

    return 0;
}

Contributors

edwood-grant

19 commits

lxmcf

13 commits

lxmcf/raylib-vapi

Bindings for for Vala to use the simple and easy to use graphics library Raylib.

20

stars

32

commits

C

primary language

May 10, 2026

updated

README

Raylib VAPI

Bindings for Vala to use the simple and easy to use graphics library Raylib.

Description

Raylib VAPI currently supports the core module of Raylib using a C style API for ease of code porting.

Some VAPI's will be released to follow a more OOP design as well if you wish to use them in a more traditional Vala style.

Supported Modules

ModuleSupportedOOP AvailableVAPI NameVersion
raylib:heavy_check_mark::x:raylib.vapi6.0
rlgl:heavy_check_mark::x:rlgl.vapi6.0
raymath:heavy_check_mark::x:raymath.vapi2.0
raygui:heavy_check_mark::x:raygui.vapi5.0
rpng:x::x:
rres:x::x:
rini:heavy_check_mark::x:rini.vapi3.0
physac:heavy_check_mark::x:physac.vapi1.1

Example

using Raylib;

public const int WINDOW_WIDTH = 800;
public const int WINDOW_HEIGHT = 450;

public static int main (string[] args) {
    init_window (WINDOW_WIDTH, WINDOW_HEIGHT, "raylib [core] example - basic window");

    set_target_fps (60);

    while (!window_should_close ()) {
        begin_drawing ();
            clear_background (RAYWHITE);

            draw_text ("Congrats! You created your first window!", 190, 200, 20, LIGHTGRAY);
        end_drawing ();
    }

    close_window ();

    return 0;
}

Contributors

edwood-grant

19 commits

lxmcf

13 commits

Languages

C

64.5%

Vala

35.4%