Skip to content
This repository has been archived by the owner. It is now read-only.
This repository has been archived by the owner. It is now read-only.

Support ReactJS for frontend views #17

Description

@nlaz

Description

A lot of attendees are interested in learning to use Javascript frontend frameworks like React. This was not included in the first version of the starter kit because keeping a client-side app in-sync with a server is a bit complicated and we want to make this project friendly to beginners. However, I think we could come up with a way to support a client-side framework like React, be simple/clear for beginners, and save a lot of headaches for people trying to add it on their own.

Here are a few considerations for supporting React on this project.

  • Handling secure requests - Looking into how to make secure API requests using JWTs and determining how to store that information on the client-side.
  • Single launch point - Some example projects using two separate apps for a React + Express stack. It would be ideal to use a single launch point for attendees to run this project. It might be
  • Flash of unstyled content - This is a common issue with React projects because components is frequently rendered before "hydrating" the app with information. Let's try to avoid this if possible.

A good model to follow might be how Next.js handles server-rendered apps with Express. If this became Next.js + Express app, I would be very happy.

Sidenote: A lot of people like to bundle React together with a state management tool like Redux or a query language like GraphQL. These technologies likely don't solve the needs for 90% of hackathon projects and introduce additional complexity and barriers of entry for beginners. Supporting these technologies should be a separate discussion from supporting React.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions