samuelmtimbo/unit

Next Generation Visual Programming System

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 39 minutes ago
Added to GitGenius on September 14th, 2026
Created on June 9th, 2021
Open Issues & Pull Requests: 0 (+0)
GitHub issues: Disabled - open counts may still include pull requests.
Number of forks: 171
Total Stargazers: 4,917 (+0)
Total Subscribers: 58 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

GitHub issues are disabled for this repository, so issue analytics and the issue explorer are not available.

Detailed Description

Unit is a visual programming language and environment that represents programs as graphs of interconnected nodes called units, which function as multi-input multi-output finite state machines.

Unit addresses the challenge of making programming more accessible and intuitive by combining dataflow, reactive, functional, and object-oriented paradigms into a single visual system. Rather than writing text-based code, developers compose programs by connecting units together in a graph, where each unit's outputs pipe into other units' inputs much like Unix shell commands. The environment emphasizes direct manipulation through a web-based interface designed to support multiple input methods including drawing, gesture, and voice, alongside traditional mouse and keyboard interaction.

Unit suits developers seeking an alternative to traditional text-based programming, particularly those interested in exploring visual and dataflow-oriented approaches. The system is positioned as a 2D evolution of the command-line interface, making it conceptually familiar to Unix-philosophy-minded programmers while lowering barriers for those new to programming. The tool can be used both as a standalone web environment and as a library integrated into JavaScript projects running on web or Node.js platforms. Unit is still in beta development, with the official environment accessible at unit.land and a marketplace of community-built programs available at unit.tools.

The project maintains active development with regular updates to both the core language implementation and the web-based environment. The codebase is written in TypeScript and includes comprehensive documentation covering getting started, design philosophy, and API usage. Development infrastructure supports local server setup for testing and experimentation, with clear build and test workflows documented for contributors. The project provides multiple entry points for engagement, from using the hosted environment to integrating the library into other applications to building and sharing custom units through the public marketplace.