An opinionated ReactJs + Webpack generator for CoffeeScript.
----
Generators:
- Base app
- Builds router
- Adds mixin folder
- Adds webpack config
- Generates a test suite
- Replaces refs to french-press with your own
- if redux
- Builds using a different base
- Adds container component
- Requires intervention to produce a functional app
- View component (base component)
- Child component
- Navigation
- Comes with tests
- No route included
- Reducers
- Middleware
- Base app
-
Actions:
-
Included modules other than React:
- Bemmer - Create BEM with ease
- lodash - The missing standard lib
- moment - Parse, validate, manipulate and display dates
- React Mini Router - Easy routing
- Redux - Functional flux store for your data
npm install ./fp clean ./fp run ./fp build ./fp test ./fp clean && npm run spec && ./fp clean ./fp implodeYou will want to rm -rf .git and git init before running this command
./fp g --app --appName [AwesomeApp] --author [YourName] --ghUser [GitHubUserName] --email [some@one.com] --redux ./fp g --app --appName [AwesomeApp] --author [YourName] --ghUser [GitHubUserName] --email [some@one.com]NB: Components are placed in components/[componentName]/index.coffee by default
As a normal component with no customizations (route will match method name)
./fp g --view --[componentName]As base route
./fp g --view --[componentName] --route rootWith custom route
./fp g --view --[componentName] --route [customRouteName]With custom folder name NB: This will cause the component to be named based on the actual name of the function
./fp g --view --[componentName] --componentFolder [componentFolderName] ./fp g --view --[componentName] --slimNB: Components are placed in components/[componentFolderName]/[componentName].coffee by default
./fp g --component --[componentName] --folder [componentFolderName] ./fp g --component --[componentName] --folder [componentFolderName] --slim ./fp g --navigation ./fp g --reducer --middleware --store [storeName] ./fp g --reducer --store [storeName]- This is just a shell. It will require some work to complete a functional middleware module
./fp g --middleware --name [middlewareName] --store [storeName]Bug reports and pull requests are welcome on GitHub at https://github.com/whatisinternet/french-press. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
