{"id":13773543,"url":"https://github.com/clayrisser/react-gtk","last_synced_at":"2026-02-23T10:17:35.072Z","repository":{"id":50418503,"uuid":"92038127","full_name":"clayrisser/react-gtk","owner":"clayrisser","description":"react Native bridge for gtk desktop applications","archived":false,"fork":false,"pushed_at":"2024-01-22T09:42:07.000Z","size":78525,"stargazers_count":353,"open_issues_count":14,"forks_count":19,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-12-01T05:17:45.553Z","etag":null,"topics":["bridge","featured","gtk","gtk3","react","react-native"],"latest_commit_sha":null,"homepage":"https://clayrisser.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clayrisser.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-05-22T09:52:19.000Z","updated_at":"2025-11-04T14:18:05.000Z","dependencies_parsed_at":"2023-11-25T07:22:07.376Z","dependency_job_id":"de011b3d-8f60-4eb2-8d9c-02c9e8bd5834","html_url":"https://github.com/clayrisser/react-gtk","commit_stats":{"total_commits":247,"total_committers":16,"mean_commits":15.4375,"dds":0.7732793522267206,"last_synced_commit":"32a4fbf9e607def34ce97d5c0cb5f95f9cf3e15f"},"previous_names":["codejamninja/react-gtk","clayrisser/react-gtk","silicon-hills/react-gtk","jamrizzi/react-gtk"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/clayrisser/react-gtk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clayrisser%2Freact-gtk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clayrisser%2Freact-gtk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clayrisser%2Freact-gtk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clayrisser%2Freact-gtk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clayrisser","download_url":"https://codeload.github.com/clayrisser/react-gtk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clayrisser%2Freact-gtk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29741146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-23T07:44:07.782Z","status":"ssl_error","status_checked_at":"2026-02-23T07:44:07.432Z","response_time":90,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bridge","featured","gtk","gtk3","react","react-native"],"created_at":"2024-08-03T17:01:16.948Z","updated_at":"2026-02-23T10:17:35.050Z","avatar_url":"https://github.com/clayrisser.png","language":"TypeScript","funding_links":["https://opencollective.com/reactgtk","https://opencollective.com/reactgtk/contribute","https://opencollective.com/reactgtk/organization/0/website","https://opencollective.com/reactgtk/organization/1/website","https://opencollective.com/reactgtk/organization/2/website","https://opencollective.com/reactgtk/organization/3/website","https://opencollective.com/reactgtk/organization/4/website","https://opencollective.com/reactgtk/organization/5/website","https://opencollective.com/reactgtk/organization/6/website","https://opencollective.com/reactgtk/organization/7/website","https://opencollective.com/reactgtk/organization/8/website","https://opencollective.com/reactgtk/organization/9/website","https://liberapay.com/codejamninja/donate"],"categories":["Desktop"],"sub_categories":[],"readme":"# react-gtk\n\n[![Financial Contributors on Open Collective](https://opencollective.com/reactgtk/all/badge.svg?label=financial+contributors)](https://opencollective.com/reactgtk) [![GitHub stars](https://img.shields.io/github/stars/codejamninja/react-gtk.svg?style=social\u0026label=Stars)](https://github.com/codejamninja/react-gtk)\n\n\u003e cross-platform react native desktop applications\n\nPlease ★ this repo if you found it useful ★ ★ ★\n\nBuilt with [Node GTK](https://github.com/romgrk/node-gtk) and [Gjsify](https://gjsify.org)\n\n## GTK 4.0 Support Coming Soon!\n\nAfter a few years away from this project, I have finally returned. I will\nbe refactoring the entire project from scratch to reach general availablilty.\nThe new refactor will support [GTK 4.0](https://blog.gtk.org/2020/12/16/gtk-4-0/)\nand CSS using [Yoga](https://yogalayout.com).\n\nYou can follow the development in the [React GTK Discord](#discord)\n\n## [JOIN DISCORD](https://discord.gg/UBrXPfFnF3)\n\n## [FILE ISSUE](https://github.com/codejamninja/react-gtk/issues/new)\n\nThis project is under active development. Please help by sharing your\nexperience, bugs, comments, complaints, etc . . .\n\nIf you think it, say it :laughing:\n\n## Features\n\n- supports native osx desktop\n- supports native linux desktop\n- supports native windows desktop\n\n## Installation\n\n```sh\nnpm install --save @react-gtk/binding\n```\n\n## Dependencies\n\n- [NodeJS](https://nodejs.org)\n- [GTK](https://www.gtk.org)\n- [GObject Introspection](https://wiki.gnome.org/Projects/GObjectIntrospection)\n\n### Gtk 3\n\nMake sure you have gtk 3 installed on your operating system.\n\n#### Ubuntu\n\n```sh\nsudo apt install libgtk-3-dev libgirepository1.0-dev\n```\n\n#### OSX\n\n```sh\nbrew install gtk+3\n```\n\n## Usage\n\n```js\nimport React, { Component } from 'react';\nimport { render, Button, Box } from '@react-gtk/binding';\n\nclass App extends Component {\n  render() {\n    return (\n      \u003cBox\u003e\n        \u003cButton label=\"One\" /\u003e\n        \u003cButton label=\"Two\" /\u003e\n      \u003c/Box\u003e\n    );\n  }\n}\n\nrender(\u003cApp /\u003e, 'My App');\n```\n\n## Example\n\n```sh\ngit clone https://github.com/codejamninja/react-gtk.git\ncd react-gtk/examples/elements\nnpm install\nnpm run start\n```\n\n## Support\n\nSubmit an [issue](https://github.com/codejamninja/react-gtk/issues/new)\n\n## Screenshots\n\n[Contribute](https://github.com/codejamninja/react-gtk/blob/master/CONTRIBUTING.md) a screenshot\n\n## Contributing\n\nReview the [guidelines for contributing](https://github.com/codejamninja/react-gtk/blob/master/CONTRIBUTING.md)\n\n## Contributors\n\n### Code Contributors\n\nThis project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].\n\u003ca href=\"https://github.com/codejamninja/react-gtk/graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/contributors.svg?width=890\u0026button=false\" /\u003e\u003c/a\u003e\n\n### Financial Contributors\n\nBecome a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/reactgtk/contribute)]\n\n#### Individuals\n\n\u003ca href=\"https://opencollective.com/reactgtk\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/individuals.svg?width=890\"\u003e\u003c/a\u003e\n\n#### Organizations\n\nSupport this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/reactgtk/contribute)]\n\n\u003ca href=\"https://opencollective.com/reactgtk/organization/0/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/1/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/1/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/2/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/2/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/3/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/3/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/4/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/4/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/5/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/5/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/6/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/6/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/7/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/7/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/8/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/8/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/reactgtk/organization/9/website\"\u003e\u003cimg src=\"https://opencollective.com/reactgtk/organization/9/avatar.svg\"\u003e\u003c/a\u003e\n\n## License\n\n[MIT License](https://github.com/codejamninja/react-gtk/blob/master/LICENSE)\n\n[Jam Risser](https://codejam.ninja) © 2019\n\n## Changelog\n\nReview the [changelog](https://github.com/codejamninja/react-gtk/blob/master/CHANGELOG.md)\n\n## Credits\n\n- [Jam Risser](https://codejam.ninja) - Author\n\n## Support on Liberapay\n\nA ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.\n\n[Add some fuel](https://liberapay.com/codejamninja/donate) if you'd like to keep me going!\n\n[![Liberapay receiving](https://img.shields.io/liberapay/receives/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)\n[![Liberapay patrons](https://img.shields.io/liberapay/patrons/codejamninja.svg?style=flat-square)](https://liberapay.com/codejamninja/donate)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclayrisser%2Freact-gtk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclayrisser%2Freact-gtk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclayrisser%2Freact-gtk/lists"}