diff --git a/src/helloworld.rs b/src/helloworld.rs
new file mode 100644
index 0000000000000000000000000000000000000000..4bf8e93969dc22b37954473eb5653e596bfb2093
--- /dev/null
+++ b/src/helloworld.rs
@@ -0,0 +1,14 @@
+// This is a comment, and is ignored by the compiler
+// You can test this code by clicking the "Run" button over there ->
+// or if you prefer to use your keyboard, you can use the "Ctrl + Enter" shortcut
+
+// This code is editable, feel free to hack it!
+// You can always return to the original code by clicking the "Reset" button ->
+
+// This is the main function
+fn main() {
+    // Statements here are executed when the compiled binary is called
+
+    // Print text to the console
+    println!("Hello World!");
+}
diff --git a/src/meson.build b/src/meson.build
index ed0a3091d6dfd4f3ed662c9ca654175491717019..b09a0b1d745a8efd31bf589520cc1b0e794830da 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -129,3 +129,8 @@ if with_glx != 'disabled' and not with_glvnd
     variables : ['glx_tls=@0@'.format(use_elf_tls ? 'yes' : 'no')],
   )
 endif
+
+if add_languages('rust', required : false)
+  executable('helloworld',
+             'helloworld.rs')
+endif