Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: use links on READMEs #828

Merged
merged 3 commits into from
Jan 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
# Fluxible ![Build Status](https://github.com/yahoo/fluxible/actions/workflows/node.js.yml/badge.svg)

This repository is the home of [Fluxible](http://fluxible.io/) and related libraries.
This repository is the home of Fluxible and related libraries.

For support, join our [gitter.im](https://gitter.im/yahoo/fluxible) channel.
For support, please use [GitHub Discussions](https://github.com/yahoo/fluxible/discussions).

## Documentation

Please check out the Fluxible package [README](https://github.com/yahoo/fluxible/blob/main/packages/fluxible/README.md) for documentation.

## Development

Expand Down
1 change: 0 additions & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ If you want to jump right into building your application, head over to our [Quic

If you want to look at example applications, check out our examples:

- [Fluxible.io](https://github.com/yahoo/fluxible/blob/master/site) - Our very own documentation site written with Fluxible.
- [Chat](https://github.com/yahoo/fluxible/blob/master/examples/chat) - Port of [Facebook's Flux chat example](https://github.com/facebook/flux/tree/master/examples/).
- [Fluxible Router](https://github.com/yahoo/fluxible/blob/master/examples/fluxible-router) - Simple isomorphic routing in Flux flow.
- [React Router](https://github.com/yahoo/fluxible/blob/master/examples/react-router) - Simple isomorphic routing with React router.
Expand Down
2 changes: 1 addition & 1 deletion docs/community/libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Take a look at some of the libraries that our community has built. Edit this pag

## Actions

* [fluxible-action-utils](https://github.com/yahoo/fluxible-action-utils) - utility methods to aid in writing [actions](http://fluxible.io/api/fluxible-context.html#executeaction-action-payload-callback-) for [fluxible](http://fluxible.io) based applications.
* [fluxible-action-utils](https://github.com/yahoo/fluxible-action-utils) - utility methods to aid in writing [actions](https://github.com/yahoo/fluxible/blob/main/packages/fluxible/docs/api/Actions.md#action-context) for Fluxible based applications.
* [fluxible-plugin-actions](https://github.com/gingur/fluxible-plugin-actions) - component context utility to get actions by key instead of path, useful for cross library components.

## Immutable.js
Expand Down
1 change: 0 additions & 1 deletion docs/community/reference-applications.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ Want to add your application? Click edit above and open a PR!
- [Contactor](https://github.com/localnerve/flux-react-example) is a data-driven Fluxible demo application. Uses [Fetchr](https://github.com/yahoo/fetchr), AMQP, and Github as a simple data service. Another possible useful source of inspiration for solving problems encountered while developing an isomorphic application.
- [Dockunit.io](https://github.com/tlovett1/dockunit-platform/) is a containerized continuous integration testing service for running [Dockunit](https://github.com/tlovett1/dockunit) test suites hosted on Github. Built on Fluxible and Docker. It is 100% open source.
- [Flux Examples](https://github.com/yahoo/fluxible/blob/master/examples) contains various Flux examples built with Fluxible.
- [Fluxible.io](https://github.com/yahoo/fluxible/blob/master/site) is this website! Showcases data fetching, routing, analytics, search and more.
- [isomorphic500](https://github.com/gpbl/isomorphic500) is a Fluxible demo application showing photos from 500px. It uses the official Fluxible plugins, supports multiple language and includes a full-stack development environment. Useful as a source of inspiration to solve some common cases encountered while developing an isomorphic application.
- [quad-blog](https://github.com/cesarandreu/quad-blog/) is a blog written with Fluxible. Another possible useful source of inspiration for solving problems encountered while developing an isomorphic application.
- [SlideWiki Platform](https://github.com/slidewiki/slidewiki-platform) is an OpenCourseWare authoring platform.
Expand Down
4 changes: 2 additions & 2 deletions docs/home.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,6 @@ Helper utilities for integrating your Fluxible app into React [components](../pa

Want to add your own interfaces to the Flux flow? [Plugins](../packages/fluxible/docs/api/Plugins.md) allow you to add methods to any of the contexts.

## Updated for React 17
## Updated for Latest React

Updated to follow React 17's changes and the deprecations coming in the next version of React.
Updated to follow React's changes and the deprecations coming in the next version of React.
2 changes: 1 addition & 1 deletion examples/fluxible-router/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# routing with fluxible

This shows routing on the client and the server with
[Fluxible](http://fluxible.io). Navigation uses history pushes on the
Fluxible. Navigation uses history pushes on the
client but browser refresh will render the current page correctly on
the server.

Expand Down
3 changes: 0 additions & 3 deletions examples/todo/components/Html.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,6 @@ const Component = (props) => (
TodoMVC React (Pete Hunt)
</a>
</p>
<p>
Showing off <a href="http://fluxible.io">Fluxible</a>
</p>
</footer>
<script dangerouslySetInnerHTML={{ __html: props.state }}></script>
<script src="/public/js/client.js" defer></script>
Expand Down
4 changes: 1 addition & 3 deletions packages/fluxible-addons-react/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@
$ npm install --save fluxible-addons-react
```

Join the #fluxible channel of the [Reactiflux](http://reactiflux.com) Discord community.

[![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/yahoo/fluxible)
For support, please use [GitHub Discussions](https://github.com/yahoo/fluxible/discussions).

## Docs

Expand Down
2 changes: 1 addition & 1 deletion packages/fluxible-plugin-fetchr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ By Default, fetchr appends all context values to the xhr url as query params. `c

To collect fetcher service's success/failure/latency stats, you can configure `statsCollector` for `FetchrPlugin`. The `statsCollector` function will be invoked with two arguments: `actionContext` and `stats`:

* **actionContext:** This is the [action context](http://fluxible.io/api/actions.html#action-context) object provided by [Fluxible](http://fluxible.io/).
* **actionContext:** This is the [action context](https://github.com/yahoo/fluxible/blob/main/packages/fluxible/docs/api/Actions.md#action-context) object provided by [Fluxible](http://fluxible.io/).
* **stats:** This object contains all stats data for each service CRUD request. [See Fetchr docs for more info about provided stats data fields.](https://github.com/yahoo/fetchr/blob/master/README.md#stats-monitoring--analysis)

Example for how to configure `statsCollector`:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Creates a new `fetchr` plugin instance with the following parameters:
* `options.xhrPath='/api'` (optional): Stores your xhr path prefix used by client side requests.
* `options.xhrTimeout=3000` (optional): Timeout in milliseconds for all XHR requests (can be overridden per request).
* `options.statsCollector` (optional): This function will be invoked for each fetcher request with two arguments:
* **actionContext:** This is the [action context](http://fluxible.io/api/actions.html#action-context) object provided by [Fluxible](http://fluxible.io/).
* **actionContext:** This is the [action context](https://github.com/yahoo/fluxible/blob/main/packages/fluxible/docs/api/Actions.md#action-context) object provided by [Fluxible](http://fluxible.io/).
* **stats:** This object contains all stats data for each service CRUD request. [See Fetchr docs for more info about provided stats data fields.](https://github.com/yahoo/fetchr/blob/master/README.md#stats-monitoring--analysis)

## Instance Methods
Expand All @@ -18,7 +18,7 @@ Creates a new `fetchr` plugin instance with the following parameters:

getter for the `xhrPath` option passed into the constructor.

```
```js
var pluginInstance = fetchrPlugin({
xhrPath: '/api'
});
Expand Down
1 change: 0 additions & 1 deletion packages/fluxible-router/docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@

If you want to look at example applications, check out our examples:

- [Fluxible.io](https://github.com/yahoo/fluxible/blob/master/site) - Our very own documentation site written with Fluxible and Fluxible Router.
- [Chat](https://github.com/yahoo/fluxible/tree/master/examples/chat) - Port of [Facebook's Flux chat example](https://github.com/facebook/flux/tree/master/examples/).
- [Fluxible Router](https://github.com/yahoo/fluxible/tree/master/examples/fluxible-router) - Simple isomorphic routing in Flux flow.
55 changes: 27 additions & 28 deletions packages/fluxible/README.md
Original file line number Diff line number Diff line change
@@ -1,44 +1,43 @@
# Fluxible

[![NPM version](https://badge.fury.io/js/fluxible.svg)](http://badge.fury.io/js/fluxible)
<!--
[![Build Status](https://img.shields.io/travis/yahoo/fluxible.svg)](https://travis-ci.org/yahoo/fluxible)
[![Coverage Status](https://img.shields.io/coveralls/yahoo/fluxible.svg)](https://coveralls.io/r/yahoo/fluxible?branch=master)
[![Dependency Status](https://img.shields.io/david/yahoo/fluxible.svg)](https://david-dm.org/yahoo/fluxible)
[![devDependency Status](https://img.shields.io/david/dev/yahoo/fluxible.svg)](https://david-dm.org/yahoo/fluxible#info=devDependencies)
-->
# Fluxible [![NPM version](https://badge.fury.io/js/fluxible.svg)](http://badge.fury.io/js/fluxible)

Pluggable, singleton-free container for isomorphic [Flux](https://github.com/facebook/flux) applications.

```bash
$ npm install --save fluxible
npm install --save fluxible
```

Join the #fluxible channel of the [Reactiflux](http://reactiflux.com) Discord community.
For support, please use [GitHub Discussions](https://github.com/yahoo/fluxible/discussions).

## Features

[![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/yahoo/fluxible)
* Singleton-free for server rendering
* [Store](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Stores.md) dehydration for client bootstrapping
* Stateless async [actions](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Actions.md)
* Higher-order [components](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Components.md) for easy integration
* Enforcement of Flux flow - restricted access to the [Flux interface](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/FluxibleContext.md) from within components
* [Pluggable](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Plugins.md) - add your own interfaces to the Flux context

## Docs

* [Quick Start](https://github.com/yahoo/fluxible/blob/master/docs/quick-start.md)
* [API](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/README.md)
* [Quick Start](https://github.com/yahoo/fluxible/blob/master/docs/quick-start.md)
* [API](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/README.md)
* [Data Fetching](https://github.com/yahoo/fluxible/blob/main/packages/fluxible-plugin-fetchr/README.md)
* [Routing](https://github.com/yahoo/fluxible/blob/main/packages/fluxible-router/README.md)

## Features

* Singleton-free for server rendering
* [Store](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Stores.md) dehydration for client bootstrapping
* Stateless async [actions](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Actions.md)
* Higher order [components](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Components.md) for easy integration
* Enforcement of Flux flow - restricted access to the [Flux interface](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/FluxibleContext.md) from within components
* [Pluggable](https://github.com/yahoo/fluxible/blob/master/packages/fluxible/docs/api/Plugins.md) - add your own interfaces to the Flux context
* Updated for React 15

## Extras

* [Yeoman generator](https://github.com/yahoo/fluxible/blob/master/packages/generator-fluxible)
* [Example Applications](https://github.com/yahoo/fluxible/blob/master/examples)
* [Fluxible Routing](https://github.com/yahoo/fluxible/blob/master/packages/fluxible-router)
* [Isomorphic Data Services](https://github.com/yahoo/fluxible/blob/master/packages/fluxible-plugin-fetchr)
* [Yeoman generator](https://github.com/yahoo/fluxible/blob/master/packages/generator-fluxible)
* [Example Applications](https://github.com/yahoo/fluxible/blob/master/examples)
* [Fluxible Routing](https://github.com/yahoo/fluxible/blob/master/packages/fluxible-router)
* [Isomorphic Data Services](https://github.com/yahoo/fluxible/blob/master/packages/fluxible-plugin-fetchr)

## Community

* [Article](https://github.com/yahoo/fluxible/blob/main/docs/community/articles.md)
* [Libraries](https://github.com/yahoo/fluxible/blob/main/docs/community/libraries.md)
* [Presentations](https://github.com/yahoo/fluxible/blob/main/docs/community/presentations.md)
* [References Apps](https://github.com/yahoo/fluxible/blob/main/docs/community/reference-applications.md)

## Usage

Expand Down Expand Up @@ -104,7 +103,7 @@ context.executeAction(action, 'bar', (err) => {
## Browser Compatibility

Fluxible is written with ES2015 in mind and should be used along with polyfills
for features like [`Promise`][Promise] and [`Object.assign`][objectAssign]
for features like [`Promise`][Promise] and [`Object.assign`][objectAssign]
in order to support all browsers. We recommend using [Babel][babel] along with
its [polyfill][polyfill].

Expand Down
2 changes: 2 additions & 0 deletions packages/fluxible/docs/api/Fluxible.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Instantiated once for your application, this holds settings and interfaces that

```js
import Fluxible from 'fluxible';

const fluxibleApp = new Fluxible({
component: require('./components/App.jsx')
});
Expand All @@ -15,6 +16,7 @@ For each request:

```js
const context = fluxibleApp.createContext();

context.executeAction(action, payload, function () {
const element = React.createElement(context.getComponent(), {
context: context.getComponentContext()
Expand Down
3 changes: 2 additions & 1 deletion packages/fluxible/docs/api/Plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Here, we'll give components access to the `getFoo()` function:

```js
import Fluxible from 'fluxible';

let app = new Fluxible();

app.plug({
Expand Down Expand Up @@ -92,7 +93,7 @@ context.getComponentContext().getFoo(); // returns 'bar'

### componentContext

To leverage the new context value in componentContext, `provideContext` has an option for [passing custom contextTypes](http://fluxible.io/addons/provideContext.html#plugins-and-custom-component-context) which will ensure that it is made available to all children.
To leverage the new context value in componentContext, `provideContext` has an option for [passing custom contextTypes](https://github.com/yahoo/fluxible/blob/main/packages/fluxible/docs/api/Components.md#providing-the-context) which will ensure that it is made available to all children.

```js
// create the React component as usual
Expand Down
48 changes: 25 additions & 23 deletions packages/fluxible/docs/api/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
# API Documentation

`var Fluxible = require('fluxible')` exports the following:

* [`Fluxible`](Fluxible.md)


or if you're using ES6:
[`Fluxible`](Fluxible.md) exports the following:

```js
import Fluxible from 'fluxible';
Expand All @@ -17,41 +12,48 @@ Occasionally you may find that you need to use [plugins](Plugins.md) to extend F

## Addons

`var FluxibleAddons = require('fluxible/addons')` also provides helper utilities for creating stores:

* [`FluxibleAddons.BaseStore`](addons/BaseStore.md)
* [`FluxibleAddons.createStore`](addons/createStore.md)
FluxibleAddons provides helper utilities for creating stores:

or if you're using ES6:
* [`BaseStore`](addons/BaseStore.md)
* [`createStore`](addons/createStore.md)

```js
import {BaseStore, createStore} from 'fluxible/addons';
import { BaseStore, createStore } from 'fluxible/addons';
```

These libraries are not bundled with the main Fluxible export because stores are decoupled from Fluxible.

## React Addons

`npm i --save fluxible-addons-react`
Install the package:

`var ReactAddons = require('fluxible-addons-react');` provides helpers for
using Fluxible with React.
```bash
npm i --save fluxible-addons-react
```

* [`FluxibleAddons.connectToStores`](../../../../packages/fluxible-addons-react/docs/api/connectToStores.md)
* [`FluxibleAddons.FluxibleComponent`](../../../../packages/fluxible-addons-react/docs/api/FluxibleComponent.md)
* [`FluxibleAddons.FluxibleMixin`](../../../../packages/fluxible-addons-react/docs/api/FluxibleMixin.md)
* [`FluxibleAddons.provideContext`](../../../../packages/fluxible-addons-react/docs/api/provideContext.md)
`fluxible-addons-react` provides helpers for using Fluxible with React.

or if you're using ES6:
* [`batchedUpdatePlugin`](../../../../packages/fluxible-addons-react/docs/api/batchedUpdatePlugin.md)
* [`connectToStores`](../../../../packages/fluxible-addons-react/docs/api/connectToStores.md)
* [`createElementWithContext`](../../../../packages/fluxible-addons-react/docs/api/createElementWithContext.md)
* [`FluxibleComponent`](../../../../packages/fluxible-addons-react/docs/api/FluxibleComponent.md)
* [`FluxibleMixin`](../../../../packages/fluxible-addons-react/docs/api/FluxibleMixin.md)
* [`provideContext`](../../../../packages/fluxible-addons-react/docs/api/provideContext.md)
* [`useFluxible`](../../../../packages/fluxible-addons-react/docs/api/useFluxible.md)
* [`withFluxible`](../../../../packages/fluxible-addons-react/docs/api/withFluxible.md)

```js
import {connectToStores, FluxibleComponent, FluxibleMixin, provideContext} from 'fluxible-addons-react';
import { connectToStores, FluxibleComponent, FluxibleMixin, provideContext } from 'fluxible-addons-react';
```

These libraries are not bundled with Fluxible to allow for Fluxible usage with
These libraries are not bundled with Fluxible to allow for Fluxible usage with
other view libraries such as React Native.

## Utils
## Debugging

* [fluxible-plugin-devtools](https://github.com/yahoo/fluxible/blob/main/packages/fluxible-plugin-devtools/docs/fluxible-plugin-devtools.md)

## Testing

Fluxible also provides the following utilities for testing your components:

Expand Down
2 changes: 1 addition & 1 deletion packages/fluxible/lib/FluxibleContext.js
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,7 @@ FluxContext.prototype.getComponentContext = function getComponentContext() {
console.warn(
'When calling executeAction from a component, ' +
"a callback isn't allowed. See our docs for more info: " +
'http://fluxible.io/api/components.html#component-context',
'https://github.com/yahoo/fluxible/blob/main/packages/fluxible/docs/api/Components.md#component-context',
);
}
}
Expand Down
Loading