Code Monkey home page Code Monkey logo

react-boilerplate's Introduction

如何做好一个项目的技术选型

这个 repo 主要是以 React 为核心,开始往周边拓展库的一个项目启动
不同的技术方案,可以通过 Branch 来进行管理 参考 awesome-react-boilerplate

antd的脚手架市场 http://scaffold.ant.design/

技术选型选好之后,可以建立一个 cli 的形式,通过选取每个方向对应的库来自动拉去npm包,这样就可以快速初始化了 包括 .gitignore 也可以自动生成,通过fs来写入文件生成嘛ls

一个项目的技术选型其实也就是如何做好一个框架了,这个框架要怎么来设计

所以参考下当前业界的各个框架的设计

主要的技术选项

  • 编写JavaScript 选型:React

    • 选型 React 和 VUE 的区别
  • 使用 TypeScript

  • 接口请求 Axios

  • 路由 react-router

  • 打包工具 Webpack

  • CSS 的选型

    说一下 less / css-in-js / css module 的区别

    • POST-CSS 好像用的挺少的, 一般直接用的会少一点,
    • Less
    • SCSS
  • 组件库

    需要调研一下,如何做数据验证,如何主题自定义,是否支持分包加载

    1. 是否长期维护,提交频率是否频繁
    2. 组件是否完善
    3. 自定义程序是否完善
    4. 是否支持分包,主题自定义
    • antd
  • 数据管理

    • Mobx
    • Redux + thunk / saga
  • 是否需要使用模板

  • 是否需要使用后端渲染,如果需要,那么如何选择框架?Next?

  • 常用的库,如 lodash / hooks相关的库

  • 设置代码规范 eslint

  • 代码提交代码规范前检测 husky

  • 代码提交的commit 检测 commitlint

  • 文件目录规范

  • npm 的开发规范

    • init 初始化项目
    • Compile 编译
    • start 启动项目
    • Docs 项目文档
    • test 测试
    • publish 发布
  • 还有什么最佳实践可以看看

  • 代码提交规范前检测 husky

  • 文件目录规范

哪些配置是和业务选型有关的,哪些是和业务类型无关的

  • 和业务类型有关
    • 是否采用 服务端渲染
    • 组件库选型

react-boilerplate's People

Contributors

fedono avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.