30 open-source projects similar to evolus/pencil, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Rnote is a vector-based note-taking and drawing application designed for capturing handwritten input. It functions as a digital workspace that records stylus pressure and movement to create sketches and notes, storing them as mathematical paths rather than pixels to allow for infinite scaling and non-destructive editing. The application provides a flexible canvas environment that supports infinite scrolling and various page layouts. Users can organize their work using a layer-based system, which allows for the independent manipulation and ordering of individual strokes, shapes, and background
pdfkit is a JavaScript PDF generation library used to programmatically create binary PDF documents in Node.js and browser environments. It functions as a vector graphics engine for rendering paths, shapes, gradients, and tiling patterns, and as a tool for producing rich text and tagged documents that follow international accessibility standards for screen reader compatibility. The library includes a security and encryption utility for applying document encryption and restricting user permissions regarding printing, copying, or editing. It also serves as a form and annotation tool, enabling th
drawio is a web-based diagramming tool and cross-platform visual designer used for creating flowcharts, network maps, and technical schemas. It functions as a vector graphics editor and an XML-based diagramming engine that allows users to design and export scalable graphics. The software supports a wide range of technical design tasks, including infrastructure mapping for server layouts and the creation of visual aids for technical documentation. It enables the import of diagram files from other tools to facilitate cross-tool migration.
ToolsOfTheTrade is a comprehensive, curated directory designed to help developers and operational teams discover software services for a wide range of technical and business requirements. It functions as a centralized resource catalog, indexing tools that support the entire software development lifecycle, infrastructure management, and organizational productivity. The project distinguishes itself by providing a structured index of both hosted and self-hosted solutions, enabling users to identify specific utilities for tasks ranging from continuous integration and project planning to applicati
This project is a cross-platform UI framework and native desktop GUI library. It provides a unified set of instructions to render native windows, forms, and layouts across different operating systems by mapping high-level instructions to the native widgets and controls of the host environment. The toolkit includes a vector graphics engine for rendering custom shapes, gradients, and high-density images using brushes and matrices. It also serves as a native dialog provider for system-level operations such as file path selection and message box alerts. The library covers a broad range of GUI co
This is a lightweight, header-only C/C++ library used to embed browser engines into native desktop applications. It serves as a desktop GUI framework that allows developers to build native applications using HTML and CSS for the user interface layer. The library provides a unified cross-platform browser component that wraps WebKit on Linux and macOS and WebView2 on Windows. It includes a native code bridge to bind JavaScript functions to C++ logic, enabling high-performance operations and data exchange across language boundaries. The project handles platform-specific browser integration and
nanogui is a native C++ toolkit for rendering interactive user interface components directly within an OpenGL graphics context. It functions as a cross-platform widget library and immediate-mode framework used to create windows, buttons, sliders, and input fields. The toolkit provides specialized capabilities for building technical interfaces, including real-time parameter control panels and custom tooling for graphics-heavy software. It ensures visual consistency across different operating systems and screen resolutions through DPI-aware coordinate scaling. The framework includes a constrai
Easy-to-use Raspberry Pi image for booting directly into full-screen Chrome, with built-in convenience features for unattended operation. Perfect for dashboards and build monitors.
Provides an uniform layer to support PyQt5, PySide2, PyQt6, PySide6 with a single codebase
Elements is a C++ GUI library and component-based UI framework used for building desktop user interfaces. It features a retained-mode layout engine that manages the positioning, sizing, and layering of elements within a window. The framework functions as a cross-platform window manager, handling application event loops and embedding graphical views into native platform windows. It allows for the creation of custom widgets by composing basic primitive elements and alignment wrappers. The system supports responsive layout organization through the use of tiles, grids, and flows. It also provide
This project is an immediate-mode graphical user interface library designed for rapid development of tools and debugging interfaces. By generating UI geometry every frame through procedural code, it eliminates the need for persistent state synchronization between application data and the interface. It is primarily intended for integration into existing rendering pipelines, where it produces raw vertex buffers and draw commands that are agnostic to the underlying graphics API. The library distinguishes itself through a highly decoupled architecture that supports complex, dockable, and multi-vi
This project provides a comprehensive collection of standardized vector symbols designed to maintain a unified visual language across mobile and web-based user interfaces. It serves as a cross-platform resource for developers and designers to implement a consistent iconographic identity within digital products. The library distinguishes itself through the use of variable font technology, which allows for the dynamic adjustment of icon weight, grade, and optical size directly through style sheet properties. By leveraging native font rendering engines and CSS class-based styling, the collection
IBAnimatable is a set of visual design tools for prototyping bespoke interface elements, motion effects, and navigation transitions within a graphical environment. It provides a designer for creating and prototyping animations directly within the Apple Interface Builder environment and a system for building custom interface components through a visual attributes panel. The project distinguishes itself by offering a visual interface transition editor for configuring screen navigation and gesture-driven transitions without manual coding. It includes a prototyping sandbox for testing interaction
Akira is a native Linux application and vector graphics editor designed for creating professional user interface layouts and user experience flows. Built with the Vala language, it functions as a GTK UI design tool for developing visual elements and interface components. The software provides a desktop environment for UI and UX design, enabling the creation of professional layouts and the prototyping of user interaction flows. It specifically supports the construction of GTK interface layouts and Linux-based UI designs.
Beautiful React Diagrams is a component library for building interactive node-based visualizations and flowcharts within React applications. It provides a framework for rendering custom visual schemas where nodes and links are managed through a centralized state, ensuring a single source of truth for complex layouts. The library distinguishes itself through a flexible rendering pattern that allows for the injection of custom user-defined components into node and port placeholders. It enforces structural integrity by validating connections against predefined schemas and provides granular contr
Openv0 is an AI-driven UI prototyping tool and component generator. It uses large language models to create user interface elements, providing a live preview feedback loop for immediate visual iteration. The system operates as a generative frontend pipeline, utilizing a modular sequence of plugins to orchestrate the creation of UI assets. This architecture allows for the integration of custom UI frameworks, external libraries, and icon sets to expand the range of available visual components. The tool covers frontend component prototyping and generative asset pipelines. It supports project bo
Umlet is a desktop-based visual design environment for constructing software architecture diagrams and object-oriented models. It functions as a diagramming utility that allows users to create, manipulate, and organize visual elements through a combination of a graphical workspace and a text-driven interface. The application distinguishes itself by using a custom markup language to define and render diagram elements, enabling users to create specialized notations and custom shapes for unique architectural requirements. This approach allows for the serialization of diagram states into structur
SVGEdit is a browser-based SVG editor and canvas engine used for creating and modifying scalable vector graphics files. It provides a web interface for vector design and functions as an embeddable editor that can be injected into HTML elements within other web applications. The project allows for the development of custom SVG tools and the construction of bespoke vector graphics editors by utilizing its standalone drawing engine.
Inkscape is a professional vector graphics editor and illustration software used to create resolution-independent logos, diagrams, and technical illustrations. It utilizes the SVG open standard format to ensure graphical data remains scalable across all operations. The software functions as a web animation generator, producing CSS-powered animations and interactive presentations for browser display. It also serves as a mathematical renderer capable of importing and typesetting LaTeX formulas directly into scalable vector graphics. Beyond its graphical interface, the project includes a comman
Snap.svg is a JavaScript library for creating, manipulating, and animating scalable vector graphics directly in the web browser. It functions as a browser-based SVG generator and vector graphics manipulation tool, providing a framework to programmatically generate complex drawings and masks. The project serves as an animation engine for transitioning visual properties and attributes over time to create motion. It enables the development of dynamic SVG content, including the ability to animate viewboxes, matrices, and polygon points. Its capability surface covers geometric calculations and th
Open Design is an AI design orchestration platform and LLM agent workspace designed for generating prototypes, presentations, and motion graphics. It functions as a local-first environment that integrates various command-line AI agents and coding tools into a unified design workflow, allowing users to migrate design specifications into brand-compliant source code. The project is distinguished by its ability to enforce visual consistency through a design system manager that defines brand contracts and tokens using Markdown. It features a specialized motion graphics generator that converts HTML
KubeDiagrams is a Kubernetes architecture visualizer and diagram generator that transforms manifests, Helm charts, and live cluster states into visual resource maps. It serves as a resource mapper that defines visual relationships between pods, services, and custom resources using labels and annotations. The system supports the resolution of templated charts and the mapping of custom resource types to specific visual representations via external configuration. It enables the addition of manual clusters, nodes, and edges to generated visuals through declarative extensions, and can export graph
This project is a cross-platform desktop application designed for creating, editing, and managing structured diagrams and technical workflows. It provides a visual modeling environment that allows users to construct complex charts through a drag-and-drop interface, supporting the documentation of processes, software architectures, and system flows. The application distinguishes itself by utilizing a layered canvas composition that enables independent manipulation of diagram components, paired with a keyboard-driven workflow that minimizes mouse reliance. It employs scalable vector graphics fo
Rough is a graphics library designed to render shapes and paths with a hand-drawn, sketchy aesthetic on web pages. It functions as a generator for informal visual styles, allowing developers to create illustrations and diagrams that mimic the appearance of human-drawn sketches. The library distinguishes itself by using procedural rendering to calculate randomized offsets for lines and curves, simulating natural imperfections. It employs deterministic seeding to ensure that these variations remain consistent across renders, while providing hachure-based texture filling to apply stylized shadin
X6 is a JavaScript diagramming library and SVG graph rendering engine used to build interactive flowcharts, mind maps, and visual workflow editors. It provides a framework for defining customizable node and edge behaviors, utilizing a hybrid rendering approach that combines SVG and HTML. The library decouples the visual graph representation from underlying business logic and data structures through a dedicated state management system. It allows for extensive extensibility via a registration mechanism for custom nodes, edges, and canvas tools. The toolkit includes capabilities for automatic g
Animator is a design platform for creating vector-based animations and programmable interactive components. It provides a visual environment for building motion graphics and UI elements, utilizing a timeline-based interface to manage keyframe sequencing and property transitions. The platform distinguishes itself by combining traditional motion design tools with a spreadsheet-style expression engine. This allows users to define reactive logic and custom behaviors that respond to user interactions or time-based triggers. By serializing these designs into standardized formats, the tool ensures t
Monoid is a monospaced programming font designed for high legibility in code editors and terminals. It is an OpenType feature font optimized for reading and writing source code, providing crisp rendering at small sizes. The typeface utilizes OpenType font-feature settings to provide stylistic alternates and customizable glyph appearances. It specifically implements programming ligatures that combine common coding symbols and operators into single glyphs to improve readability. The project covers monospaced text rendering and stylistic glyph customization, allowing for the swapping of standar
go-diagrams is a Go visualization library and DOT language generator used to create system architecture diagrams. It implements a diagrams-as-code approach, allowing users to define system components, infrastructure dependencies, and data flows using Go source code. The library translates these code-based definitions into Graphviz DOT syntax, which is then processed by the Graphviz toolset to render final visual image assets. It supports mapping directional edges to illustrate dependencies and organizing related components into named clusters or subgraphs to represent architectural boundaries