LmCast :: Stay tuned in

Fabric Project

Recorded: Nov. 29, 2025, 1:08 a.m.

Original Summarized

GitHub - Fabric-Project/Fabric: Node Creative Coding / 3D / Image Processing tool inspired by Quartz Composer

Skip to content

Navigation Menu

Toggle navigation

Sign in

Appearance settings

PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback


We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

Fabric-Project

/

Fabric

Public

Notifications
You must be signed in to change notification settings

Fork
14

Star
359

Node Creative Coding / 3D / Image Processing tool inspired by Quartz Composer

fabric-project.github.io

License

BSD-3-Clause license

359
stars

14
forks

Branches

Tags

Activity

Star

Notifications
You must be signed in to change notification settings

Code

Issues
34

Pull requests
1

Discussions

Actions

Projects
0

Security

Uh oh!

There was an error while loading. Please reload this page.


Insights

Additional navigation options

Code

Issues

Pull requests

Discussions

Actions

Projects

Security

Insights

Fabric-Project/Fabric

 mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History636 CommitsFabric EditorFabric Editor  Fabric.xcodeprojFabric.xcodeproj  FabricFabric  Lygia @ dc9aa89Lygia @ dc9aa89  SamplesSamples  Satin @ 599759fSatin @ 599759f  Syphon @ 71351d4Syphon @ 71351d4  .gitignore.gitignore  .gitmodules.gitmodules  ARCHITECTURE.mdARCHITECTURE.md  LICENSELICENSE  LLM_SPEC.mdLLM_SPEC.md  NODES.mdNODES.md  README.mdREADME.md  ROADMAP.mdROADMAP.md  View all filesRepository files navigationREADMEBSD-3-Clause licenseFabric

Fabric is a creative code and rapid prototyping environment focusing on interactive visuals, image and video processing and analysis and 3D content authoring.
Fabric

Provides an intuitive Visual Node based content authoring environment
Provides an SDK to load an common interchange file format
Provides an SDK to extend Fabric by creating custom nodes via a plugin architecture

Fabric is inspired by Apple's deprecated Quartz Composer ecosystem, and its design philosophy.
Fabric is intended to be used as

A Creative coding tool requires little to no programming experience.
Pro User tool to create reusable documents (similar to Quartz Composer Compositions) that can be loaded in the Fabric runtime and embedded into 3rd party applications.
Developer environment built on Satin that can render high fidelity visual output in a procedural way, using modern rendering techniques.

An early alpha of Satin rendering a instances of a sphere geometry, along with an HDRI environment and a PBR Shader at 120Hz:

What can I do with Fabric?
Think of Fabric as a playground of visual capabilies you can combine together.
Author

Interacive 3D graphics
Image processing and effects
Audio reactive scenes
images and video analysis pipelines
embed your scenes into your own apps

Check out the Samples
Fabric supports, thanks to Satin and Lygia, high fidelity modern rendering techniques including

Physically based rendering
Scene graph
Lighting and Shadow casting
Realtime shader editing (live coding, hot reloading)
GPU Compute
Image Based Lighting
3D Model Loading
Material System
ML based realtime segmentation and keypoint detection
Shader based Image Processing and Mixing
Local LLM calling

Credits
Fabric is authored by by Anton Marini.
Fabric uses Satin 3D engine Satin rendering engine written by @Reza Ali.
Fabric includes a licensed Metal port of Lygia shader library, powering Image effects and more, written by @Patricio Gonzalez Vivo and contributors.
Requirements
WarningPlease note Fabric is heavily under construction.

macOS 14 +
XCode 15 +

Please See Releases for code signed App downloads.
For Developers:

Checkout Fabric and ensure you check out with submodules enabled, as Satin is a dependency.
Open the XCode project
Ensure that Fabric Editor is the active target.
Build and run.

Getting Started
Checkout our Architecture Document to understand the underlying paradigms of working with Fabric's Nodes and execution model, learn what a Node and a Port is, the types of data Fabric can generate and process, and how Fabric executes your compositions.
We also provide a set of evolving tutorial / getting started and sample Fabric compositions along with a readme walk through. You can use the Sample Compositions
to learn and build off of.
You can view a comprehensive list of available and planned Nodes here to explore and learn how to compose more advanced and custom setups with Fabric.
Don't hesitate to file a feature request if a Node is missing!
Roadmap
Checkout our Roadmap Document
Community
I ( Anton Marini ) are looking to build a community of developers who long for the ease of use and interoperability of Quartz Composer, its ecosystem and plugin community.
If you are interested in contributing, please do not hesitate to reach out / comment in the git repository, or join our discord via invite

FAQ

Will Fabric ever be cross platform?

No. Fabric is purpose built on top of Satin and aims to provide a best in class Apple platform experience using Metal.

What languages are used?

Fabric Editor is written in Swift and SwiftUI. Satin is written in Swift and C++

Why not just use Vuo or Touch Designer or some other node based tool?

I do not like them.
Don't get me wrong, they are incredible tools, but they are not for me.
They do not think the way I think.
They do not expose the layers of abstraction I want to work with.
They do not provide the user experience I want.

About

Node Creative Coding / 3D / Image Processing tool inspired by Quartz Composer

fabric-project.github.io

Topics

swift

video

metal

creative-coding

multimedia

shaders

graphics

realtime

post-processing

3d

swiftui

node-based

Resources

Readme

License

BSD-3-Clause license

Uh oh!

There was an error while loading. Please reload this page.


Activity

Custom properties
Stars

359
stars
Watchers

7
watching
Forks

14
forks

Report repository

Releases

5
tags

Packages
0

No packages published

Uh oh!

There was an error while loading. Please reload this page.


Contributors
6

Languages

Swift
88.1%

Metal
9.8%

Objective-C
1.5%

Other
0.6%

Footer

© 2025 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Community

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

Fabric is a creative coding environment, inspired by Apple’s deprecated Quartz Composer ecosystem, designed for interactive visuals, 3D content creation, and image/video processing. Developed by Anton Marini, the project aims to provide a node-based system for rapid prototyping and content authoring, targeting users who desire a flexible and powerful tool akin to Quartz Composer, while leveraging modern rendering techniques.

The core of Fabric revolves around its Node-based architecture, where users construct scenes and effects by connecting and composing individual nodes. These nodes handle various tasks, ranging from 3D rendering and shader manipulation to image processing and audio reactivity. Fabric utilizes Satin, a rendering engine written by Reza Ali, for high-fidelity, real-time visual output, supporting features like physically based rendering, scene graphs, lighting, shadow casting, and GPU compute. Furthermore, the project incorporates a licensed Metal port of Lygia shader library, crafted by Patricio Gonzalez Vivo and contributors, enabling sophisticated image processing and mixing effects.

The system is intended to provide a user experience similar to Quartz Composer, but with modern improvements. Developers can extend Fabric’s capabilities by creating custom nodes, adding to the plugin ecosystem. The primary target audience is users seeking a tool for rapid experimentation and prototyping. The project acknowledges its early development stage, with a current reliance on macOS 14 and XCode 15, represented through code-signed app downloads which can be found via releases.

Getting started requires a specific workflow: checking out the Fabric repository, enabling submodules (due to Satin's dependency), opening the XCode project, and setting the Fabric Editor as the active target. The documentation emphasizes the crucial understanding of the architecture, including the concepts of Nodes and Ports. Alongside, the project offers a set of evolving tutorials and sample compositions to help users familiarize themselves with the system. The long-term goal is to foster a community around Fabric, mirroring the collaborative spirit of the Quartz Composer ecosystem and addressing the limitations of alternative node-based tools like Vuo and Touch Designer, which are perceived to lack the desired level of control and abstraction. The project’s roadmap prioritizes community engagement and expanding the Node library, inviting contributions and feature requests. The core development languages are Swift and SwiftUI for the Editor, with Satin implemented in Swift and C++, and leveraging Metal for hardware acceleration.