A probe in implementing a React-based website, to inform and eventually become a web-react-base.
-
Git LFS: For versioning of binary files.
-
Luxon: For DateTime formatting and management.
-
JSS: For styling components, as used in Material-UI.
-
Material-UI: For Material Design components.
-
MDX: For authoring in Markdown.
-
MobX: For managing application state updates (i.e., as a store).
-
React: For rendering the interface.
-
react-snap: For pre-rendering application to be served as static files.
-
TypeScript: For compile-time type checking.
-
Yarn: For package management and script invocation.
-
Requires Node is installed:
-
Requires Yarn is globally installed:
npm install --global yarn
-
Requires project code has been cloned to your computer (see Using Git and Github).
-
Install packages:
yarn install
-
Build and serve, available at
http://localhost:3000
:yarn start
As you edit and save files, many changes will automatically update in the browser. A browser refresh is sometimes necessary when changes do not trigger automatic updates. Browser refresh is currently only supported at the root.
Several of the GitHub Guides are useful for getting started:
- https://guides.github.com/introduction/flow/
- https://guides.github.com/activities/hello-world/
- https://guides.github.com/introduction/git-handbook/
- https://guides.github.com/activities/forking/
We also find it easiest to use GitHub Desktop:
To work with this project, you will need to fork this repository and then clone it to your computer.
You should not commit edits to master
, but will instead create a branch and commit your edits to that branch.
You will then publish your branch to your fork and submit a pull request to merge it into this repository.
Afterwards or along the way, your fork and clone may fall behind the commits on this repository's current master
(i.e., because other people are merging their contributions onto this repository's master
).
You may therefore need to pull those commits into your master
and maybe rebase your branch onto the updated master
.
This is a standard social coding workflow, described to help you search for more information if needed.
Additional resources when you make a mistake or become stuck include: