Template React Project using create-react-app & TypeScript
Template Typescript React Project
Demo deploy at: reactts-boilerplate.netlify.app
This version is deprecated, It will be updated & changed soon. Learn more about React boiler plate
To use this template
Install dependencies from package.json
to your machine
$ yarn
# or
$ npm install
Run or build project
$ yarn start
$ yarn build
# or npm run start / npm run build
Login
username: tester
password: 123456
tree
.
├── LICENSE
├── package.json
├── public
│ ├── favicon.ico
│ ├── images
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ └── robots.txt
├── README.md
├── server
│ ├── db
│ │ └── db.json
│ └── routes.json
├── src
│ ├── App
│ │ └── App.tsx
│ ├── assets
│ │ ├── images
│ │ └── scss
│ │ ├── _config.scss
│ │ ├── _fonts.scss
│ │ ├── _footer.scss
│ │ ├── _header.scss
│ │ ├── _home.scss
│ │ ├── index.scss
│ │ ├── _login.scss
│ │ ├── _responsive.scss
│ │ └── _staticPages.scss
│ ├── components
│ │ ├── Auth
│ │ │ ├── Auth.actions.ts
│ │ │ ├── Auth.constants.ts
│ │ │ ├── Auth.reducers.ts
│ │ │ ├── Auth.thunks.ts
│ │ │ ├── Login.tsx
│ │ │ ├── Profile.tsx
│ │ │ └── Register.tsx
│ │ ├── Error
│ │ │ └── 404.tsx
│ │ ├── Footer
│ │ │ └── index.tsx
│ │ ├── Header
│ │ │ ├── index.tsx
│ │ │ ├── LeftMenu.tsx
│ │ │ └── RightMenu.tsx
│ │ ├── Home
│ │ │ ├── AuthLinks.tsx
│ │ │ ├── GuestLinks.tsx
│ │ │ └── index.tsx
│ │ ├── Loading
│ │ │ ├── index.tsx
│ │ │ └── Loading.styles.ts
│ │ ├── Products
│ │ │ ├── Product.actions.ts
│ │ │ ├── Product.constants.ts
│ │ │ ├── ProductForm.tsx
│ │ │ ├── ProductItem.tsx
│ │ │ ├── ProductList.tsx
│ │ │ ├── Product.reducers.ts
│ │ │ └── Product.thunks.ts
│ │ └── StaticPages
│ │ ├── About.tsx
│ │ ├── Contact.tsx
│ │ ├── Demo.option.1.tsx
│ │ ├── Demo.option.2.tsx
│ │ ├── Feature.option.1.tsx
│ │ └── Feature.option.2.tsx
│ ├── constants
│ │ ├── paths.ts
│ │ ├── products.ts
│ │ └── urls.ts
│ ├── hooks
│ │ └── usePrevious.tsx
│ ├── index.tsx
│ ├── pages
│ │ ├── AuthPages
│ │ │ ├── LoginPage.tsx
│ │ │ ├── ProfilePage.tsx
│ │ │ └── RegisterPage.tsx
│ │ ├── ErrorPages
│ │ │ └── 404Pages.tsx
│ │ ├── HomePages
│ │ │ └── HomePage.tsx
│ │ ├── layouts
│ │ │ └── MainLayout.tsx
│ │ ├── ProductPages
│ │ │ ├── ProductEditPage.tsx
│ │ │ ├── ProductItemPage.tsx
│ │ │ ├── ProductListPage.tsx
│ │ │ └── ProductNewPage.tsx
│ │ └── StaticPages
│ │ ├── AboutPage.tsx
│ │ ├── ContactPage.tsx
│ │ ├── Demo1Page.tsx
│ │ ├── Demo2Page.tsx
│ │ ├── Feature1Page.tsx
│ │ └── Feature2Page.tsx
│ ├── react-app-env.d.ts
│ ├── reportWebVitals.ts
│ ├── routes
│ │ ├── index.tsx
│ │ └── PrivateRoute.tsx
│ ├── setupTests.ts
│ ├── store
│ │ ├── index.ts
│ │ └── reducers.ts
│ ├── @types
│ │ ├── actions.d.ts
│ │ ├── alert.d.ts
│ │ ├── api.d.ts
│ │ ├── files.d.ts
│ │ ├── product.d.ts
│ │ ├── reducer.d.ts
│ │ └── user.d.ts
│ └── utils
│ └── helper.js
├── tsconfig.json
└── yarn.lock
action.d.ts
: Action Interface for Reduxapi.d.ts
: Response interface for apifiles.d.ts
: Declare modules for images, videos, css formats…reducer.d.ts
: return type of reducerproduct.d.ts
, user.d.ts
: return interface of item in project