I Created a WEB framework for Godot!

Поделиться
HTML-код
  • Опубликовано: 5 сен 2024
  • In this devlog, I talk about my experiment doing a Web Framework for Godot
    #godot #devlog #html

Комментарии • 45

  • @thatanimeweirdo
    @thatanimeweirdo Месяц назад +30

    Please consider open-sourcing this, I already got excited to contribute while watching this short showcase!

    • @spimortdev
      @spimortdev  Месяц назад +6

      Haha, that's awesome, I'll think about it 🙂!

    • @StiekemeHenk
      @StiekemeHenk Месяц назад

      Please open source it!
      I'd love if this was merged into Godot

    • @spimortdev
      @spimortdev  Месяц назад

      @@StiekemeHenk That will always be a plugin, as I don't think this can be merged in the engine itself, but I might open source it at some point 🙂!

    • @StiekemeHenk
      @StiekemeHenk Месяц назад

      @@spimortdev hmm, I'll take whatever I can get

  • @SiMeGamer
    @SiMeGamer Месяц назад +4

    I'll definitely never use this kind of thing, but I think it's a really cool project you've created.
    Was a really fun watch!

    • @spimortdev
      @spimortdev  Месяц назад

      Yeah thanks, I'm glad you like it! 😎

  • @JuanElorriagaYT
    @JuanElorriagaYT Месяц назад +4

    Omg congrulations for this! I'm from Brazil and your project is very awesome!

    • @spimortdev
      @spimortdev  Месяц назад

      Yeah thank you! I'm glad you like it 🥳

  • @Egaikko4
    @Egaikko4 Месяц назад +3

    I have absolutely no clue what you were talking about, but it seems cool!

    • @spimortdev
      @spimortdev  Месяц назад

      hahah, as long as it is fun to watch 🙂

  • @Snowdrama
    @Snowdrama Месяц назад

    I was thinking about building something like this, it's super cool to see I'm not alone. For mine I was considering using XML documents, that way you can get formatting help from XML extensions in VSCode. But yeah overall super cool, hope to see more about this eventually!

    • @spimortdev
      @spimortdev  Месяц назад

      I was looking for syntax highlighting for inline strings but did not find one sadly. I want the template to be inline because I want to "share" the variables with both the component and the template, like in React.
      But yeah, this is def. a cool projet 🙂

  • @noahcuroe
    @noahcuroe Месяц назад

    Cities Skylines 2 uses an off the shelf product called "Coherent UI" to use React (other frameworks should also work) for all of their UI with a native renderer. I'd recommend taking a look just so you aren't reinventing the wheel!

    • @spimortdev
      @spimortdev  Месяц назад

      Thanks for the tip! I took a look at it few weeks ago but I think its not compatible with Godot 😔

  • @synccyt_
    @synccyt_ Месяц назад +1

    this dude never fails to surprise me

    • @spimortdev
      @spimortdev  Месяц назад +1

      hahah Thanks a lot 😎

  • @Gamewithstyle
    @Gamewithstyle Месяц назад

    This looks very cool! The templating syntax is very promising. Now I just have to write a parser to pair with it that converts the css box model key words into style attributes in Godot and we can style UI with CSS like God intended 😂

    • @spimortdev
      @spimortdev  Месяц назад

      hahah that would be craaaazzzyyy 😎!

  • @nuxnux308
    @nuxnux308 Месяц назад

    coming from web development as well, i really miss data binding. hope to see some updates on this

    • @spimortdev
      @spimortdev  Месяц назад

      I realise now that this is something a lot of people are missing!
      Pretty cool to see that I'm not alone! 🙂

  • @collinvisser7108
    @collinvisser7108 Месяц назад +1

    Neat - Like the idea - make a plugin I am sure people will help with it

    • @spimortdev
      @spimortdev  Месяц назад

      Thanks! 🙂
      I might, we'll see how it evolves!

  • @dominoh1732
    @dominoh1732 Месяц назад

    this is so cool!
    great work!

    • @spimortdev
      @spimortdev  Месяц назад

      Thank you ! 😁
      I'm glad you like it!

  • @bappity
    @bappity Месяц назад

    this is BEAUTIFUL

    • @spimortdev
      @spimortdev  Месяц назад

      Yeah, I'm glad you like it 😎

  • @shukhambalie3936
    @shukhambalie3936 Месяц назад

    I have no idea what is this because I'm new with coding myself. It probably have to do with css and html implementation inside godot right? Is it lighter file size wise? I hope you can make godot plugin with this. It seem fun to use. Keep up the good work. 👍🏻

    • @spimortdev
      @spimortdev  Месяц назад +1

      Kinda!
      It's a "templating" language that allows to create Godot Node 🙂
      Thank you tho, I'm glad you like it!🙂

  • @SquidSnipes
    @SquidSnipes Месяц назад

    You should open source this i'm sure the godot community will make something amazing out of this!

    • @spimortdev
      @spimortdev  Месяц назад

      I might yes! We'll see 🙂 Godot community is always awesome!

  • @BumpDev
    @BumpDev Месяц назад +1

    wooo

  • @semaph0re
    @semaph0re Месяц назад +1

    You say "I dont want a browser in my game" but browser technology is commonly used inside games, look up coherent UI.

    • @spimortdev
      @spimortdev  Месяц назад

      Oh yeah I saw this not so long ago (sadly, after I did my experiment)! It's really interesting ngl!
      I think it does not have anything that runs on Godot right now right?

    • @thatanimeweirdo
      @thatanimeweirdo Месяц назад

      I've worked with Coherent in the past, it's really cool, but also quite hefty as it ships with a full build of Chromium and interop is not always fluid (So you'd have to use React/Vue within your Coherent Web UI)...

    • @spimortdev
      @spimortdev  Месяц назад +1

      @@thatanimeweirdo Yeah I bet! Obviously, for a full Web Platform a browser is kinda required. In my case, I went simple by just reusing what Godot already offers, I feel like it's not a bad idea 🙂

  • @msd-x990
    @msd-x990 Месяц назад

    This! +1

  • @zxuiji
    @zxuiji Месяц назад

    Great, so you made a slow as s**t method of updating a static UI.

    • @spimortdev
      @spimortdev  Месяц назад

      If you say so 🤷‍♂
      I guess you think that this recreate the nodes all the time.
      The whole project is based on a dependency system. Only when needed a control gets updated (not recreated, I only create it once).
      The goal is not to have a static UI, the goal is to be able to handle the dynamic aspect of a component.
      That's why it has a binding system
      At some extent it can even be more performant since a value knows when to update each control.
      Anyway, I did not benchmark anything, this is just a fun experiment. We'll see how/if it evolves 🙂

    • @zxuiji
      @zxuiji Месяц назад

      @@spimortdev For the label's case you just needed to embed some script into the input box that grabs sibling and changes it's content, it also could update the value at the same time. The list gneration, fine that's not exactly static

  • @GameDevForNoobs
    @GameDevForNoobs Месяц назад

    Lovely

  • @user-ll3bo4re6b
    @user-ll3bo4re6b Месяц назад

    interesting implementation, although Godot has its way in the UI, certainly a touch of html and css can be a more usable perspective. maybe you are doing the possible official implementation of interfaces with extension ".spimort"
    Greetings

    • @spimortdev
      @spimortdev  Месяц назад

      hahah maybe, who knows! 🙂