Skip to content

Commit f57cac8

Browse files
authored
Merge pull request #181 from oslabs-beta/dev
Merge Reactype 11.0 into master branch
2 parents d28d3e9 + 1285511 commit f57cac8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1282
-623
lines changed

CHANGE_LOG.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<p align="center">
2+
<img width="100" src="https://i.imgur.com/Yn70tqI.png">
3+
<h1 align="center">ReacType Change Log</h1>
4+
</p>
5+
6+
**Version 11.0.0 Changes:**
7+
8+
- Added Next.js functionality
9+
- Next.js projects will generate the right code needed for exporting a Next.js application
10+
- Link & Image elements have been added
11+
- Link components are able to couple with a page to enable SSR
12+
- Current canvas can be saved as a page to be coupled with a Next.js Link element
13+
- Image element can accept special attribute that allow for it to optimize performance
14+
- Added Redux and began migrating some state over for ease of development (debugging & readability)
15+
- Fixed bug causing electron to crash when closing the window rather than going to file > exit
16+
- Fixed bug causing app to crash when project was changed to either Next.js or Gatsby.js
17+
- Fixed GitHub OAuth
18+
- added Passport.js & Passport-Github libraries for strategies which takes care of all the credential exchanges and session information
19+
- linked electron front end to talk to backend to exchange credentials
20+
- Fixed code preview not displaying properly
21+
- Fixed dark mode not syncing properly across pages
22+
23+
**Version 11.0.0 Stretch Features:**
24+
25+
- Move more state away from the react hook & context API and into the Redux store
26+
- This will be very time consuming but will make implementing new features much easier
27+
- Highly suggest you read Redux documentation on best practices before diving into this
28+
- This will improve performance by reducing the amount of unneccessary re-render. The context API causes certain pieces of state to be needlessly coupled
29+
- Debugging is much easier by the use of Redux dev tools which allow time travel debugging
30+
- Code will be easier to read and thus data flow will be easier to visualize
31+
- Tried to implement peer to peer communication via webRTC with redux swarmlog but was not successful. Look into websockets.
32+
- Save project (state) onto local storage for guests

README.md

Lines changed: 38 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<p align="center">
2-
<img width="50" src="https://i.imgur.com/Yn70tqI.png">
2+
<img width="100" src="https://i.imgur.com/Yn70tqI.png">
33
<h1 align="center">ReacType </h1>
44
</p>
55

66
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/team-reactype/ReacType/pulls)
77
![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)
8-
![Version 10.0.0]
8+
![Version 11.0.0]
99

1010
**ReacType** is a rapid prototyping tool for developers employing **React** component architecture alongside the comprehensive type-checking of **TypeScript**.
1111
In other words, **you can draw prototypes and export React / TypeScript code!**
@@ -16,7 +16,7 @@ Download for [MacOS](https://github.com/team-reactype/ReacType/releases), [Windo
1616

1717
- **Mac users**: After opening the dmg and dragging ReacType into your Applications folder, ctrl+click the icon and select 'Open' from the context menu to run the app. This extra step is necessary since we don't have an Apple developer license yet.
1818

19-
- **Windows users**: Install the application by running ReacType Setup 10.0.0.exe.
19+
- **Windows users**: Install the application by running ReacType Setup 11.0.0.exe.
2020

2121
- **Linux users**: Run the application as a super user in order to read and write files.
2222

@@ -35,7 +35,7 @@ How to use
3535
- **Create Instances on the Canvas**: Each component has its own canvas. Add an element to a component by dragging it onto the canvas. Div components are arbitrarily nestable and useful for complex layouts. Next.js and Gatsby.js projects have Link components to enable client-side navigation to other routes.
3636
- **Component Tree**: Click on the Component Tree tab next to the Code Preview tab to view the component tree hierarchy.
3737
- **Update Styling**: Select an element on the canvas to update its basic style attributes on the right panel. As you create new instances and add styling, watch as your code dynamically generates in the code preview in the bottom panel.
38-
- **Using State in Elements**: As of 10.0.0, you can now select an HTML element on the canvas and then navigate to the customization panel to click a button to pass a variable from state into your element's text or link field.
38+
- **Using State in Elements**: As of 11.0.0, you can now select an HTML element on the canvas and then navigate to the customization panel to click a button to pass a variable from state into your element's text or link field.
3939
- **User Preference Features**: With the click of a button, toggle between light mode and dark mode, depending on your preference.
4040
- **Export project**: Click the “Export Project’ button to export the project’s application files into a TypeScript file. The exported project is fully functional with Webpack, Express server, routing, etc., and will match what is mocked on the canvas.
4141
- **Export project with Tests**: Click the "includes tests" checkbox while exporting to include pre-configured Webpack, Jest, and Typescript files along with tests for your project.
@@ -49,7 +49,7 @@ How to use
4949
- **Like**: Like other people's templates by clicking on the thumbs up icon.
5050
- **Comment**: Comment on other templates by typing in the input field and clicking the comment icon.
5151
- **Download**: Save any public template by clicking the download icon to save a copy as your own.
52-
- **Publish**: Publish any template to the Public Dashboard for other users to download, like, or comment on. Click again to unpublish projects.
52+
- **Publish**: Publish any template to the Public Dashboard for other users to download, like, or comment on. Click again to unpublish projects.
5353
- **Sort By**: Click the 'Sort By' button to choose different metrics to sort the Public Dashboard by.
5454
- **Form Nesting**: Nesting within form tags is now fully functional
5555
- **Added Undo and Redo functionality**
@@ -60,31 +60,36 @@ How to use
6060
- Modernized and cleaner UI, including enhanced dark mode
6161
- Tutorial has been updated to reflect other modifications
6262

63+
**New with version 11.0.0:**
6364

64-
**New with version 10.0.0:**
65-
- **Live Code Preview**: See your code preview update in real time as you build. React hooks are enabled for application lifecycle management. Dynamically render functional components using a live code editor. User's can hook event listeners to components and see them render in real time.
65+
- **Enhanced Next.js Functionality**: Create a Next.js application in Reactype! Take advantage of server side rendering and static site generation by using the new improved Next.js link and image components. Simply drag and drop a Link element onto the canvas which can be coupled with a page to support SSR or optimize performance by using Next.js' Image component to enable on-demand image resizing. After you're done, export your project as a Next.js application written in Typescript!
66+
- **More Dark Mode**: Cleaned up the dark mode UI and added it to all areas of the application including the sign in and sign up page.
67+
- **Various Performance Enhancements**: Improved performance by reducing unnecessary re-rendering due to needlessly coupled state hooks
68+
- **And more:** See CHANGE_LOG.md for more details on what was changed from the previous version as well as plans for upcoming features!
6669

6770
### Keyboard Shortcuts
6871

6972
**Mac**:
70-
- Export Project: Command + e
71-
- Undo: Command + z
72-
- Redo: Command + Shift + z
73-
- Save Project As: Command + s
74-
- Save Project: Command + shift + s
75-
- Delete HTML Tag on Canvas: Backspace
76-
- Delete Project: Command + Backspace
77-
- Open Project: Command + o
73+
74+
- Export Project: Command + e
75+
- Undo: Command + z
76+
- Redo: Command + Shift + z
77+
- Save Project As: Command + s
78+
- Save Project: Command + shift + s
79+
- Delete HTML Tag on Canvas: Backspace
80+
- Delete Project: Command + Backspace
81+
- Open Project: Command + o
7882

7983
**Windows**:
80-
- Export Project: Control + e
81-
- Undo: Control + z
82-
- Redo: Control + Shift + z
83-
- Save Project As: Control + s
84-
- Save Project: Control + shift + s
85-
- Delete HTML Tag on Canvas: Backspace
86-
- Delete Project: Control + Backspace
87-
- Open Project: Control + o
84+
85+
- Export Project: Control + e
86+
- Undo: Control + z
87+
- Redo: Control + Shift + z
88+
- Save Project As: Control + s
89+
- Save Project: Control + shift + s
90+
- Delete HTML Tag on Canvas: Backspace
91+
- Delete Project: Control + Backspace
92+
- Open Project: Control + o
8893

8994
#### Contributors
9095

@@ -106,6 +111,8 @@ How to use
106111

107112
[Bryan Chau](https://www.linkedin.com/in/chaubryan1/) [@bchauu](https://github.com/bchauu)
108113

114+
[Calvin Cao](http://www.linkedin.com/in/calvincao9/) [@calvincao](https://github.com/calvincao)
115+
109116
[Charles Finocchiaro](https://www.linkedin.com/in/charles-finocchiaro-62440040/) [@null267](https://github.com/null267)
110117

111118
[Chelsey Fewer](https://www.linkedin.com/in/chelsey-fewer/) [@chelseyeslehc](https://github.com/chelseyeslehc)
@@ -128,6 +135,8 @@ How to use
128135

129136
[Eliot Nguyen](https://linkedin.com/in/ibeeliot) [@ibeeliot](https://github.com/ibeeliot)
130137

138+
[Evan Crews](https://www.linkedin.com/in/evan-crews/) [@Evan-Crews](https://github.com/Evan-Crews)
139+
131140
[Fredo Chen](https://www.linkedin.com/in/fredochen/) [@fredosauce](https://github.com/fredosauce)
132141

133142
[Jonathan Calvo Ramirez](https://www.linkedin.com/in/jonathan-calvo/) [@jonocr](https://github.com/jonocr)
@@ -138,6 +147,8 @@ How to use
138147

139148
[Julie Wu](https://www.linkedin.com/in/jwuarchitect/) [@yutingwu4](https://github.com/yutingwu4)
140149

150+
[Katrina Henderson](https://www.linkedin.com/in/katrinahenderson/) [@kchender](https://github.com/kchender)
151+
141152
[Kevin Park](https://www.linkedin.com/in/xkevinpark/) [@xkevinpark](https://github.com/xkevinpark)
142153

143154
[Khuong Nguyen](https://www.linkedin.com/in/khuong-nguyen/) [@khuongdn16](https://github.com/khuongdn16)
@@ -146,6 +157,8 @@ How to use
146157

147158
[Luke Madden](https://www.linkedin.com/in/lukemadden/) [@lukemadden](https://github.com/lukemadden)
148159

160+
[Michael Ng](https://www.linkedin.com/in/<ADD_USERNAME>/) [@MikoGome](https://github.com/MikoGome)
161+
149162
[Miles Wright](https://www.linkedin.com/in/miles-m-wright) [@Miles818](https://github.com/Miles818)
150163

151164
[Mitchel Severe](https://www.linkedin.com/in/misevere/) [@mitchelsevere](https://github.com/mitchelsevere)
@@ -184,6 +197,8 @@ How to use
184197

185198
[William Yoon](https://www.linkedin.com/in/williamdyoon/) [@williamdyoon](https://github.com/williamdyoon)
186199

200+
[Yuanji Huang](https://www.linkedin.com/in/yuanjihuang/) [@kr1spybacon](https://github.com/kr1spybacon)
201+
187202
## To Run Your Own Version
188203

189204
- **Fork** and **Clone** Repository.

0 commit comments

Comments
 (0)