Skip to content

clayrisser/react-gtk

Repository files navigation

react-gtk

Financial Contributors on Open Collective GitHub stars

cross-platform react native desktop applications

Please ★ this repo if you found it useful ★ ★ ★

Built with Node GTK and Gjsify

GTK 4.0 Support Coming Soon!

After a few years away from this project, I have finally returned. I will be refactoring the entire project from scratch to reach general availablilty. The new refactor will support GTK 4.0 and CSS using Yoga.

You can follow the development in the React GTK Discord

This project is under active development. Please help by sharing your experience, bugs, comments, complaints, etc . . .

If you think it, say it 😆

Features

  • supports native osx desktop
  • supports native linux desktop
  • supports native windows desktop

Installation

npm install --save @react-gtk/binding

Dependencies

Gtk 3

Make sure you have gtk 3 installed on your operating system.

Ubuntu

sudo apt install libgtk-3-dev libgirepository1.0-dev

OSX

brew install gtk+3

Usage

import React, { Component } from 'react';
import { render, Button, Box } from '@react-gtk/binding';

class App extends Component {
  render() {
    return (
      <Box>
        <Button label="One" />
        <Button label="Two" />
      </Box>
    );
  }
}

render(<App />, 'My App');

Example

git clone https://github.com/codejamninja/react-gtk.git
cd react-gtk/examples/elements
npm install
npm run start

Support

Submit an issue

Screenshots

Contribute a screenshot

Contributing

Review the guidelines for contributing

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

License

MIT License

Jam Risser © 2019

Changelog

Review the changelog

Credits

Support on Liberapay

A ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of building this project.

Add some fuel if you'd like to keep me going!

Liberapay receiving Liberapay patrons