Hosting your projects

To host your project, first you need to make sure it’s compatable with Godot Engine 4.2.

Exporting

Then you need to create some files. Download and check out demo project as example.

1. Export your project as pack file (zip preffered). See godot documantation on exporting packs.
../_images/export_pck.png
2. Create thumbnail image (png, 16:9 preffered).

3. Create gate file as shown below.
# your_project.gate
[gate]

title="Your project name"
description="This will be in search"
image="path/image.png"
resource_pack="path/pack.zip"

# 'path' relative to your gate file
# or absolute url
After doing this you will have 3 files: project pack, thumbnail image, gate file.

Note

You can use TheGates Export Plugin that creates everything for you.

Hosting on a server

Now you are ready to host your project and open it in TheGates.

To test it locally use python SimpleHttpServer or Servez.

Just start your server, type gate file url in TheGates app and voilà.
Example: http://localhost:8000/your_project.gate

Note

If you have any difficulties ask the community.
To host on our server email us on thegates.browser@gmail.com

* Further steps are optional and not required.

Linking

To make a user to follow a link to another gate call from GDScript:

if get_tree().has_method("send_command"):
   get_tree().send_command("open_gate", ["https://example.com/project.gate"])

GDExtension

To load gdextension shared libraries:

  • Copy gdextension file section [libraries] to gate file.

  • Edit paths to much their relative url paths.

# your_project.gate
[gate]
title="GDExtension project"
description="This should work"
image="path/image.png"
resource_pack="path/pack.zip"

[libraries]
linux.debug.x86_64 = "path/your.so"
linux.release.x86_64 = "path/your.so"
windows.debug.x86_64 = "path/your.dll"
windows.release.x86_64 = "path/your.dll"
macos.debug = "path/your.dylib"
macos.release = "path/your.dylib"
macos.debug.arm64 = "path/your.dylib"
macos.release.arm64 = "path/your.dylib"

# 'path' relative to your gate file
# or absolute url

Warning

Windows, Linux and MacOS libraries required.
Debug and Release also required (can be the same file).