rsnext/examples/with-cerebral
Shu Uesugi 6804039e94 Make example READMEs more consistent (#10124)
* npx create → npm init

* Fix inconsistent instructions

* Update amp-first

* Update with-graphql-react

* with-firebase-cloud-messaging

* Update with-higher-order-component

* change create-next-app url

* Update create-next-app instruction

* Update instructions to use npm instead of npx

* Move "the idea behind the example" to top

* Rename

* Rename

* Update contributing.md with a README template
2020-01-16 23:23:56 +01:00
..
components Improve linting rules to catch more errors (#9374) 2019-11-10 19:24:53 -08:00
modules/clock Improve linting rules to catch more errors (#9374) 2019-11-10 19:24:53 -08:00
pages Improve linting rules to catch more errors (#9374) 2019-11-10 19:24:53 -08:00
package.json Change React version of examples to latest (#5990) 2019-01-05 12:16:07 +01:00
README.md Make example READMEs more consistent (#10124) 2020-01-16 23:23:56 +01:00

Declarative State & Side-effect management with CerebralJS

Use CerebralJS to manage an apps state and side effects in a declarative manner:

Declarative CerebralJS:

;[
  setLoading(true),
  getUser,
  {
    success: setUser,
    error: setError,
  },
  setLoading(false),
]

vs imperative JS:

function getUser() {
  this.isLoading = true
  ajax
    .get('/user')
    .then(user => {
      this.data = user
      this.isLoading = false
    })
    .catch(error => {
      this.error = error
      this.isLoading = false
    })
}

Deploy your own

Deploy the example using ZEIT Now:

Deploy with ZEIT Now

How to use

Using create-next-app

Execute create-next-app with npm or Yarn to bootstrap the example:

npm init next-app --example with-cerebral with-cerebral-app
# or
yarn create next-app --example with-cerebral with-cerebral-app

Download manually

Download the example:

curl https://codeload.github.com/zeit/next.js/tar.gz/master | tar -xz --strip=2 next.js-master/examples/with-cerebral
cd with-cerebral

Install it and run:

npm install
npm run dev
# or
yarn
yarn dev

Deploy it to the cloud with now (download):

now