Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dvajs/dva
🌱 React and redux based, lightweight and elm-style framework. (Inspired by elm and choo)
https://github.com/dvajs/dva
dva elm framework redux redux-saga
Last synced: 3 days ago
JSON representation
🌱 React and redux based, lightweight and elm-style framework. (Inspired by elm and choo)
- Host: GitHub
- URL: https://github.com/dvajs/dva
- Owner: dvajs
- License: mit
- Created: 2016-06-24T09:06:16.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-04-11T04:04:50.000Z (over 1 year ago)
- Last Synced: 2024-04-14T14:16:08.607Z (8 months ago)
- Topics: dva, elm, framework, redux, redux-saga
- Language: JavaScript
- Homepage: https://dvajs.com/
- Size: 2.27 MB
- Stars: 16,216
- Watchers: 437
- Forks: 3,170
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-state - dva - end framework based on redux, redux-saga and react-router. (react)
- awesome-frontend - dva - 基于 redux 和 redux-saga的数据流方案、轻量级的应用框架
- awesome-f2e-libs - **dva** - 我写的数据流,基于 redux。 (数据流 / macros)
- awesome-react-cn - dva
- awesome-star-libs - dvajs / dva
- awesome-react - dva - 🌱 React and redux based, lightweight and elm-style framework. (Inspired by elm and choo). ![](https://img.shields.io/github/stars/facebook/flux.svg?style=social&label=Star) (Utilities / State Management)
- awesome-overwatch - dvajs - Lightweight front-end framework based on redux, redux-saga and react-router. (Inspired by elm and choo). (Community / Github)
README
English | [简体中文](./README_zh-CN.md)
# dva
[![codecov](https://codecov.io/gh/dvajs/dva/branch/master/graph/badge.svg)](https://codecov.io/gh/dvajs/dva)
[![CircleCI](https://circleci.com/gh/dvajs/dva.svg?style=svg)](https://circleci.com/gh/dvajs/dva)
[![NPM version](https://img.shields.io/npm/v/dva.svg?style=flat)](https://npmjs.org/package/dva)
[![Build Status](https://img.shields.io/travis/dvajs/dva.svg?style=flat)](https://travis-ci.org/dvajs/dva)
[![Coverage Status](https://img.shields.io/coveralls/dvajs/dva.svg?style=flat)](https://coveralls.io/r/dvajs/dva)
[![NPM downloads](http://img.shields.io/npm/dm/dva.svg?style=flat)](https://npmjs.org/package/dva)
[![Dependencies](https://david-dm.org/dvajs/dva/status.svg)](https://david-dm.org/dvajs/dva)
[![Join the chat at https://gitter.im/dvajs/Lobby](https://img.shields.io/gitter/room/dvajs/Lobby.svg?style=flat)](https://gitter.im/dvajs/Lobby?utm_source=share-link&utm_medium=link&utm_campaign=share-link)Lightweight front-end framework based on [redux](https://github.com/reactjs/redux), [redux-saga](https://github.com/redux-saga/redux-saga) and [react-router](https://github.com/ReactTraining/react-router). (Inspired by [elm](http://elm-lang.org/) and [choo](https://github.com/yoshuawuyts/choo))
---
## Features
* **Easy to learn, easy to use**: only 6 apis, very friendly to redux users, and **API reduce to 0 when [use with umi](https://umijs.org/guide/with-dva.html)**
* **Elm concepts**: organize models with `reducers`, `effects` and `subscriptions`
* **Support HMR**: support HMR for components, routes and models with [babel-plugin-dva-hmr](https://github.com/dvajs/babel-plugin-dva-hmr)
* **Plugin system**: e.g. we have [dva-loading](https://github.com/dvajs/dva/tree/master/packages/dva-loading) plugin to handle loading state automatically## Demos
* [Count](https://stackblitz.com/edit/dva-example-count): Simple count example
* [User Dashboard](https://github.com/dvajs/dva/tree/master/examples/user-dashboard): User management dashboard
* [AntDesign Pro](https://github.com/ant-design/ant-design-pro):([Demo](https://preview.pro.ant.design/)),out-of-box UI solution for enterprise applications
* [HackerNews](https://github.com/dvajs/dva-hackernews): ([Demo](https://dvajs.github.io/dva-hackernews/)),HackerNews Clone
* [antd-admin](https://github.com/zuiidea/antd-admin): ([Demo](http://antd-admin.zuiidea.com/)),A admin dashboard application demo built upon Ant Design and Dva.js
* [github-stars](https://github.com/sorrycc/github-stars): ([Demo](http://sorrycc.github.io/github-stars/#/?_k=rmj86f)),Github star management application
* [Account System](https://github.com/yvanwangl/AccountSystem.git): A small inventory management system
* [react-native-dva-starter](https://github.com/nihgwu/react-native-dva-starter): react-native example integrated dva and react-navigation## Quick Start
* [Real project with dva](https://dvajs.com/guide/getting-started.html)
* [dva intro course](https://dvajs.com/guide/introduce-class.html)More documentation, checkout [https://dvajs.com/](https://dvajs.com/)
## FAQ
### Why is it called dva?
> D.Va’s mech is nimble and powerful — its twin Fusion Cannons blast away with autofire at short range, and she can use its Boosters to barrel over enemies and obstacles, or deflect attacks with her projectile-dismantling Defense Matrix.
—— From [OverWatch](http://ow.blizzard.cn/heroes/dva)
### Is it production ready?
Sure! We have 1000+ projects using dva in Alibaba.
### Does it support IE8?
No.
## Next
Some basic articles.
* The [8 Concepts](https://github.com/dvajs/dva/blob/master/docs/Concepts.md), and know how they are connected together
* [dva APIs](https://github.com/dvajs/dva/blob/master/docs/API.md)
* Checkout [dva knowledgemap](https://github.com/dvajs/dva-knowledgemap), including all the basic knowledge with ES6, React, dva
* Checkout [more FAQ](https://github.com/dvajs/dva/issues?q=is%3Aissue+is%3Aclosed+label%3Afaq)
* If your project is created by [dva-cli](https://github.com/dvajs/dva-cli), checkout how to [Configure it](https://github.com/sorrycc/roadhog#configuration)Want more?
* 看看 dva 的前身 [React + Redux 最佳实践](https://github.com/sorrycc/blog/issues/1),知道 dva 是怎么来的
* 在 gitc 分享 dva 的 PPT :[React 应用框架在蚂蚁金服的实践](http://slides.com/sorrycc/dva)
* 如果还在用 [email protected],请尽快 [升级到 2.x](https://github.com/sorrycc/blog/issues/48)## Community
| Slack Group | Github Issue | 钉钉群 | 微信群 |
| ------------------------------------------------------------ | ------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| [sorrycc.slack.com](https://join.slack.com/t/sorrycc/shared_invite/enQtNTUzMTYxNDQ5MzE4LTg1NjEzYWUwNDQzMWU3YjViYjcyM2RkZDdjMzE0NzIxMTg3MzIwMDM2YjUwNTZkNDdhNTY5ZTlhYzc1Nzk2NzI) | [umijs/umi/issues](https://github.com/umijs/umi/issues) | | |## License
[MIT](https://tldrlegal.com/license/mit-license)