├── .gitignore ├── .travis.yml ├── README.md ├── enforce-node-version.js ├── exercises ├── 01_intro_to_the_workshop │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 02_wrapping_values_as_reactive_datatypes │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 03_subscription_based │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 04_eventstreams │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 05_properties │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 06_map_and_filter │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 07_fold_and_scan │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 08_combining_observables_part_i │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 09_combining_observables_part_ii │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 10_and_or_or_or_maybe_not │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 11_sampled │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 12_selective_data_by_timing │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 13_flatmaps │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 14_field_and_form_validation │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 15_loading_spinner │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js ├── 16_error_handling │ ├── exercise.js │ ├── problem.md │ └── solution │ │ └── solution.js └── menu.json ├── index.js ├── package.json ├── screenshot.png ├── tasks.md ├── test ├── test-correct-node-version.js └── test-exercises.js └── verify.js /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/.travis.yml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/README.md -------------------------------------------------------------------------------- /enforce-node-version.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/enforce-node-version.js -------------------------------------------------------------------------------- /exercises/01_intro_to_the_workshop/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/01_intro_to_the_workshop/exercise.js -------------------------------------------------------------------------------- /exercises/01_intro_to_the_workshop/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/01_intro_to_the_workshop/problem.md -------------------------------------------------------------------------------- /exercises/01_intro_to_the_workshop/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/01_intro_to_the_workshop/solution/solution.js -------------------------------------------------------------------------------- /exercises/02_wrapping_values_as_reactive_datatypes/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/02_wrapping_values_as_reactive_datatypes/exercise.js -------------------------------------------------------------------------------- /exercises/02_wrapping_values_as_reactive_datatypes/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/02_wrapping_values_as_reactive_datatypes/problem.md -------------------------------------------------------------------------------- /exercises/02_wrapping_values_as_reactive_datatypes/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/02_wrapping_values_as_reactive_datatypes/solution/solution.js -------------------------------------------------------------------------------- /exercises/03_subscription_based/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/03_subscription_based/exercise.js -------------------------------------------------------------------------------- /exercises/03_subscription_based/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/03_subscription_based/problem.md -------------------------------------------------------------------------------- /exercises/03_subscription_based/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/03_subscription_based/solution/solution.js -------------------------------------------------------------------------------- /exercises/04_eventstreams/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/04_eventstreams/exercise.js -------------------------------------------------------------------------------- /exercises/04_eventstreams/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/04_eventstreams/problem.md -------------------------------------------------------------------------------- /exercises/04_eventstreams/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/04_eventstreams/solution/solution.js -------------------------------------------------------------------------------- /exercises/05_properties/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/05_properties/exercise.js -------------------------------------------------------------------------------- /exercises/05_properties/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/05_properties/problem.md -------------------------------------------------------------------------------- /exercises/05_properties/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/05_properties/solution/solution.js -------------------------------------------------------------------------------- /exercises/06_map_and_filter/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/06_map_and_filter/exercise.js -------------------------------------------------------------------------------- /exercises/06_map_and_filter/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/06_map_and_filter/problem.md -------------------------------------------------------------------------------- /exercises/06_map_and_filter/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/06_map_and_filter/solution/solution.js -------------------------------------------------------------------------------- /exercises/07_fold_and_scan/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/07_fold_and_scan/exercise.js -------------------------------------------------------------------------------- /exercises/07_fold_and_scan/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/07_fold_and_scan/problem.md -------------------------------------------------------------------------------- /exercises/07_fold_and_scan/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/07_fold_and_scan/solution/solution.js -------------------------------------------------------------------------------- /exercises/08_combining_observables_part_i/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/08_combining_observables_part_i/exercise.js -------------------------------------------------------------------------------- /exercises/08_combining_observables_part_i/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/08_combining_observables_part_i/problem.md -------------------------------------------------------------------------------- /exercises/08_combining_observables_part_i/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/08_combining_observables_part_i/solution/solution.js -------------------------------------------------------------------------------- /exercises/09_combining_observables_part_ii/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/09_combining_observables_part_ii/exercise.js -------------------------------------------------------------------------------- /exercises/09_combining_observables_part_ii/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/09_combining_observables_part_ii/problem.md -------------------------------------------------------------------------------- /exercises/09_combining_observables_part_ii/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/09_combining_observables_part_ii/solution/solution.js -------------------------------------------------------------------------------- /exercises/10_and_or_or_or_maybe_not/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/10_and_or_or_or_maybe_not/exercise.js -------------------------------------------------------------------------------- /exercises/10_and_or_or_or_maybe_not/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/10_and_or_or_or_maybe_not/problem.md -------------------------------------------------------------------------------- /exercises/10_and_or_or_or_maybe_not/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/10_and_or_or_or_maybe_not/solution/solution.js -------------------------------------------------------------------------------- /exercises/11_sampled/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/11_sampled/exercise.js -------------------------------------------------------------------------------- /exercises/11_sampled/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/11_sampled/problem.md -------------------------------------------------------------------------------- /exercises/11_sampled/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/11_sampled/solution/solution.js -------------------------------------------------------------------------------- /exercises/12_selective_data_by_timing/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/12_selective_data_by_timing/exercise.js -------------------------------------------------------------------------------- /exercises/12_selective_data_by_timing/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/12_selective_data_by_timing/problem.md -------------------------------------------------------------------------------- /exercises/12_selective_data_by_timing/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/12_selective_data_by_timing/solution/solution.js -------------------------------------------------------------------------------- /exercises/13_flatmaps/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/13_flatmaps/exercise.js -------------------------------------------------------------------------------- /exercises/13_flatmaps/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/13_flatmaps/problem.md -------------------------------------------------------------------------------- /exercises/13_flatmaps/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/13_flatmaps/solution/solution.js -------------------------------------------------------------------------------- /exercises/14_field_and_form_validation/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/14_field_and_form_validation/exercise.js -------------------------------------------------------------------------------- /exercises/14_field_and_form_validation/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/14_field_and_form_validation/problem.md -------------------------------------------------------------------------------- /exercises/14_field_and_form_validation/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/14_field_and_form_validation/solution/solution.js -------------------------------------------------------------------------------- /exercises/15_loading_spinner/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/15_loading_spinner/exercise.js -------------------------------------------------------------------------------- /exercises/15_loading_spinner/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/15_loading_spinner/problem.md -------------------------------------------------------------------------------- /exercises/15_loading_spinner/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/15_loading_spinner/solution/solution.js -------------------------------------------------------------------------------- /exercises/16_error_handling/exercise.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/16_error_handling/exercise.js -------------------------------------------------------------------------------- /exercises/16_error_handling/problem.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/16_error_handling/problem.md -------------------------------------------------------------------------------- /exercises/16_error_handling/solution/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/16_error_handling/solution/solution.js -------------------------------------------------------------------------------- /exercises/menu.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/exercises/menu.json -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/index.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/package.json -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/screenshot.png -------------------------------------------------------------------------------- /tasks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/tasks.md -------------------------------------------------------------------------------- /test/test-correct-node-version.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/test/test-correct-node-version.js -------------------------------------------------------------------------------- /test/test-exercises.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/test/test-exercises.js -------------------------------------------------------------------------------- /verify.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaelbr/bacon-love/HEAD/verify.js --------------------------------------------------------------------------------