cables.gl intro workshop

Free in-person workshop in Cologne

We’re hosting free in-person workshops here in Cologne for anyone interested in getting started with cables.gl

Just bring your laptop and a mouse, and you’ll have your first patch ready by the end of the session! 

In 2 - 3 hours, we'll cover:
  • What cables.gl is
  • How it works
  • How to get started with your first patches

If you’d like to join us, please use the following link to choose one of the available sessions:

Also, please help us spread the word by sharing this with your friends and colleagues. Thanks!

Location: 
undefined development UG / Bürogemeinschaft 
Goltsteinstraße 28-30 
50968 Köln 

Language:
DE, EN or both, depending on the audience.

Thanks, and hopefully see you soon, 
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

cables.gl monthly challenge – june 2026

June challenge prompt: “cables sticker design”

Each month, we vote on one shared prompt to create something using cables. 
This month's prompt is "cables sticker design" 🙂 

Special treat: If manageable, we will print the best designs and send them to the participants. 

Join our next meetup to see what everyone came up with. Or jump straight in - there is still time to create your own patch for the June Challenge!


How to participate:
  1. Make a patch with the monthly challenge prompt as a conceptual/aesthetic guideline
  2. Make your monthly challenge post public for others to view
  3. Post it in the discord Monthly Challenge channel, and if you want, join our meetup on July 1st to show your work
  4. Export to reel, use the 'add collaborators' feature on Instagram and add cables.gl when you make your post


Kudos to b00m for starting this initiative!

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

Animation/Timeline Update

We’ve completely rebuilt the Timeline — bringing true keyframing to your patches so you can animate any parameter with precision, from subtle color fades to complex camera moves.
Designed for both developers and motion designers, this is your space to shape motion — set keyframes, curve your easing, and see every change happen in real time.

Rewritten from the ground up with a cleaner interface, better performance and smoother workflow, the Timeline gives you the precision of a professional animation tool, right inside your browser.
Let’s dive right in!

What is the Timeline?


The Timeline is a keyframe-based animation editor in cables.gl that lets you animate any numerical parameter in your patch with precision. It brings professional-grade motion control to your workflow — whether you are fine-tuning logic or shaping movement, timing and easing. With an intuitive interface for keyframes, curves, and clips, the Timeline gives you full visual control over how your projects evolve over time.


Overview


The overview line in the cables.gl timeline is a compact preview of your entire animation. It shows all keyframes across time, letting you zoom in or out and navigate quickly through the full timeline. You can drag the view to reposition the visible area and always see where the green playhead is within the animation’s overall duration.

Dragging Keys


you can drag keyframes to adjust their timing or value directly. Click a key to select it, then drag it left or right to change its position in time. You can also select multiple keys and move them together using the yellow drag area that appears below the tracks. Dragging the edge handle of this yellow area stretches or compresses the selected keys, changing the animation’s duration without altering their relative timing.

Loop Area


The Loop Area  lets you repeatedly play a selected part of your animation. It helps you focus on and refine short sequences, for example, syncing motion to music or perfecting a transition, without replaying the entire animation. You can move or resize the loop area, and remove it with the X icon.

Example Patch

Tutorials on YouTube

Checkout our Timeline Tutorial Playlist on youtube

Repeat Modes


They define how an animation behaves after its last keyframe. By default, Loop Mode it it's Off, meaning the animation holds the final keyframe’s value indefinitely. Repeat makes the animation play continuously from the first to the last key. Mirror mode repeats the animation in reverse each time, creating a seamless back-and-forth motion. Offset mode repeats the animation but adds the end value of each loop as the starting point for the next—useful for progressive, endlessly increasing motions like scrolling or growing effects.


Interpolation Methods


Interpolation methods control how values change between keyframes in the timeline. Linear interpolation creates straight, even transitions. Absolute/Step holds each value until the next keyframe, ideal for toggles or scene switches. Preset Curves provide common easing types like ease-in or ease-out for quick, natural motion. Bezier Curves give full manual control with adjustable tangents for fine-tuning curves. Finally, Clip interpolation lets a keyframe trigger a stored animation clip, blending reusable motion into your timeline.

Counting Beats


Synchronize animations to music or rhythm. When you add the Timeline BPM operator, it draws visual beat markers directly in the timeline. Each small rectangle represents a beat, with every fourth beat highlighted to indicate the start of a new bar. Adjusting the BPM value updates the spacing of these markers

Clips 


Clips let you save and reuse animations across multiple parameters or operators. When you enable the Clip option in an Anim operator and give it a name, that animation becomes a reusable clip stored in your project. You can then apply this clip to any keyframe in another animation track, allowing updates to the original clip to automatically propagate everywhere it’s used—perfect for creating consistent, repeatable motion patterns.

Example Patch


Check out this example patch from franck: We started collecting patches showing keyframed animations in a patchlist, let us know if you want to contribute!

Ops

Cables meetup on discord

Every months first wednesday we have a meetup on our discord server! You can ask questions and we will answer and sho the newest cables features!

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

Thank you!

June 2025 Release

After about six months since the last release we are excited to share a huge update on what has been happening on cables.gl. We have been hard at work delivering new features, powerful ops, and countless improvements to make your patching experience even better.

As always you can jump right into all the changes by reading the raw data in the changelog, or you keep reading, and we walk you through some of the more interesting changes. We will also give an outlook into the future...

Along with everything we will show you in this rundown, we changed a lot of things in the background, making things run faster, more reliable and make them more future-proof to build on this foundation later. Some smaller things have also changed on the cables.gl website. More elements are reachable via the keyboard and the general placement of elements and actions has been unified in a few places. We hope you still find your way around.

But, to stay focussed, here are the big, visible ones:

Editor improvements

Rearrange ops

Rearranging ops can be both tedious and satisfying. It can be more satisfying from now on by holding down the shift key while moving any op around. This way the op will only move on one axis and snap to fitting places.

Using your keyboard

The parameter panel for each op got an update to make it more accessible using only the keyboard. Pressing the tab key will get your to the next option in the panel, shift-tab will navigate backwards. No need to move your hands away from they keyboard anymore!

Op highlight colors

are now displayed as a left border and will not colorize the whole op.

Shortcut search

Did you know entering "rtt" or "mift" in the opselect will give you Ops.Gl.RenderToTexture and Ops.Gl.Meshes.MeshInstancerFromTexture respectively? We tweaked the scoring and the results of these searches a bit to make it even faster to reach those ops with the long names...looking at you "aoofb"!

Quicktrigger

And as a small convenience while patching, every op with a inTriggerButton port will now show the trigger button in the parameter panel, even when the port is linked.
Copy your assets

Cables now lets you copy all the referenced assets in a patch to the local patch via an icon in the file manager or command in the command pallette. This will copy the asset from its former location, update all the ops using that asset and thus remove the reference to the patch holding the asset.

Search for usages

To check if this worked, or to find usages of assets in a patch we added and improved the search-button in the asset details to find any usage of that asset easily. And while we are in the asset details...did you know you can  edit text-files right in the cables editor. Now even has more and better options for syntax highlighting.

Simple edit

From the parameter panel of any op working with files the input port has been reworked to give more information about the asset location and make it easier to work with external urls, as opposed to files uploaded to the patch. If the file can be edited in the cables editor it will now show an icon to open the editor to start your changes.
Manage your ops

The "Manage Op" tab got a lot more powerful and more informative with this update. It is now the central place to make changes to any operator. Be it cloning, renaming, adding dependencies or attachments or even deleting the op.

A simple click on the icon above the param panel will get you to all the information (description, visibility, changelog, ...) and let you manage your op. To make it a bit more clear what you are working on we now show the full op name and namespace here and in the opselect.

New standalone version

While the standalone version of cables follows the development state of cables more closely, we give it a new minor version number with every release of cables.gl and announce some special features in this blog post. All the changes to the cables editor are usually also available in the standalone version, so check that out as well.

Better video support

Some features only make sense in the standalone though. With the latest update we fixed a bug that prevented playback of and especially skipping around in a lot of video formats. A few more places interact with your local file-explorer/finder to get to the code of ops, the location of your patch or the directory containing that asset you are using.

Presentation mode

Most notable we added two new editor preferences that make the application open in fullscreen and another one to maximize the renderer on start. This way you can open cables standalone in "presentation mode" and have no one see your cables salad. Both of these states can also be set via command line options (`--fullscreen` and `--maximize-renderer`), or even using the new Ops.Ui.MaximizeRenderer op.

Op Dependencies

The JavaScript ecosystem gives us a lot of read-made, free and open-source libraries to integrate functionality into our ops and patches. This update revamps the way cables works with and loads libraries and opens up usage to a whole new set of things to use by supporting libraries packaged as ESM. All this can be managed from - you guessed it - the "Manage Op" tab. We even updated the documentation and provide some examples to work with Web Workers or WASM files.

Add dependencies

In the "Manage Op" tab you will find a new, improved section on adding, removing and managing op dependencies. You can upload library files, fetch them from a CDN (like cdnjs, jsdelivr or unpkg), load all the dependencies of another op or even add NPM packages in the standalone. Unsure how your library was packaged? The updated documentation gives you some guidelines on how to decide...or simply fall back to trial-and-error.
Manage dependencies

From the same place you can remove any library that is no longer needed, or download a previously uploaded file to maybe be used in another op or patch. The top of the "Manage Op" tab will also show a warning if your op is still using the old system of loading libraries, so does the op-page and the todos page of the team responsible for the op...if any. So revisit your ops that use external libraries and migrate to the new system.

New ops

HTML and CSS ops

While working on a client project we added some new operators to make it easier to create user interfaces using HTML and CSS that then drive the interaction of your patch. The combination of Ops.String.HandleBarsHtml and Ops.Html.QuerySelectorAll along with the some of the new ops makes it really easy to create rather complex interfaces using HTML and CCS in cables.

You can now add custom listeners to and array of elements, query their data attributes or currently attaches css classes and act on that, individually. Navigating the DOM with Ops.Html.ElementGetClosest and comparing with Ops.Html.ElementEquals gives a lot of power to this new workflow. Also check out Ops.Html.DraggableElement for an easy what to drag elements around using the mouse.
Various other Ops

Ops.Ui.VizImageUrl let's you show/debug images in your patch that are not a texture, like uploaded assets for URLs ourside cables. The Ops.Sidebar namespace has gotten two new members to add custom HTML and a date picker. Ops.Html.CanvasToBase64 let's you create a base64 string from any canvas, you could use Ops.Html.QuerySelector to get any external canvas and grab a screenshot from that with Ops.Gl.Textures.Base64ToTexture. Use Ops.Color.GradientColorArray and Ops.Color.ColorArraySort to create and work with color arrays and put in Ops.Gl.ShaderEffects.VertexArea to freely transform an area of you mesh.

Check out the examples of the ops by clicking on them!

Backups

When exporting your patch to be used in the standalone version you get all the operators, all the assets, all the libraries and everything else that is needed to run a patch. This also applies to cables' backup system. Your downloaded patches can be imported back into cables without interfering with the original patch. This gives you an easy, offline, offsite, local backup.

If you support us on Patreon cables does all of this for you, stores the backups on our servers and periodically creates automatic backups of your patches to let you sleep better. Check out the documentation on how that works.

Creating backups

A click on "create backup" in the editor will lead you through the process of creating a backup of your patch. Depending on wether or not you have storage space (left) in your supporter level this will let you pick a name for the backup or simply lead you to the patch-export tab for a download.

Get some space

Every cables supporter level comes with backup storage space on our servers. You can see and manage the backups (manual and automatic ones) from your MyData section on cables.gl.
Working with backups

In the editor or in the MyData section on cables.gl you will be able to see your currently used and free space. Via the context menu you can choose to restore a backup to a new patch, delete the backup to free up space, download it for offline backup or use in the standalone or mark any automatic backup to not be deleted with "keep this backup".

Automatic backups

For a deeper understanding on how this system, and especially the automatic backups, work we updated our documentation on imports and backups.

If you would like to have automatic backups of your cables.gl patches:

New roadmap

The last roadmap we published is almost a year old, we crossed of a lot of the things that we had planned and we feel that we should set new goals for the closer future.

The items below give an overview on what we plan to do in the next few months. All of them are also tracked on our public issue tracker. Check out the roadmap and give feedback to steer us in the right direction! Or click individual topics you are interested in in the list below.

Supporting development 

Focusing on cables development and implementing features on the above roadmap takes time and money. We are (again) super-proud to having been selected for another round of funding in the NGI Zero Commons Fund set up and managed by NLnet

For a second time they are providing money and services that help keep us working on cables and giving this back to the (open-source) community. All of the items above are supported via our new project at NLNet. 


If you have any means or ideas on how to financially support cables.gl development beyond a patreon membership, do not hesitate to contact us.  There might also be other ways for you to give back to cables.gl and it's community.

These were only the cherry-picked items from the massive changelog of the last release. Check the details in the changelog itself, if you are interested.
Otherwise head over to the fresh and new cables.gl and start using all the latest and greatest!


In any case: give us feedback! Talk to us on social media, on discord or on GitHub.

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

The following users helped to make this release possible by their membership on Patreon.

kikohs - thanks for your "Gold" membership
wirmachenbunt - thanks for your "Gold" membership
keepitvisual - thanks for your "Gold" membership

Thank you!

August 2024 Update

A new update to cables.gl, with new features, quality of life improvements and some bug fixes.

Read up on all the changes in the changelog, or continue reading to see how we improved working with HTML and CSS, how you can now manage and rename ops directly in the editor, and how you keep track of everything that might go wrong while patching.

Sounds interesting? Let's start...

HTML/CSS Workflow

HTML and CSS are the bread and butter of every web developer. Even when working in 3D-Space, you might end up using CSS, since that is what the browser is more used to.

We added Ops that make it easier to create CSS code - without actually writing it - and integrated HTML-Elements into some of the well known cables workflows.

HTML Overlay Mode

The Overlay you already know from 3D-Scenes, Models, Meshes will now show you, which HTML-Element you are currently working on.
Simply turn on "Overlays" by pressing "o" and select (for example) the new Element op that you want to find.
HTML Element Picking

You can also go the other way around: do you want to know which Op creates a certain HTML-Element on screen?

Press control and hover the element in question to highlight it. Clicking it will then take you to the Op that controls it.

Stay In The Editor

New Patch Outline

You will find the new Patch Outline when clicking on any empty space in your patch. It will show you a tree-view of your current patch, no matter how simple or complex it is. Click the icons to select the parts of the patch you are interested in.

Easy access to all the features available to structure your patches (areas, comments, colors, bookmarks, ...) should help everyone find what they are looking for in a breeze.
Rename Op

To keep you in "The Zone" while patching, you can now rename Ops from within the editor. No more opening another browser tab and then reloading the patch.

Use this new feature to rename your SubPatches right where you created them. You know you forgot what "SubPatch0" does, already...don't you?

Small Mistakes, Keep Control

To give everyone a bit more insight on what is actually happening "behind the scenes" - what might what actually does go wrong - we revisited error-handling in cables.gl and cables standalone

This should help clarify which errors are critical, which ones are on the authors of the op, on the users of the op, or on us...

New Console

We created our own dev/error/info-console, so that not everything is hidden away in "dev tools", and to make it easier for you to take a look.

We are also revisiting what we deem an error. But for now and also in the future: if the console pops up, then something is broken, so please send a report 😉

...check out the changelog for more features, improvements and fixes.

Stay tuned for the upcoming new version of cables standalone!

Make sure you give us feedback! Talk to us on social media, on discord or on github discussions.

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

The following users helped to make this release possible by their membership on Patreon.

matti - thanks for your "Platinum" membership
kikohs - thanks for your "Gold" membership
wirmachenbunt - thanks for your "Gold" membership
keepitvisual - thanks for your "Gold" membership

Thank you!

May 2024 Release

...spring took a bit longer to turn into summer (at least in Germany), so we extended our spring-cleaning session as well.

But, as always, the new release also comes with new features, improvements and changes. Read up on everything at a glance in the changelog, or continue reading for some hand-picked highlights in the following blog post.

Feel free to leave feedback, reports and further ideas on our issue tracker or on discord. Here we go...

Road to Open Source

The undev team is super proud that we found a partner to support us on the way to releasing cables.gl as fully open-source software.

The awesome people at the NLnet Foundation accepted our pitch and are now supporting us with budget and resources to finally work on an item we had on our road map for years.

Or as the people in Brussels would phrase it:

"This project was funded through the NGI0 Entrust Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 101069594."

Read more about what we have planned and will work on in the next few months and stay tuned for updates on the matter!

New Patreon Level For A Fiver

Starting in July 2023 we gave all of you the opportunity to support us on Patreon. And quite a few of you followed that call. Thank you!

Your support will get you early-access to new features in cables, announcements like this blog post and (depending on your membership-level) a few perks (like increased max upload size and more storage on our servers...just to mention a few). Up until we didn’t really enforce these limits, we just hinted that you are over your quota. As part of our next releases, we will slowly start enforcing any limits related to your membership-level.

To give our Patreon supporters a bit more bang for their bucks, we recently released a first, early-access version of "cables standalone" for Windows, Linux and Mac. It is currently available to  all of our patrons for beta-testing  and feedback.
Isn't that a reason to join the club?!

Do so, now! The new "Copper Level Support" will not only give you that nice warm feeling of supporting cables but also the benefits of one gigabyte of storage and 256 MB increased file upload size. You will also be among the first to know when we push out the next version of the standalone!

Hand Picked Goodies

Resizeable Ops

A feature that was requested pretty frequently finally made its way into the editor. You can start getting used to resizing ops by playing around with Sequence.
Use this feature to structure your patch, create visual anchors or just to get some more space between those ports. 

We’d love some feedback on this before adding it to more ops. Let us know what you think!
Helper/Overlay System

Crossing off one of the items from our road map, this release will bring you a rework of the overlay and helper system.
The renderer will now show helpers for transformations and areas of influence by default. 

You can toggle them on and off by pressing "o", if you need a clear view of the renderer. This will definitely be improved in the future, to give even more overview and orientation.
VizString

Small change, but a really useful one! VizString now will wrap your long, long strings into its own area to give you a full overview.

You can also choose to visualize non-printables like whitespace, tab, line breaks… pretty useful for debugging.

Know What's Up

Your cables homepage got another update as well. Next to your activity feed, you will see events that circle around cables.

These can be meetups on discord, chances to "meet the makers", workshops, upcoming releases or maybe even your event... feel free to contact us if you want to promote your event there!

While we hope that summer will finally come, this (and more) should keep you busy for a bit.

Make sure you give us feedback! Talk to us on social media, on discord or on github discussions.

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

The following users helped to make this release possible by their membership on Patreon.

matti - thanks for your "Platinum" membership
kikohs - thanks for your "Gold" membership
wirmachenbunt - thanks for your "Gold" membership
keepitvisual - thanks for your "Gold" membership

Thank you!

April 2024 Release

They say "Cleaning is a practice, not a project" - well, call it whatever you want. But after the last release gave you all the power to "code" your own without even touching code, this one will make things faster, cleaner and easier.
As always you will find a comprehensive list of the errands we ran in the changelog, and some cherry-picked items in the post below...

Changes To The Editor

Smooth Operators

The editor now provides a completely fresh and smooth experience when you deactivate "snap to grid" in your editor preferences.

Now, the movement of ops is much smoother and they snap to every position that "makes sense". This can be the edges of other ops but most of the time it will try to get your cables straight by aligning them to connected ports. Give it a try!

If you quickly need the grid back, you can always press control to snap your dragged op to the grid.
Visible Math

All ops doing simple math will now automatically show their expression right on the op. 

Having your Sum op say "1 + X" is a super convenient way to see which "hard coded" values you used for tweaking your transforms or animations.



Editing Of Assets

It is now possible to edit uploaded text files directly in the editor. No need to download and upload the same file over and over again to edit JSON, HTML or simple text files.
After you have made changes to your file, any ops using the content will update immediately. 

This pairs especially well with the new handlebars op.

Website Improvements

A New Home

While reworking the whole code base of the website-part of cables.gl, we also took the time to restructure the homepage a bit.

When logging in or coming back to cables, the first thing you will now see is your activityfeed with the latest entries, alongside the latest videos, featured patches and discussions on github. Find your invites, requests, likes and activities of people you are following at first glance! And on top of that, the activityfeed will now include a notification whenever someone added a patch to a team that you are a member of - that means even less clicks to collaborating on projects.

As part of a few smaller changes, we made your "My Data" load faster, added some pagination for storage information and separated your ops into tabs for patches, users, teams, extensions, ... It should be a lot easier to find “that one op you were working on last week" again.

If you are into coding ops, we followed a suggestion coming from github: you can now have a licence attached to ops you wrote. Mention the licence you share your op with while editing the rest of the documentation. This defaults to the "MIT-License", but feel free to put anything in there. This list might be a good starting point to find an identifier, though.

For your own spring cleaning session you can now choose to "leave project" on the patch page once your collaboration is finished- to keep "My Patches" clean and tidy.

In case you want to get some help from the community and are unsure on how to best share a patch for feedback, we added a small guide to the FAQ section of our docs.

Some New Ops

Control Blending

As an addition to the existing simple blendmode operator, the new GlBlendFunc op gives you full control to use all combinations of OpenGL blend equations.
Editing Positions

Are you annoyed by typing in coordinates or importing 3D scenes to extract points? Now you can simply edit them by moving objects with your mouse and fill up an array. 

Array3PointEditor allows for quick position adjustments of objects or points using the well-known helper gizmo. 

In the future this will be improved to feature scaling, rotation and more....
Scene Switching

One of the most asked questions we get is how to easily create transitions between scenes.

We already have RouteTrigger to switch between scenes in a hard way. The new RouteTriggerAnimated adds animation capabilities to it, so you can easily cross fade your scenes now!

Since this is a SubPatchOp you can clone it and easily make adjustments to it to serve your very personal requirements. Without having to write any code!

Going Outside

While we were working on increasing server performance, allowing for releases without any downtime (did you notice?), we also added more projects to "made with cables". Check them out to see what people are using cables for in commercial or artsy projects and even for teaching purposes.

Especially worth mentioning here is a new platform created by cables users kikohs and bagoof. They started "decode.gl" and published videos on more than 20 topics, to get you started at different levels of cables. You will find them on their website, or directly on YouTube.

To give you a small teaser, here is the introduction:

...definitely check it out!

And for your calendars: Every first Wednesday of the month we host a meetup on discord. Join us to keep updated and share your creations!

Make sure you give us feedback! Talk to us on social media, on discord or on github discussions.

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

The following users helped to make this release possible by their membership on patreon.

kikohs - thanks for your "Gold" membership
wirmachenbunt - thanks for your "Gold" membership

Thank you!

February 2024 Release

The first release of the new year goes out with a bang!

If you want a real quick look at all the changes: head over to the changelog directly. But don't, you will be missing out on a lot of the fun.

Have you ever felt the need to share SubPatches? Now you can! Have you never been keen on learning to code but still wanted to create Ops? Now's your chance!
Are you sitting in a dimly lit area and need the editor to be just a bit brighter? Tweak it now! Is your display too small to handle both editing AND rendering? Pop it out, now!

Read up on all the new additions that come with this release below. Have fun!

Patching Your Own Ops

How about killing two (or maybe even a whole flock) of birds with one stone?!

For a long time there have been plenty of feature-requests, bug-reports and general nuisances with SubPatches in cables.gl. We didn't feel like fixing them, we’ve given our SubPatches a complete overhaul!

SubPatches are now fully-fledged, "first class" Ops that you can create, reuse within and across projects, and share with your team or the entire community. Check out the example for the new ComposingGridOverlay-op. See how the Op has a thin, grey border? Double click and jump right in to see what other ops it is composed of. Clone it, tweak it, use it in your own projects.

No more copies and different versions of subpatches in one patch, no more copy-pasting functionality that you reuse in different patches of the same project! 

All the features that come with "normal" Ops are immediately available to SubPatches as well, now. Document them, create example patches, see how they are used, share, collaborate, rename, clone, create new versions, you name it...

Getting Started

To get you started with creating your own Ops, from Ops, you can click on "Patch a new op" in the Editor-Menu, or mark some ops and pick "Create Op From Selection".

Depending on the context you are in, cables will automatically create an op for your from your selection, pick a name and open the editor. You know this from somewhere, right?

Clicking on "Manage Op" of a newly generated SubPatchOp will open the new port editor...
Creating Ports

...from where you will be able to create new ports for your Op. These ports can be named anything and have all the basic types for ports that are provided by cables.

Pick wisely, as this will be the outside interface of your Op. All the ports will be available on the inside of your SubPatch for you to work with. Make sure to connect all the exposed outputs, so people can work with the results of your patching.

Feel fine with all the ports but made a mistake? Wrong order? Wrong name? Did cables autogenerate to your dislike? Edit them...
Pushing Things Into Place

Once you enter the "Manage Op"-Tab of a SubPatch-Op, you can reorder ports, rename them or, as with any other op, clone, rename and document the op.

Moving around ports will reflect immediately in the patch field, this way you can fiddle around with order and names until you like it. Hint: most of the time you want the triggers (in and out) on the far left, so your ops snap in easily when dragged into the MainLoop.

Pushing The Limits

All the people that already support cables.gl on Patreon will love this! We used to limit upload sizes for files to 100 MB. A reasonable size that let everyone upload images, models and audiofiles but also kept our storage-costs at bay.

With the rise of things like Gaussian Splatting, HDR-Images, Multichannel-Audio and, last but not least, AI-Models things start to take up a bit more space. We got you covered for the future!

We now link these "limits" to you support-level on Patreon (or some special memberships for contributing code to cables directly). So if you really need more space or have to upload bigger files, simply chip in to one of the sponsorship-levels on Patreon, link your Patreon-Account to cables and immediately take advantage of your new freedom.

To see what we think are reasonable limits, we added some stats, a list of your current usage of storage and exports and your current memberships on cables.gl to "My Data" in your account section. Some of the memberships (like the Patreon Level and a Contributor Badge) will also show up publicly on your user profile. Your claim to fame!


Changes To The Editor

PopOut Canvas 

We started this journey with ExternalCanvas in the last release. This update will give you the power of "multi-screen-patching" in the editor. 

Click the new "pop out" icon below the renderer and have your render window seperated from your patching window. This (different from ExternalCanvas) will also display any HTML-Elements you added to your patch, and update them accordingly. 

Want to test your patch in portrait-mode? Working on responsive layouts? Need to test on retina? Fiddling around with external touch displays? Just pop out the renderer, patch on one screen, render on another!

All The Colors

The colors in the cables-editor got a fresh new breeze. All the Ops are now also visually sorted into their respective namespaces.
You will recognize by the color of the op which type of data they are working with and what family of ops they belong to.

These colors also are reflected in links, ports, the opselect and even the reworked op-page on the website. Getting a quick grasp on wtf is going on in a patch is now a lot easier on the eyes.

Customize It

All these colors come from a "theme". And what's the best tool to use when creating a theme for the cables editor? Exactly: cables.

See the patches in this patchlist, clone them, tweak your own colors and store them in your browsers storage to use them in all your patches.
Made something nice? Winter-Theme? Summer-Theme? Paper-Theme? Share them with us via Discord, and we'll put them in the patchlist.
Keeping Context

Data flows. Where from? Where to? Sometimes it's not easy to tell.

Cables will now highlight all the relevant parts of any connection for you. Once you click any Op, it's connections become highlighted.
Once you hover any cable, it will also highlight and illuminate the ports that it starts and ends at.

If you are not using intercontinental cables across your patch, this will show you where your data goes at a single glance...


Slowly Fade Away

...and if you indeed ARE using intercontinental cables...we also have something new for you.

Any connection between two ops that reaches a certain length will now "fade out" in the middle to make way for other crossing cables or ops that are in the way.
Hovering the link, or clicking any connected op, will show you the cables at full glance again. 

Never again feel bad about all those overlapping cables! At least they are now hidden under the carpet.


Ops To The Rescue

Below is a short list of new ops that come with this release. As mentioned above, take a closer look at ComposingGridOverlay, as it is the first Op in the core of cables that is made entirely of other ops. More to come!

If you are still into coding ops, for whatever reason. We also tweaked the "Op Rescue Editor" for your. With this simple text editor outside of the cables editor you can easily recover from most of the mistakes you made when writing Ops or shaders. We added text editors for attachments, formating code and fine tuned the looks a bit. How do you get there? Oh...didn't we tell you that there is a new page that lists all Ops that where created by you? Head over there, pick any Op, scroll down on the op-page and press the edit button...or simply click on the link in the error-modal that will pop up if you screwed up too hard 😉

Anyhow, check these out...

...and we thought this would be a small release. Well then, here we are.

Make sure you give us feedback! Talk to us on social media, on discord or on github discussions.

For your calendars: The next cables meetup will take place on February 14th (20:00 CET). Check the event on discord to keep up to date with speakers and topics!

best,
Team Cables

cables is brought to you by




If you want to see some special feature integrated into cables,
contact us to see if we can make it happen.

The following users helped to make this release possible by their membership on patreon.

kikohs - thanks for your "Gold" membership
wirmachenbunt - thanks for your "Gold" membership

Thank you!