Options
All
  • Public
  • Public/Protected
  • All
Menu

@youwol/flux-rxjs

@youwol/flux-rxjs

Collection of modules for Flux exposing RxJs operators.

Installation, Build & Test

To install the required dependencies:

yarn 

To build for development:

yarn build:dev

To build for production:

yarn build:prod

To test:

yarn test

To generate code documentation:

yarn doc

Documentation

You can find the documentation here

Contributions

The YouWol project is open-source as much as possible, do not hesitate to contribute by creating branches and pull-requests.

The Youwol fullstack environment (YouWol FSE) should be used when developing flux-pack. It offers an immersive experience of the YouWol ecosystem, and lets you work with your favorite stack. Usually you've accessed this file using it anyway. All the links in what follows assumed you've started this environment.

Fetching the code

Create a branch and includes the github folder into your workspace (as defined in your YouWol FSE's configuration file, under category 'flux-pack'). Reload the dashboard, the package should now be listed (My Computer=>Packages).

Using modules in a flux-app

build, test & publish the package from the dashboard.

Start by creating a new flux-app:

  • short version: follow this link, you won't be able to save your changes
  • long version: from the workspace, navigate in the explorer into your private group, eventually create a drive and a folder, and with a right click select new app. You can now start its construction (click on construct after having selected it in your workspace).

Once opened, in the top builder-panel:

  • right click + 'new module(s)'
  • expand the 'explorer node'
  • navigate to private / default-drive / {name}
  • select module(s) and validate

Implementing new features

You can start iterate in the code, build, test & publish each time you want to test your features in Flux.

Documentation about designing modules in Flux can be found in the flux-core documentation.

Version management

In order to conveniently work within YouWol's environment, the following approach regarding versioning is recommended:

  • when you start a new version of your package (e.g. from a version 0.1.2) you append a -next to the version you've started from (e.g. 0.1.2-next). Among other things, it will ensure that your browser won't cache your source code.
  • when iterating over the same version, just keep the -next and publish to the CDN whenever you want to try your modules in Flux.
  • when you want to finalize a version: (i) pick the right version number (e.g. 0.1.3, 0.2.0, etc ), (ii) go through 'build/test/publish CDN', and (iii) eventually publish your package in a npm repository.

The CDN is accepting to override previous publish version, this is how the -next trick is working and allows for a smooth integrated experience. However, when a finalized version of your package is published (with no -next suffix), it is strongly recommended to not update the CDN content of your package anymore for this version.

If you plan to share your package, you'll need to publish it in a npm repository. For public or private needs, the choice of this repository is yours. For more advanced permission resolution related to YouWol's group, you'll need to use your YouWol's GitLab environment (not available yet).

Generated using TypeDoc