Modern web template with React, Material UI, React Query, React Router, Formik with Yup validation, Zustand for state management, and i18n for internationalization.
-
Node.js v20 and later
nvm install 20 nvm use 20
-
degit
npm install -g degit
- Download the repository
degit git@github.com:ivbutsykin/int20h-web-template.git
- Install NPM packages
npm install
- You can easily remove the example components by using the following commands
cd src/components/molecules/ ; rm -rf * ; touch .gitkeep ; cd ../../../
cd src/components/organisms/ ; rm -rf * ; touch .gitkeep ; cd ../../../
cd src/components/pages/EntryPage ; cd ../../../../
cd src/constants ; rm validation.js users.js; cd ../../
cd src/api ; rm users.js ; cd ../../
cd src/assets ; rm -rf * ; touch .gitkeep ; cd ../../
-
Change the default favicon in the
public
folder with your own, and make sure to update theindex.html
file with the new favicon path and the correct title. -
To remove rest of the example code find and replace code in the following files
src/components/templates/EntryTemplate/EntryTemplate.jsx
import { Box } from "@mui/material";
function EntryTemplate() {
return <Box />;
}
export default EntryTemplate;
src/components/templates/LetteringTemplate/LetteringTemplate.jsx
import { Box } from "@mui/material";
function LetteringTemplate() {
return <Box />;
}
export default LetteringTemplate;
src/components/pages/NotFoundPage/NotFoundPage.jsx
import LetteringTemplate from "../../templates/LetteringTemplate/LetteringTemplate";
function NotFoundPage() {
return <LetteringTemplate />;
}
export default NotFoundPage;
src/components/pages/ErrorPage/ErrorPage.jsx
import LetteringTemplate from "../../templates/LetteringTemplate/LetteringTemplate";
function ErrorPage() {
return <LetteringTemplate />;
}
export default ErrorPage;
src/components/pages/LocalisationFallbackPage/LocalisationFallbackPage.jsx
import LetteringTemplate from "../../templates/LetteringTemplate/LetteringTemplate";
function LocalisationFallbackPage() {
return <LetteringTemplate />;
}
export default LocalisationFallbackPage;
src/constants/api.js
export const BASE_URL = "";
src/locales/en.json
{}
src/locales/uk.json
{}
-
Run the development server
npm run dev
-
Remove
README.md
or replace it with your own