GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Embed Notice

HTML Code

Corresponding Notice

  1. Embed this notice
    Aral Balkan (aral@mastodon.ar.al)'s status on Wednesday, 04-Feb-2026 00:44:58 JSTAral BalkanAral Balkan
    • Lenz Grimmer
    • Hetzner

    🥳 New module release: Hetzner Cloud OpenAPI Client

    https://codeberg.org/small-tech/hetzner-cloud-openapi-client

    This is an OpenAPI client for Node.js generated from the official Hetzner Cloud OpenAPI specification using Massimo.

    Recently, while reviewing the code for Catalyst¹, I realised that the Hetzner library I was using was deprecated. The only other client library listed on Awesome Hetzner Cloud for JavaScript was updated seven years ago². So I did a bit of research and discovered that Hetzner has an official OpenAPI specification (useful little things that you can generate documentation as well as working client code from). I also discovered Massimo³, a lightweight and easy to use OpenAPI client generator.

    So, anyway, a few minutes later, I had a working Node.js client generated but I thought I’d take a little more time to make it into a module in case anyone else wanted to use it.

    In the process, I also created a simple web app example with Kitten⁴ where you can enter your Hetzner API key in a web interface, have it persisted to the default Kitten database⁴ and then carry out a simple call to list your servers. The example uses the new/advanced class and event-based way of working with Kitten so you might find it interesting for that reason too (I haven’t had the chance to document this workflow properly yet).

    You can see the source code for the Kitten example here:
    https://codeberg.org/small-tech/hetzner-cloud-openapi-client/src/branch/main/example/index.page.js

    The cool thing is that because the client is generated from the official Hetzner OpenAPI specification, it is one command to update it should the specification change and you can be sure it matches exactly what’s in the API documentation.

    Enjoy!

    💕

    CC @hetzner @lenzgr

    ¹ https://catalyst.small-web.org
    ² https://github.com/hetznercloud/awesome-hcloud#javascript
    ³ https://massimohttp.dev/
    ⁴ https://kitten.small-web.org/tutorials/persistence/

    #Hetzner #HetznerCloud #API #OpenAPI #Massimo #NodeJS #JavaScript #servers #hosting #VPS #Kitten #SmallWeb #SmallTech

    In conversationabout 4 months ago from mastodon.ar.alpermalink

    Attachments




    1. https://s3-eu-central-1.amazonaws.com/mastodon-aral/media_attachments/files/116/007/464/390/044/227/original/04a7f7d3ad656128.jpeg

    2. No result found on File_thumbnail lookup.
      Cookie monster!
    3. Domain not in remote thumbnail source whitelist: opengraph.githubassets.com
      GitHub - hetznercloud/awesome-hcloud: A curated list of awesome libraries, tools, and integrations for Hetzner Cloud
      A curated list of awesome libraries, tools, and integrations for Hetzner Cloud - hetznercloud/awesome-hcloud
    4. No result found on File_thumbnail lookup.
      Welcome to Massimo
      Generate typed HTTP clients for your OpenAPI and GraphQL APIs

  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.