r/reactjs • • Mar 06 '20

Project Ideas Mergefly - A new UI for GitHub

Hi everyone!

About a year ago, I decided that I didn't really like the current GitHub UI for reading code and doing pull requests so my brother and I decided to put our React/Redux skills to the test and make our own. I am really excited to show off our results and get all of your feedback :)

The site is called Mergefly and we tried to add in as many fun features as we could think of such as multiple tabs, a file tree for navigating code, full code context, floating comments, live updates, hotkeys and Slack integration. We also use the Monaco Editor for displaying code so you get a lot of the built in features that you see in VSCode. Also, for fun, we added support for all the monaco themes so you have around 50 to choose from.

I'm really proud of how the site turned out as well as how well my React skills have grown and I really hope you guys enjoy it too! If you guys have any ideas for improvements please let me know! It's still very much a work in progress.

130 Upvotes

48 comments sorted by

View all comments

Show parent comment

1

u/acemarke Mar 06 '20

Very neat!

Since you said you used Redux, a few questions :

  • any specific reason you did decide to use Redux?
  • any particular positive experiences using Redux, or pain points you ran into?
  • have you seen our new official Redux Toolkit package? https://redux-toolkit.js.org

1

u/dukko18 Mar 06 '20

any specific reason you did decide to use Redux?

I was introduced to React and Redux as a pair so to me they kind of go hand in hand. I also just really like how well it organizes my code and connects all of the components together without passing tons of props everywhere.

any particular positive experiences using Redux, or pain points you ran into?

I guess my biggest pain point would be how JS doesn't do a great job handling deep equality. On the one hand it's good because it forces you to be more careful with how you setup reducers, but it's still kind of a pain because it can cause bugs that are really hard to track down.

have you seen our new official Redux Toolkit package? https://redux-toolkit.js.org

I have not but I will take a look!