{"id":23179220,"url":"https://github.com/lightningminers/typescript-react-starter","last_synced_at":"2025-08-18T12:31:45.886Z","repository":{"id":39559132,"uuid":"144802935","full_name":"lightningminers/typescript-react-starter","owner":"lightningminers","description":"🚀 TypeScript [ React + React-Router + Redux + Redux-Thunk ]  Starter","archived":false,"fork":false,"pushed_at":"2023-01-04T21:38:32.000Z","size":4842,"stargazers_count":135,"open_issues_count":25,"forks_count":25,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-11-07T17:12:03.700Z","etag":null,"topics":["boilerplate","react","react-router-dom","redux","redux-thunk","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lightningminers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-15T03:47:01.000Z","updated_at":"2023-11-07T17:12:03.702Z","dependencies_parsed_at":"2023-02-02T21:01:05.219Z","dependency_job_id":null,"html_url":"https://github.com/lightningminers/typescript-react-starter","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightningminers%2Ftypescript-react-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightningminers%2Ftypescript-react-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightningminers%2Ftypescript-react-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lightningminers%2Ftypescript-react-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lightningminers","download_url":"https://codeload.github.com/lightningminers/typescript-react-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230231384,"owners_count":18193919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boilerplate","react","react-router-dom","redux","redux-thunk","typescript"],"created_at":"2024-12-18T07:14:09.214Z","updated_at":"2024-12-18T07:14:09.818Z","avatar_url":"https://github.com/lightningminers.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# typescript-react-starter\n\n![license](https://img.shields.io/github/license/icepy/typescript-react-starter)\n![forks](https://img.shields.io/github/forks/icepy/typescript-react-starter)\n![stars](https://img.shields.io/github/stars/icepy/typescript-react-starter)\n![issues](https://img.shields.io/github/issues/icepy/typescript-react-starter)\n\n`typescript-react-starter` 是一个使用CRA编写的 TypeScript Starter 工程，集成了 [ React + React-Router + Redux + Redux-Thunk ]，旨在为移动 Web 应用开发者提供 “开箱即用” 的 TypeScript 样板工程，开发者只需下载此项目，根据范例即可编写复杂大型的 React 应用。\n\n## Install\n\n```bash\n$ git clone git@github.com:icepy/typescript-react-starter.git\n$ cd typescript-react-starter\n$ yarn\n$ npm start\n```\n\n使用浏览器访问 `http://localhost:3000/`。（更多命令可查看 package.json 的 scripts 字段）\n\n## 工程结构\n\n- assets 放置图片等文件资源\n- components 放置被共享的组件\n- pages 放置页面级别的组件\n- services 放置本工程依赖的所有请求服务\n- store 放置本工程被管理的数据流\n- themes 放置本工程主题文件\n- third_party 放置依赖的第三方\n- typings 放置类型增强\n- shared 共享的集合\n- App.tsx 应用的容器文件\n- index.tsx 入口文件\n\n## 函数式编程\n\n函数式的好处，非常多，举例不拘。不管是样式还是组件逻辑，我们只有一个原则：组合，我们需要从这样的角度来考虑任何问题。\n\n## 适配方案\n\n基于iPhone 6来完成设计稿，即 1334 * 750，在编写的时候直接使用 `px` 单位即可。\n\n## 必要的注释\n\n![img](./tools/action.png)\n![img](./tools/doc.png)\n\n## 时间旅行\u0026操作日志\n\n操作的回溯让我们对某一个业务的变化了如指掌\n\n![img](./tools/redux_timer.gif)\n\n## Component\n\n节点可以打上 tag 或 name，方便于任何一个人来理解业务\n\n![img](./tools/components.gif)\n\n## Profiler\n\n\u003e 优化是另一个问题，我们会基于此来展开优化，包括网络，资源文件，store 的大小，react 组合，分割等等方面。\n\n![img](./tools/profiler.gif)\n\n![img](./tools/performance.png)\n\n## 远程回溯\n\n\u003e 这个事情就能做一个大系统\n\n当用户端发生一个错误时，我们可以将当前节点的数据快照传输到服务端，然后进行错误分析。\n\n## CI/CD\n\n\u003e 我之前一直使用的是gitlab，所以CI/CD是基于 runner 做的。\n\n## LICENSE\n\nGNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flightningminers%2Ftypescript-react-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flightningminers%2Ftypescript-react-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flightningminers%2Ftypescript-react-starter/lists"}