neuefische / web-exercises

Session exercises
MIT License
20 stars 33 forks source link

CodeSandbox Cloud #302

Closed djfarly closed 1 year ago

djfarly commented 1 year ago

This moves all 268 (!) challenges and demos to work on CodeSandbox Cloud.

Here is a list of all exercises.

All of them should work

I think we should make random samples to gain some confidence that everything is working.

Once this is done we need to update all existing links in this repo and in web-curriculum to link to the cloud sandboxes.

djfarly commented 1 year ago

I just noticed that this installed styled-components v6. ๐Ÿ‘€

If we want this we need to update the session to include transient props.

https://styled-components.com/docs/faqs#what-do-i-need-to-do-to-migrate-to-v6

actyvystom commented 1 year ago

Testing backend-basics_chance (line 4 in list) failed with the following issues:

> backend-basics_chance@0.0.0-unreleased start
> node --watch index.js || node index.js

node: bad option: --watch

Server tests run fine.

actyvystom commented 1 year ago

Minor issue: testing js-functions_pizza-analyzer, the Development section in README mentions tests although no tests are set up for this exercise. Needs to be removed?

djfarly commented 1 year ago

Testing backend-basics_chance (line 4 in list) failed with the following issues:

  • start script does not recognize the --watch option
> backend-basics_chance@0.0.0-unreleased start
> node --watch index.js || node index.js

node: bad option: --watch

Server tests run fine.

fixed :)

djfarly commented 1 year ago

Minor issue: testing js-functions_pizza-analyzer, the Development section in README mentions tests although no tests are set up for this exercise. Needs to be removed?

There are a lot of challenges like this. It will be very hard to figure out which actually have tests. My reasoning was to always run tests and to always document them. This way they are less of a surprise if they're actually there ๐Ÿ˜„

I agree that it would be better to be specific but it will be hard to get right.

actyvystom commented 1 year ago

Testing recap-project-1_quiz-app started up with an input to define my starting process:

recap-project-1-cloud-sandbox

I think this might be really confusing for the students, especially at the first recap project, don't you think? Is there some configuration missing so that this one starts up this way?

Same applies for recap-project-4_weather-and-activities-app and recap-project-5_art-gallery-app

actyvystom commented 1 year ago

Testing recap-project-3_example-implementation: strange styles, looks broken:

recap-project-3-example-implementation
djfarly commented 1 year ago

Regarding recap-project-1_quiz-app, recap-project-4_weather-and-activities-app and recap-project-5_art-gallery-app

those repos will only be linked as a description. In other words the links in the spreadsheet wont be used

djfarly commented 1 year ago

https://github.com/neuefische/web-exercises/pull/302#issuecomment-1618455856 fixed โœ…

onemanwenttomow commented 1 year ago

[EDIT] NVM. Just seen that the branch was merged and deleted...

Just wanted to start testing some of the challenges from the spreadsheet and i end up seeing this atm.

For the following challenge. (same for a few others i tried too)

Screenshot 2023-07-05 at 14 29 50

Will wait and test again later.

djfarly commented 1 year ago

@onemanwenttomow ๐Ÿ™ƒ

here is the csv for the main branchโ€ฆ

exercise,cloud,legacy,ghcd
accessibility_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/accessibility/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/accessibility/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/accessibility/demo-end
accessibility_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/accessibility/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/accessibility/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/accessibility/demo-start
backend-api-routes_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-end
backend-api-routes_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-api-routes/demo-start
backend-api-routes_products,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/products,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/products,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-api-routes/products
backend-api-routes_random-character,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/random-character,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-api-routes/random-character,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-api-routes/random-character
backend-mongodb_database-design,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-mongodb/database-design,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-mongodb/database-design,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-mongodb/database-design
backend-mongodb_queries,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-mongodb/queries,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-mongodb/queries,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-mongodb/queries
backend-create_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-create/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-create/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-create/demo-end
backend-create_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-create/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-create/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-create/demo-start
backend-create_products,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-create/products,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-create/products,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-create/products
backend-read_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-read/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-read/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-read/demo-end
backend-read_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-read/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-read/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-read/demo-start
backend-read_products,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-read/products,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-read/products,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-read/products
backend-basics_chance,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-basics/chance,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-basics/chance,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-basics/chance
backend-basics_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-basics/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-basics/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-basics/demo-end
backend-basics_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-basics/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-basics/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-basics/demo-start
backend-basics_greeting,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-basics/greeting,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-basics/greeting,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-basics/greeting
backend-basics_routes,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-basics/routes,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-basics/routes,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-basics/routes
backend-update-and-delete_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-end
backend-update-and-delete_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/demo-start
backend-update-and-delete_products,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/products,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/products,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/backend-update-and-delete/products
css-animations_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-animations/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-animations/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-animations/demo-end
css-animations_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-animations/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-animations/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-animations/demo-start
css-animations_toast-animations,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-animations/toast-animations,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-animations/toast-animations,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-animations/toast-animations
css-basics_button-styles,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/button-styles,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/button-styles,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/button-styles
css-basics_combined-users,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/combined-users,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/combined-users,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/combined-users
css-basics_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/demo-end
css-basics_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/demo-start
css-basics_pink-box,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/pink-box,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/pink-box,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/pink-box
css-basics_pokemon-page,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/pokemon-page,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/pokemon-page,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/pokemon-page
css-basics_pseudo-park,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/pseudo-park,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/pseudo-park,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/pseudo-park
css-basics_shapes,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/shapes,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/shapes,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/shapes
css-basics_social-card,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-basics/social-card,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-basics/social-card,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-basics/social-card
css-flexbox_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-end
css-flexbox_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-flexbox/demo-start
css-flexbox_navigation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/navigation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/navigation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-flexbox/navigation
css-flexbox_profile,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/profile,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-flexbox/profile,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-flexbox/profile
css-grid_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/demo-end
css-grid_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/demo-start
css-grid_fish-cards,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/fish-cards,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/fish-cards,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/fish-cards
css-grid_image-board,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/image-board,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/image-board,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/image-board
css-grid_image-gallery,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/image-gallery,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/image-gallery,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/image-gallery
css-grid_payment-cards,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/payment-cards,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/payment-cards,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/payment-cards
css-grid_place-elements,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/place-elements,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/place-elements,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/place-elements
css-grid_service-gallery,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-grid/service-gallery,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-grid/service-gallery,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-grid/service-gallery
css-positioning_absolute-no-advanced-requirements,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-no-advanced-requirements,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-no-advanced-requirements,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-no-advanced-requirements
css-positioning_absolute-top-right-bottom-left,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-top-right-bottom-left,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-top-right-bottom-left,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-positioning/absolute-top-right-bottom-left
css-positioning_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-positioning/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-positioning/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-positioning/demo-end
css-positioning_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-positioning/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-positioning/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-positioning/demo-start
css-positioning_layout-with-position,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-positioning/layout-with-position,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-positioning/layout-with-position,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-positioning/layout-with-position
css-responsive_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/demo-end
css-responsive_demo-example-responsive,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-responsive,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-responsive,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-responsive
css-responsive_demo-example-static,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-static,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-static,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/demo-example-static
css-responsive_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/demo-start
css-responsive_playground,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/playground,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/playground,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/playground
css-responsive_responsive-website,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-responsive/responsive-website,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-responsive/responsive-website,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-responsive/responsive-website
css-selectors_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-selectors/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-selectors/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-selectors/demo-end
css-selectors_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-selectors/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-selectors/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-selectors/demo-start
css-structure_custom-properties,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-structure/custom-properties,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-structure/custom-properties,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-structure/custom-properties
css-structure_selectors-and-cascading,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/css-structure/selectors-and-cascading,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/css-structure/selectors-and-cascading,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/css-structure/selectors-and-cascading
html-and-the-web_div-salad,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/html-and-the-web/div-salad,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/html-and-the-web/div-salad,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/html-and-the-web/div-salad
html-and-the-web_personal-website,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/html-and-the-web/personal-website,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/html-and-the-web/personal-website,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/html-and-the-web/personal-website
html-forms_Finding-a11y-errors,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/html-forms/Finding-a11y-errors,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/html-forms/Finding-a11y-errors,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/html-forms/Finding-a11y-errors
html-forms_personal-profile-form,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/html-forms/personal-profile-form,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/html-forms/personal-profile-form,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/html-forms/personal-profile-form
html-forms_zoo,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/html-forms/zoo,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/html-forms/zoo,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/html-forms/zoo
js-array-methods_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-end
js-array-methods_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/demo-start
js-array-methods_filter,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/filter,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/filter,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/filter
js-array-methods_for-each,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/for-each,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/for-each,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/for-each
js-array-methods_map,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/map,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/map,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/map
js-array-methods_repetition,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/repetition,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/repetition,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/repetition
js-array-methods_spa-1,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-1,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-1,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-1
js-array-methods_spa-2,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-2,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-2,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-2
js-array-methods_spa-3,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-3,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-3,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods/spa-3
js-array-methods-2_animal-objects,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-objects,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-objects,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-objects
js-array-methods-2_animal-strings,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-strings,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-strings,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/animal-strings
js-array-methods-2_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-end
js-array-methods-2_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/demo-start
js-array-methods-2_fun-with-flags,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/fun-with-flags,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/fun-with-flags,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/fun-with-flags
js-array-methods-2_news-flash,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/news-flash,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-array-methods-2/news-flash,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-array-methods-2/news-flash
js-async-functions_api-status,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/api-status,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/api-status,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/api-status
js-async-functions_blocking-demo,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/blocking-demo,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/blocking-demo,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/blocking-demo
js-async-functions_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-end
js-async-functions_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/demo-start
js-async-functions_fetch-demo,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/fetch-demo,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/fetch-demo,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/fetch-demo
js-async-functions_relay-race,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/relay-race,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/relay-race,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/relay-race
js-async-functions_sleep,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/sleep,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/sleep,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/sleep
js-async-functions_slot-machine,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/slot-machine,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-async-functions/slot-machine,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-async-functions/slot-machine
js-basics_console-methods,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-basics/console-methods,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-basics/console-methods,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-basics/console-methods
js-basics_dark-mode,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-basics/dark-mode,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-basics/dark-mode,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-basics/dark-mode
js-basics_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-basics/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-basics/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-basics/demo-end
js-basics_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-basics/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-basics/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-basics/demo-start
js-basics_survey-error-fixing,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-basics/survey-error-fixing,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-basics/survey-error-fixing,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-basics/survey-error-fixing
js-callback-functions_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-end
js-callback-functions_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/demo-start
js-callback-functions_user-login-callback-1-named-vs-anonymous,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-1-named-vs-anonymous,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-1-named-vs-anonymous,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-1-named-vs-anonymous
js-callback-functions_user-login-callback-2-with-argument,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-2-with-argument,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-2-with-argument,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-2-with-argument
js-callback-functions_user-login-callback-3-with-multiple-arguments,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-3-with-multiple-arguments,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-3-with-multiple-arguments,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-3-with-multiple-arguments
js-callback-functions_user-login-callback-4-with-multiple-functions,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-4-with-multiple-functions,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-4-with-multiple-functions,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-callback-functions/user-login-callback-4-with-multiple-functions
js-conditions-and-booleans_booleans,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/booleans,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/booleans,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/booleans
js-conditions-and-booleans_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-end
js-conditions-and-booleans_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/demo-start
js-conditions-and-booleans_statements,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/statements,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/statements,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/statements
js-conditions-and-booleans_teenager,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager
js-conditions-and-booleans_teenager-check,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager-check,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager-check,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/teenager-check
js-conditions-and-booleans_truthy-and-falsy,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/truthy-and-falsy,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/truthy-and-falsy,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-conditions-and-booleans/truthy-and-falsy
js-createelement_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-createelement/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-createelement/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-createelement/demo-end
js-createelement_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-createelement/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-createelement/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-createelement/demo-start
js-createelement_product-teaser,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-createelement/product-teaser,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-createelement/product-teaser,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-createelement/product-teaser
js-createelement_social-media-post,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-createelement/social-media-post,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-createelement/social-media-post,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-createelement/social-media-post
js-createelement_toast-messages,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-createelement/toast-messages,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-createelement/toast-messages,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-createelement/toast-messages
js-fetch_color-clue,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-fetch/color-clue,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-fetch/color-clue,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-fetch/color-clue
js-fetch_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-fetch/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-fetch/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-fetch/demo-end
js-fetch_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-fetch/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-fetch/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-fetch/demo-start
js-fetch_star-wars,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars
js-fetch_star-wars-console,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars-console,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars-console,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-fetch/star-wars-console
js-forms_calculator,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms/calculator,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms/calculator,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms/calculator
js-forms_checkbox-input,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms/checkbox-input,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms/checkbox-input,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms/checkbox-input
js-forms_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms/demo-end
js-forms_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms/demo-start
js-forms_handle-form-submit,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms/handle-form-submit,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms/handle-form-submit,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms/handle-form-submit
js-forms-2_controlled-input-uppercase,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/controlled-input-uppercase,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/controlled-input-uppercase,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/controlled-input-uppercase
js-forms-2_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-end
js-forms-2_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/demo-start
js-forms-2_formvalidation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/formvalidation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/formvalidation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/formvalidation
js-forms-2_simple-live-calculator,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-live-calculator,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-live-calculator,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-live-calculator
js-forms-2_simple-todolist,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-todolist,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-todolist,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-forms-2/simple-todolist
js-functions_basic-functions,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions/basic-functions,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions/basic-functions,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions/basic-functions
js-functions_dom-manipulation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions/dom-manipulation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions/dom-manipulation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions/dom-manipulation
js-functions_functions-with-parameters,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters
js-functions_functions-with-parameters-extra,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters-extra,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters-extra,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions/functions-with-parameters-extra
js-functions_pizza-analyzer,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions/pizza-analyzer,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions/pizza-analyzer,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions/pizza-analyzer
js-functions-2_arrow-functions,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/arrow-functions,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/arrow-functions,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions-2/arrow-functions
js-functions-2_basic-calculations,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/basic-calculations,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/basic-calculations,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions-2/basic-calculations
js-functions-2_greeting-page,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/greeting-page,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/greeting-page,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions-2/greeting-page
js-functions-2_progress-bar,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/progress-bar,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-functions-2/progress-bar,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-functions-2/progress-bar
js-inputs-and-strings_change-box-appearance,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/change-box-appearance,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/change-box-appearance,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/change-box-appearance
js-inputs-and-strings_input-to-upper-and-lowercase,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-upper-and-lowercase,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-upper-and-lowercase,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-upper-and-lowercase
js-inputs-and-strings_input-to-uppercase,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-uppercase,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-uppercase,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/input-to-uppercase
js-inputs-and-strings_multiple-inputs,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/multiple-inputs,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/multiple-inputs,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/multiple-inputs
js-inputs-and-strings_switch-values,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/switch-values,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/switch-values,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-inputs-and-strings/switch-values
js-loops_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/demo-end
js-loops_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/demo-start
js-loops_for-console,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/for-console,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/for-console,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/for-console
js-loops_forin-select-nav,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/forin-select-nav,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/forin-select-nav,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/forin-select-nav
js-loops_forof-list,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/forof-list,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/forof-list,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/forof-list
js-loops_pixels,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/pixels,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/pixels,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/pixels
js-loops_stars,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/stars,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/stars,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/stars
js-loops_while-random-number,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-loops/while-random-number,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-loops/while-random-number,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-loops/while-random-number
js-math-and-numbers_calculator,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/calculator,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/calculator,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/calculator
js-math-and-numbers_collatz-calculator,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/collatz-calculator,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/collatz-calculator,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/collatz-calculator
js-math-and-numbers_counter,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/counter,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/counter,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/counter
js-math-and-numbers_hyper-lazer-nyan-13,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/hyper-lazer-nyan-13,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/hyper-lazer-nyan-13,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-math-and-numbers/hyper-lazer-nyan-13
js-modern-syntax_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-end
js-modern-syntax_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-modern-syntax/demo-start
js-modern-syntax_destructuring-arrays,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-arrays,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-arrays,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-arrays
js-modern-syntax_destructuring-objects,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-objects,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-objects,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-modern-syntax/destructuring-objects
js-modern-syntax_rest-and-spread,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/rest-and-spread,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-modern-syntax/rest-and-spread,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-modern-syntax/rest-and-spread
js-objects-and-arrays_arrays,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/arrays,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/arrays,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/arrays
js-objects-and-arrays_objects,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects
js-objects-and-arrays_objects-and-arrays,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects-and-arrays,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects-and-arrays,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-objects-and-arrays/objects-and-arrays
js-structure_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-structure/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-structure/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-structure/demo-end
js-structure_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-structure/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-structure/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-structure/demo-start
js-structure_quiz-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-structure/quiz-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-structure/quiz-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-structure/quiz-app
js-structure_shapes,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-structure/shapes,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-structure/shapes,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-structure/shapes
js-structure_spacerocket,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-structure/spacerocket,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-structure/spacerocket,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-structure/spacerocket
js-unit-testing_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-end
js-unit-testing_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-unit-testing/demo-start
js-unit-testing_get-animal,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/get-animal,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/get-animal,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-unit-testing/get-animal
js-unit-testing_math-functions,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/math-functions,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/math-functions,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-unit-testing/math-functions
js-unit-testing_people,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/people,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-unit-testing/people,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-unit-testing/people
js-variables-and-numbers_simple-calculator,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/simple-calculator,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/simple-calculator,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/simple-calculator
js-variables-and-numbers_social-media-post,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/social-media-post,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/social-media-post,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/js-variables-and-numbers/social-media-post
nextjs-basics-and-routing_lotr-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/nextjs-basics-and-routing/lotr-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/nextjs-basics-and-routing/lotr-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/nextjs-basics-and-routing/lotr-app
nextjs-dynamic-routes_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-end
nextjs-dynamic-routes_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/demo-start
nextjs-dynamic-routes_lotr-app-dynamic-routes,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/lotr-app-dynamic-routes,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/lotr-app-dynamic-routes,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/nextjs-dynamic-routes/lotr-app-dynamic-routes
react-basics_attributes,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-basics/attributes,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-basics/attributes,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-basics/attributes
react-basics_demo-inner-html-vs-render,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-basics/demo-inner-html-vs-render,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-basics/demo-inner-html-vs-render,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-basics/demo-inner-html-vs-render
react-basics_demo-render,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-basics/demo-render,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-basics/demo-render,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-basics/demo-render
react-basics_hello-world,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-basics/hello-world,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-basics/hello-world,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-basics/hello-world
react-basics_hello-world-article,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-basics/hello-world-article,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-basics/hello-world-article,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-basics/hello-world-article
react-component-testing_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-end
react-component-testing_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-component-testing/demo-start
react-component-testing_lotr-app-testing,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/lotr-app-testing,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/lotr-app-testing,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-component-testing/lotr-app-testing
react-component-testing_scorekeeper,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/scorekeeper,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-component-testing/scorekeeper,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-component-testing/scorekeeper
react-custom-hooks_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-end
react-custom-hooks_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-custom-hooks/demo-start
react-data-fetching_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-end
react-data-fetching_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-data-fetching/demo-start
react-data-fetching_iss-tracker,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/iss-tracker,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/iss-tracker,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-data-fetching/iss-tracker
react-data-fetching_star-wars,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/star-wars,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-data-fetching/star-wars,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-data-fetching/star-wars
react-effects-and-fetch_api-status,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/api-status,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/api-status,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/api-status
react-effects-and-fetch_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-end
react-effects-and-fetch_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/demo-start
react-effects-and-fetch_iss-tracker,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/iss-tracker,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/iss-tracker,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/iss-tracker
react-effects-and-fetch_pokemon-api,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api
react-effects-and-fetch_pokemon-api-with-paging,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api-with-paging,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api-with-paging,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-effects-and-fetch/pokemon-api-with-paging
react-global-state_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-global-state/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-global-state/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-global-state/demo-end
react-global-state_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-global-state/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-global-state/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-global-state/demo-start
react-global-state_lights,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-global-state/lights,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-global-state/lights,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-global-state/lights
react-global-state_lights-solution,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-global-state/lights-solution,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-global-state/lights-solution,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-global-state/lights-solution
react-immutable-state_car-race,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/car-race,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/car-race,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-immutable-state/car-race
react-immutable-state_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-end
react-immutable-state_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-immutable-state/demo-start
react-immutable-state_form,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/form,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-immutable-state/form,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-immutable-state/form
react-nesting_buttons-and-children,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/buttons-and-children,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/buttons-and-children,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/buttons-and-children
react-nesting_demo-composition,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-composition,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-composition,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/demo-composition
react-nesting_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/demo-end
react-nesting_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/demo-start
react-nesting_fragments,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/fragments,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/fragments,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/fragments
react-nesting_navigation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-nesting/navigation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-nesting/navigation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-nesting/navigation
react-project-setup_demo-project-structure,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-project-setup/demo-project-structure,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-project-setup/demo-project-structure,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-project-setup/demo-project-structure
react-project-setup_journal-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-project-setup/journal-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-project-setup/journal-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-project-setup/journal-app
react-props_box-with-props,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/box-with-props,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/box-with-props,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/box-with-props
react-props_button,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/button,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/button,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/button
react-props_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/demo-end
react-props_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/demo-start
react-props_greeting,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/greeting,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/greeting,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/greeting
react-props_smiley,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/smiley,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/smiley,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/smiley
react-props_sum,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-props/sum,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-props/sum,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-props/sum
react-state_box,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/box,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/box,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/box
react-state_counter,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/counter,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/counter,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/counter
react-state_demo-counter-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-end
react-state_demo-counter-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/demo-counter-start
react-state_demo-food-order-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-end
react-state_demo-food-order-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/demo-food-order-start
react-state_emoji-checker,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/emoji-checker,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/emoji-checker,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/emoji-checker
react-state_journal-app-favorite-button,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state/journal-app-favorite-button,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state/journal-app-favorite-button,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state/journal-app-favorite-button
react-state-2_colored-number,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/colored-number,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/colored-number,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/colored-number
react-state-2_conditional-usestate,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/conditional-usestate,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/conditional-usestate,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/conditional-usestate
react-state-2_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/demo-end
react-state-2_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/demo-start
react-state-2_favourite-holiday,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/favourite-holiday,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/favourite-holiday,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/favourite-holiday
react-state-2_personal-details,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/personal-details,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/personal-details,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/personal-details
react-state-2_table-reservation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/table-reservation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/table-reservation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/table-reservation
react-state-2_triple-count,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-2/triple-count,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-2/triple-count,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-2/triple-count
react-state-3_adding-animals,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/adding-animals,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/adding-animals,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/adding-animals
react-state-3_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/demo-end
react-state-3_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/demo-start
react-state-3_journal-app-favorite-button-shared-state,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-favorite-button-shared-state,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-favorite-button-shared-state,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-favorite-button-shared-state
react-state-3_journal-app-filter,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-filter,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-filter,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-filter
react-state-3_journal-app-form,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-form,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-form,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/journal-app-form
react-state-3_tags,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-state-3/tags,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-state-3/tags,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-state-3/tags
react-styled-components_box,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/box,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/box,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-styled-components/box
react-styled-components_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-end
react-styled-components_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-styled-components/demo-start
react-styled-components_lotr-app-styling,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/lotr-app-styling,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-styled-components/lotr-app-styling,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-styled-components/lotr-app-styling
react-with-arrays_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-end
react-with-arrays_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-arrays/demo-start
react-with-arrays_fruits,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/fruits,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/fruits,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-arrays/fruits
react-with-arrays_journal-app-entries-array,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/journal-app-entries-array,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/journal-app-entries-array,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-arrays/journal-app-entries-array
react-with-arrays_users,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/users,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-arrays/users,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-arrays/users
react-with-local-storage_demo-end,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-end,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-end,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-end
react-with-local-storage_demo-start,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-start,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-start,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-local-storage/demo-start
react-with-local-storage_dice,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/dice,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/dice,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-local-storage/dice
react-with-local-storage_journal-app-with-local-storage,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/journal-app-with-local-storage,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/journal-app-with-local-storage,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-local-storage/journal-app-with-local-storage
react-with-local-storage_stored-note,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/stored-note,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/react-with-local-storage/stored-note,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/react-with-local-storage/stored-note
recap-project-1_quiz-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-1/quiz-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-1/quiz-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-1/quiz-app
recap-project-2_character-count-example,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-2/character-count-example,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-2/character-count-example,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-2/character-count-example
recap-project-2_quiz-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-2/quiz-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-2/quiz-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-2/quiz-app
recap-project-3_example-implementation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-3/example-implementation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-3/example-implementation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-3/example-implementation
recap-project-3_rick-and-morty-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-3/rick-and-morty-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-3/rick-and-morty-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-3/rick-and-morty-app
recap-project-4_example-implementation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-4/example-implementation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-4/example-implementation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-4/example-implementation
recap-project-4_weather-and-activities-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-4/weather-and-activities-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-4/weather-and-activities-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-4/weather-and-activities-app
recap-project-5_art-gallery-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app
recap-project-5_art-gallery-app-solution,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app-solution,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app-solution,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-5/art-gallery-app-solution
recap-project-6_example-implementation,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-6/example-implementation,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-6/example-implementation,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-6/example-implementation
recap-project-6_tourio-app,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/recap-project-6/tourio-app,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/recap-project-6/tourio-app,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/recap-project-6/tourio-app
shell-basics_treasure-hunt,https://codesandbox.io/p/sandbox/github/neuefische/web-exercises/tree/main/sessions/shell-basics/treasure-hunt,https://codesandbox.io/s/github/neuefische/web-exercises/tree/main/sessions/shell-basics/treasure-hunt,npx -y ghcd@latest /neuefische/web-exercises/tree/main/sessions/shell-basics/treasure-hunt