Skip to content

Commit 32120be

Browse files
authored
Update README.md
1 parent fba0043 commit 32120be

File tree

1 file changed

+8
-18
lines changed

1 file changed

+8
-18
lines changed

README.md

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -81,16 +81,12 @@ Test reload speed improvement using this simple test procedure:
8181

8282
- PRODUCTION-WORKFLOW - npm scripts for production bundling & deployment, github-hooks, linter, test runner etc.
8383
- TYPESAFE-API-CALLS - type checking contracts of REST API calls - forget constantly checking for API docs and let your IDE guide you
84-
- GREAT-TOOLING - type cheking for JavaScript and DOM API with autocompletion and docs right in your editor - no more silly typos and runtime exceptions
8584
- REACT-ROUTER - included `react-router-redux` to store your routing in state for Time-Travel capabilities
8685
- REDUX-DEV-TOOLS - installed Redux DevTools capabilities with [chrome-extension](https://chrome.google.com/webstore/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd)
8786
- IMMUTABLE-STORE - using `seamless-immutable` for simplicity and backwards-compatibility with vanilla JS (no hassle with `toJS()`, `get()`, `getIn()` in your containers and components)
8887
- BEM & ITCSS - using BEM with Inverted Triangle conventions to give meaning and context to CSS classes
89-
- EASY TESTING IN TYPESCRIPT - write your tests in TypeScript - without transpilation to run your test, easily import and run your TS source files from a command line (use `npm test` CLI command).
90-
Test harness using [Tape](https://github.com/substack/tape) - with Promise support using [blue-tape](https://github.com/spion/blue-tape)
91-
92-
#### React-Redux TypeScript Typing Conventions
93-
- ???
88+
- TESTING IN TYPESCRIPT - writing and running tests from TypeScript source files without transpilation complexity (use `npm test` CLI command) - test harness using [tape](https://github.com/substack/tape) and [blue-tape](https://github.com/spion/blue-tape).
89+
- Type-safe React-Redux with TypeScript
9490

9591
#### React Best Practices & Optimizations
9692
- no mixins -> use ES6 style PureRenderMixin with PureComponent
@@ -99,8 +95,9 @@ Test harness using [Tape](https://github.com/substack/tape) - with Promise suppo
9995
- no function/objects instantiation in render method -> instantiate in outer scope and use references
10096
- render big collections in separate, dedicated components -> no unfortunate re-renders when other props changes
10197
- don't use array index as key property -> use item unique id property to eliminate bugs
98+
- remove `bindActionCreators` boilerplate using object literal with actions instead of `mapDispatchToProps` function [issue #32](/../../issues/32)
10299

103-
#### React Patterns
100+
#### React-Redux Patterns
104101
- Flux Standard Actions for Redux - https://github.com/acdlite/redux-actions
105102
- Redux Reducer Modules - https://github.com/erikras/ducks-modular-redux
106103

@@ -118,20 +115,14 @@ Test harness using [Tape](https://github.com/substack/tape) - with Promise suppo
118115

119116
- Redux async flow with redux-saga - https://github.com/yelouafi/redux-saga/
120117
- Testing async flow in redux sagas
121-
- REDUX INNOVATION - using TS 2.0 "Tagged Union Types" - for solid Redux integration
122-
(https://blogs.msdn.microsoft.com/typescript/2016/08/30/announcing-typescript-2-0-rc)
123-
- Reactive Programming with RxJS
124118
- Testing with Enzyme (JSDOM)
125-
- Testing Component markup (shallowRender)
126-
- Testing Component behaviour/interactions (renderIntoDocument, Simulate)
127-
- Integration Testing in Redux Store
119+
- Testing with Snapshots
120+
- Reactive Programming with RxJS
128121

129122
---
130123

131124
## Pros / Cons
132125

133-
It is OK to use type-checking in the IDE because it will not emit any code.
134-
135126
---
136127

137128
## Project Structure
@@ -146,12 +137,11 @@ It is OK to use type-checking in the IDE because it will not emit any code.
146137
│ ├── components # global reusable presentational components
147138
│ ├── containers # container components providing redux context
148139
│ ├── layouts # components defining page layouts
149-
│ ├── reducers # modules containing redux reducers/constants/action creators
140+
│ ├── store # modules containing redux modules (reducers/constants/action creators)
150141
│ ├── services # modules abstracting communication with web services
151-
│ ├── typings # custom TypeScript definitions
142+
│ ├── types # custom TypeScript definitions
152143
│ ├── utils # app utility modules
153144
│ ├── app.tsx # app entry module with routing config
154-
│ ├── store.tsx # app store module
155145
│ ├── test-runner.tsx # test suites config
156146
│ └── tsconfig.tsx # TypeScript compiler config
157147
├── index.html # index.html

0 commit comments

Comments
 (0)