GithubHelp home page GithubHelp logo

christianedwardpadilla / reactype Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 260.0 46.69 MB

Prototyping Tool for React/Typescript Applications

License: MIT License

JavaScript 10.06% HTML 0.44% CSS 3.00% TypeScript 86.50%

reactype's Introduction

ReacType

PRs Welcome License: MIT

ReacType is a visual prototyping tool for developers employing React component architecture alongside the comprehensive type checking of TypeScript. In other words, you can draw prototypes and export React / Typescript code!

ReacType allows the user to visualize their application architecture dynamically, employing a canvas display, an application tree, and a real-time component code preview. The user can create components and load instances of these components, as well as nested HTML elements, onto the canvas. This architecture can then be exported as TypeScript application files to be used as a starter template for any repository.

Download for MacOS, Windows, Linux.

  • Mac users: for now you might need to go to your security settings to allow the app run on your system as we do not have an Apple license yet.

Image of ReacType Application

How to use

  • Open the application to start a new project. It will open in the root App component, with its name listed in the left panel and the component represented by the white box on the canvas.
  • To add a new component, type its name in the upper left panel, in the field 'Add class component', and press enter.
  • To render a component instance to the screen, first select the component, or parent, that the instance will be rendered within. This selected component will be represented in a new canvas view, with its own white box. Then press the plus button next to the component name. An instance, or child, representation will appear on the canvas.
  • To add draggable HTML elements, select the image icons on the lower left panel.

Gif of adding

  • The bottom panel allows the user to toggle between 4 different views: a tree diagram of the application, a real-time preview of the exportable code, a form to enter component props, and a form to add HTML attributes.

Gif of code preview & tree

  • Props can be added to each component within its tab on bottom panel. Enter in a key-value pair, select its data type and press the bottom 'ADD PROP'.
  • HTML Element Attributes of class name and ID can be added to each HTML element after an HTML element has been rendered to the canvas.

Gif of attr & props

  • To delete a child or instance from the canvas, select the desired instance and either press the delete key.
  • To delete a component, click the 'DELETE' button of the desired component in the left panel.
  • To start over, select the blue 'CLEAR WORKSPACE' button in the left panel. This will clear the entire application.

To Export Files

  • Once finished setting up the application template, press the green 'EXPORT PROJECT' button at the bottom of the left panel and choose between two options to export your files:
    1. Export the component files into a components folder. This option will allow a developer to add these files to an existing project.
    2. Export a new project with TypeScript config files and the component files. This option will allow a developer to immediately begin a new project.

Authors

Christian Padilla @ChristianEdwardPadilla

Tolga Mizrakci @tolgamizrakci

Shlomo Porges @shlomoporges

Adam Singer @spincycle01

To Run Your Own Version

  • Fork and Clone Repository.
  • Open project directory
  • Install dependencies
yarn install
  • Run application
yarn start
  • For development experience, in one terminal...
yarn run dev
  • and on another terminal.
yarn run electron

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

reactype's People

Contributors

christianedwardpadilla avatar gmal1 avatar shlomoporges avatar spincycle01 avatar tolgamizrakci avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.