├── .browserslistrc ├── .eslintignore ├── .eslintrc.json ├── .gitignore ├── .ncurc.json ├── .prettierignore ├── .prettierrc.json ├── LICENSE ├── README.md ├── archive ├── booleans │ ├── .eslintrc.json │ ├── .gitignore │ ├── README.md │ ├── css │ │ └── styles.css │ ├── index.html │ ├── js │ │ └── index.js │ └── package.json ├── js-functions-1 │ ├── basic-functions │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── basic-functions_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── dom-manipulation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── dom-manipulation_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters-extra │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters-extra_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pizza-analyzer │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pizza-analyzer_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── vending-machine │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── react-custom-hooks │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ └── index.html │ │ └── src │ │ │ ├── App.js │ │ │ ├── components │ │ │ └── Joke.js │ │ │ ├── index.js │ │ │ ├── styles.css │ │ │ └── utils │ │ │ └── fetch.js │ └── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ └── index.html │ │ └── src │ │ ├── App.js │ │ ├── components │ │ └── Joke.js │ │ ├── index.js │ │ └── styles.css ├── react-immutable-state │ ├── car-race │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── CarRace │ │ │ │ ├── CarRace.styled.js │ │ │ │ └── index.js │ │ │ ├── Layout │ │ │ │ └── index.js │ │ │ └── Winner │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ ├── styles.js │ │ └── utils │ │ │ └── utils.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Episode │ │ │ │ ├── eye-off.svg │ │ │ │ ├── eye.svg │ │ │ │ └── index.js │ │ │ ├── Season │ │ │ │ └── index.js │ │ │ └── Show │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Episode │ │ │ │ ├── eye-off.svg │ │ │ │ ├── eye.svg │ │ │ │ └── index.js │ │ │ ├── Season │ │ │ │ └── index.js │ │ │ └── Show │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── form │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Form │ │ │ ├── Form.styled.js │ │ │ └── index.js │ │ └── Layout │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── react-project-setup │ ├── demo-project-structure │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── logo192.png │ │ │ ├── logo512.png │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ └── src │ │ │ ├── App.css │ │ │ ├── App.js │ │ │ ├── App.test.js │ │ │ ├── components │ │ │ ├── Button │ │ │ │ ├── Button.css │ │ │ │ ├── Button.test.js │ │ │ │ └── index.js │ │ │ ├── Footer │ │ │ │ ├── Footer.css │ │ │ │ ├── Footer.test.js │ │ │ │ └── index.js │ │ │ ├── Header │ │ │ │ ├── Header.css │ │ │ │ ├── Header.test.js │ │ │ │ ├── index.js │ │ │ │ └── logo.svg │ │ │ └── Link │ │ │ │ ├── Link.css │ │ │ │ ├── Link.test.js │ │ │ │ └── index.js │ │ │ ├── index.css │ │ │ ├── index.js │ │ │ ├── reportWebVitals.js │ │ │ └── setupTests.js │ └── journal-app │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── resources.zip │ │ └── resources │ │ ├── colors.css │ │ ├── journal_app_design.fig │ │ ├── journal_app_design.png │ │ ├── journal_app_design@2x.png │ │ ├── star-filled.svg │ │ └── star.svg ├── react-styled-components-1 │ ├── card-conversion-cra │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── logo192.png │ │ │ ├── logo512.png │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ └── src │ │ │ ├── App.js │ │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── index.js │ │ │ ├── index.js │ │ │ └── styles.js │ ├── card-conversion │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── card-conversion_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── styled-button-cra │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── logo192.png │ │ │ ├── logo512.png │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ └── src │ │ │ ├── App.js │ │ │ ├── components │ │ │ └── StyledButton.js │ │ │ ├── index.js │ │ │ └── styles.js │ ├── styled-navbar │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── about │ │ │ │ └── index.js │ │ │ ├── contact │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── styled-navbar_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── about │ │ │ └── index.js │ │ ├── contact │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── react-styled-components-2 │ ├── box │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── BoxWithClassName │ │ │ │ ├── BoxWithClassName.css │ │ │ │ └── BoxWithClassName.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ └── styles.js │ ├── box_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── BoxWIhtStyledComponents.js │ │ │ └── BoxWithClassName │ │ │ │ ├── BoxWithClassName.css │ │ │ │ └── BoxWithClassName.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ └── styles.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Button │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── lotr-app-styling │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── volumes │ │ │ │ ├── [slug].js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── images │ │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ │ ├── the-return-of-the-king.png │ │ │ │ └── the-two-towers.png │ │ └── styles.js │ └── lotr-app-styling_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ └── data.js │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── index.js │ │ └── volumes │ │ │ ├── [slug].js │ │ │ └── index.js │ │ ├── public │ │ └── images │ │ │ ├── arrow-left.svg │ │ │ ├── arrow-right.svg │ │ │ ├── chevron-left.svg │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ ├── the-return-of-the-king.png │ │ │ └── the-two-towers.png │ │ └── styles.js ├── recap-project-crud │ ├── crud-recap-tourio │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── db.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── example-implementation │ │ ├── components │ │ ├── Button.js │ │ ├── Card.js │ │ ├── Form.js │ │ ├── ImageContainer.js │ │ └── StyledLink.js │ │ ├── jsconfig.json │ │ ├── lib │ │ └── db.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── create.js │ │ ├── index.js │ │ └── places │ │ │ └── [id] │ │ │ ├── edit.js │ │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── recap-project-spotify │ ├── README.md │ ├── assets │ │ ├── db.js │ │ ├── part-1-1.png │ │ ├── part-2-1.png │ │ ├── part-3-1.png │ │ ├── part-4-1.png │ │ ├── part-5-1.png │ │ ├── part-7-1.png │ │ ├── part-8-1.png │ │ └── part-9-1.png │ ├── part-1 │ │ ├── hints.md │ │ └── readme.md │ ├── part-10 │ │ ├── hints.md │ │ └── readme.md │ ├── part-2 │ │ ├── hints.md │ │ └── readme.md │ ├── part-3 │ │ ├── hints.md │ │ └── readme.md │ ├── part-4 │ │ ├── hints.md │ │ └── readme.md │ ├── part-5 │ │ ├── hints.md │ │ └── readme.md │ ├── part-6 │ │ ├── hints.md │ │ └── readme.md │ ├── part-7 │ │ ├── hints.md │ │ └── readme.md │ ├── part-8 │ │ ├── hints.md │ │ └── readme.md │ └── part-9 │ │ ├── hints.md │ │ └── readme.md └── recap-project-weather-app │ ├── example-implementation │ ├── .gitignore │ ├── README.md │ ├── package-lock.json │ ├── package.json │ ├── public │ │ ├── favicon.ico │ │ ├── index.html │ │ ├── manifest.json │ │ └── robots.txt │ └── src │ │ ├── App.css │ │ ├── App.js │ │ ├── components │ │ ├── Form │ │ │ ├── Form.css │ │ │ └── index.js │ │ └── List │ │ │ ├── List.css │ │ │ └── index.js │ │ ├── index.css │ │ ├── index.js │ │ ├── reportWebVitals.js │ │ └── setupTests.js │ └── weather-and-activities-app │ ├── .gitignore │ ├── README.md │ ├── img │ ├── delete-button.png │ ├── fetch-api.png │ ├── filtered_list.png │ ├── form.png │ ├── list.png │ └── recap_project_4_sketch.png │ └── package.json ├── bun.lockb ├── package.json ├── scripts ├── cook.js ├── create.js ├── generate-solution-files │ ├── bun.lockb │ ├── index.js │ ├── package.json │ └── rename-projects.js ├── get-all-challenges.js ├── get-all-links.js ├── get.js ├── get │ ├── challenge-local-template.md │ ├── challenge-template.md │ ├── pr-local-template.md │ └── pr-template.md ├── migrate-vite.js ├── migrate.js └── vite-assets │ ├── .eslintrc.json │ ├── package.json │ └── vite.config.js ├── sessions ├── .gitkeep ├── accessibility │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ └── package.json │ └── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ └── package.json ├── agile-workflow-and-user-stories │ ├── movie-app │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── scribble-movie-details-page.png │ │ │ ├── scribble-movie-list.png │ │ │ ├── scribble-watchlist.png │ │ │ └── user-story-workshop-start.excalidraw │ │ ├── package.json │ │ ├── user-story-1.md │ │ ├── user-story-2.md │ │ └── user-story-3.md │ └── movie-app_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ ├── scribble-movie-details-page.png │ │ ├── scribble-movie-list.png │ │ ├── scribble-watchlist.png │ │ └── user-story-workshop-start.excalidraw │ │ ├── package.json │ │ ├── user-story-1.md │ │ ├── user-story-2.md │ │ └── user-story-3.md ├── backend-api-routes │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── products │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ ├── services │ │ │ └── productServices.js │ │ └── styles.js │ ├── random-character │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── random-character_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── bun.lockb │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── api │ │ │ └── random-character.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── backend-basics │ ├── chance │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ ├── chance_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.js │ │ ├── package-lock.json │ │ ├── package.json │ │ └── server.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ ├── greeting │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ ├── greeting_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ ├── routes │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js │ └── routes_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── server.js ├── backend-create │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── JokeForm │ │ │ │ └── index.js │ │ │ └── JokeList │ │ │ │ └── index.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Joke.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Joke.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── products │ │ ├── .env.local.example │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Button.js │ │ ├── Comments.js │ │ ├── Link.js │ │ ├── ProductForm.js │ │ └── ProductList.js │ │ ├── db │ │ ├── connect.js │ │ └── models │ │ │ ├── Product.js │ │ │ └── Review.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── [id].js │ │ ├── _app.js │ │ ├── _document.js │ │ ├── api │ │ │ └── products │ │ │ │ ├── [id].js │ │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ ├── resources │ │ ├── products.json │ │ └── reviews.json │ │ └── styles.js ├── backend-mongodb │ ├── database-design │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ └── database-design-example.png │ │ └── package.json │ └── queries │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── resources.zip │ │ └── resources │ │ └── data.json ├── backend-read │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Joke.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── products │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Button.js │ │ ├── Comments.js │ │ ├── Link.js │ │ └── ProductList.js │ │ ├── db │ │ └── connect.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ └── products.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── [id].js │ │ ├── _app.js │ │ ├── _document.js │ │ ├── api │ │ │ └── products │ │ │ │ ├── [id].js │ │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ ├── resources │ │ ├── bonus-products.json │ │ ├── bonus-reviews.json │ │ └── products.json │ │ └── styles.js ├── backend-update-and-delete │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── JokeForm │ │ │ │ └── index.js │ │ │ └── JokeList │ │ │ │ └── index.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Joke.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── JokeForm │ │ │ │ └── index.js │ │ │ └── JokeList │ │ │ │ └── index.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Joke.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── jokes │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── products │ │ ├── .env.local.example │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Button.js │ │ │ ├── Comments.js │ │ │ ├── Link.js │ │ │ ├── ProductForm.js │ │ │ └── ProductList.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ ├── Product.js │ │ │ │ └── Review.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── [id].js │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── products │ │ │ │ │ ├── [id].js │ │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ ├── resources │ │ │ ├── products.json │ │ │ └── reviews.json │ │ └── styles.js │ └── products_solution │ │ ├── .env.local.example │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ ├── Button.js │ │ ├── Comments.js │ │ ├── Link.js │ │ ├── ProductForm.js │ │ └── ProductList.js │ │ ├── db │ │ ├── connect.js │ │ └── models │ │ │ ├── Product.js │ │ │ └── Review.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── [id].js │ │ ├── _app.js │ │ ├── _document.js │ │ ├── api │ │ │ └── products │ │ │ │ ├── [id].js │ │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ ├── resources │ │ ├── products.json │ │ └── reviews.json │ │ └── styles.js ├── css-basics │ ├── button-styles │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── button-styles_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── combined-users │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ ├── debug.css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── combined-users_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ ├── debug.css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── fonts │ │ │ ├── alice-v20-latin-regular.eot │ │ │ ├── alice-v20-latin-regular.svg │ │ │ ├── alice-v20-latin-regular.ttf │ │ │ ├── alice-v20-latin-regular.woff │ │ │ ├── alice-v20-latin-regular.woff2 │ │ │ ├── roboto-v30-latin-regular.eot │ │ │ ├── roboto-v30-latin-regular.svg │ │ │ ├── roboto-v30-latin-regular.ttf │ │ │ ├── roboto-v30-latin-regular.woff │ │ │ └── roboto-v30-latin-regular.woff2 │ │ ├── index.html │ │ └── package.json │ ├── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── pink-box │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── pink-box_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── pokemon-page │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── pokemon-page_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── pseudo-park │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ └── pseudo-park_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ └── package.json ├── css-flexbox │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── navigation │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── navigation_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── profile │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ └── profile_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ └── package.json ├── css-positioning │ ├── absolute-position │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── absolute-position_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── layout-with-position │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ └── layout-with-position_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ └── package.json ├── css-responsive │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-example-responsive │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-example-static │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── playground │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── img │ │ │ ├── cat_large.jpg │ │ │ ├── cat_medium.jpg │ │ │ └── cat_small.jpg │ │ ├── index.html │ │ └── package.json │ ├── playground_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── img │ │ │ ├── cat_large.jpg │ │ │ ├── cat_medium.jpg │ │ │ └── cat_small.jpg │ │ ├── index.html │ │ └── package.json │ ├── responsive-website │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── desktop.png │ │ │ ├── mobile_1.png │ │ │ ├── mobile_2.png │ │ │ └── tablet.png │ │ ├── css │ │ │ ├── fonts.css │ │ │ └── styles.css │ │ ├── fonts │ │ │ └── pacifico-regular-webfont.woff2 │ │ ├── img │ │ │ ├── desert.jpg │ │ │ ├── forest.jpg │ │ │ ├── mountain.jpg │ │ │ ├── ocean.jpg │ │ │ └── river.jpg │ │ ├── index.html │ │ └── package.json │ └── responsive-website_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── assets │ │ ├── desktop.png │ │ ├── mobile_1.png │ │ ├── mobile_2.png │ │ └── tablet.png │ │ ├── css │ │ ├── fonts.css │ │ └── styles.css │ │ ├── fonts │ │ └── pacifico-regular-webfont.woff2 │ │ ├── img │ │ ├── desert.jpg │ │ ├── forest.jpg │ │ ├── mountain.jpg │ │ ├── ocean.jpg │ │ └── river.jpg │ │ ├── index.html │ │ └── package.json ├── css-structure │ ├── custom-properties │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── custom-properties_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-end │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── card.css │ │ ├── css │ │ │ ├── global.css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── demo-start │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── selectors-and-cascading-bugs_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── taco-truck │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── assets │ │ │ ├── components-image.png │ │ │ └── wireframe-image.png │ │ ├── index.html │ │ ├── package.json │ │ ├── styles.css │ │ └── theme.css │ └── taco-truck_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── assets │ │ ├── components-image.png │ │ └── wireframe-image.png │ │ ├── components │ │ ├── card.css │ │ ├── header.css │ │ └── main.css │ │ ├── index.html │ │ ├── package.json │ │ ├── styles.css │ │ └── theme.css ├── how-to-code-review │ ├── .eslintrc.json │ ├── .gitignore │ ├── .prettierrc.json │ ├── README.md │ ├── components │ │ ├── Button │ │ │ └── index.js │ │ └── myComponent1 │ │ │ └── myComponent.js │ ├── jsconfig.json │ ├── next.config.js │ ├── package-lock.json │ ├── package.json │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ └── index.js │ ├── public │ │ └── favicon.ico │ └── styles.js ├── html-and-the-web │ ├── div-salad │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ └── package.json │ ├── div-salad_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ └── package.json │ ├── find-the-errors │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── prettier-red.png │ │ │ └── prettier-treminal.png │ │ └── package.json │ ├── format-salad │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ └── indented-code.png │ │ └── package.json │ ├── github-codespaces │ │ ├── README.md │ │ └── assets │ │ │ └── codespaces │ │ │ ├── codespaces_01.png │ │ │ ├── codespaces_02.png │ │ │ ├── codespaces_03.png │ │ │ ├── codespaces_04.png │ │ │ ├── codespaces_05.png │ │ │ ├── codespaces_06.png │ │ │ ├── codespaces_07.png │ │ │ ├── codespaces_08.png │ │ │ ├── codespaces_09.png │ │ │ ├── codespaces_10.png │ │ │ └── codespaces_11.png │ └── personal-website │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ ├── live-preview-1.png │ │ ├── live-preview-2.png │ │ ├── wireframe-desktop.png │ │ └── wireframe-mobile.png │ │ ├── index.html │ │ └── package.json ├── html-forms │ ├── finding-a11y-errors │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── finding-a11y-errors_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ └── package.json │ ├── form-validation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── form-validation_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── personal-profile-form │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── images │ │ │ └── final_result.png │ │ ├── index.html │ │ └── package.json │ ├── personal-profile-form_solution │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── images │ │ │ └── final_result.png │ │ ├── index.html │ │ └── package.json │ └── zoo │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ └── package.json ├── js-array-methods │ ├── animal-objects │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── animal-objects_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── animal-strings │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── animal-strings_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── employees │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ │ └── db.js │ ├── employees_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ │ └── db.js │ ├── filter │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── filter_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── for-each │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── for-each_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── fun-with-flags │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Country │ │ │ │ ├── Country.css │ │ │ │ └── Country.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ ├── styles │ │ │ └── global.css │ │ └── utils │ │ │ └── countries.js │ ├── fun-with-flags_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ └── Country │ │ │ │ ├── Country.css │ │ │ │ └── Country.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ ├── styles │ │ │ └── global.css │ │ └── utils │ │ │ └── countries.js │ ├── letter-puzzle │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ │ ├── data.js │ │ │ └── service.js │ ├── letter-puzzle_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ │ ├── data.js │ │ │ └── service.js │ ├── map │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── map_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── news-flash │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── Card.js │ │ ├── css │ │ │ └── globals.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ └── utils │ │ │ ├── news.js │ │ │ └── results.js │ ├── news-flash_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── Card.js │ │ ├── css │ │ │ └── globals.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ └── utils │ │ │ ├── news.js │ │ │ └── results.js │ ├── repetition │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── repetition_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── spa-1 │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── spa-2 │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── spa-3 │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── zoo-animals │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ │ └── db.js │ └── zoo-animals_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ ├── package.json │ │ └── utils │ │ └── db.js ├── js-basics-and-variables │ ├── calculate-circle-area-and-circumference │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── calculate-circle-area-and-circumference__solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── console-methods │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── console-methods_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── lifetime-calculator │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── lifetime-calculator_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── social-media-post │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── social-media-post_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── tip-calculator │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── tip-calculator_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── track-your-savings-goals │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ └── track-your-savings-goals_solution │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ └── package.json ├── js-conditions-and-booleans │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── log-type │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── log-type_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── statements │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── statements_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── teenager-check │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── teenager-check_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── teenager │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── truthy-and-falsy │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── weather-check │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── weather-check_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-createelement │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── product-teaser │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── product-teaser_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── social-media-post │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── social-media-post_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── toast-messages │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── toast-messages_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-dom-and-events │ ├── dark-mode │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── dark-mode_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── simple-calculator │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── simple-calculator_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── survey-error-fixing │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── survey-error-fixing_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-error-handling │ ├── calculator │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── calculator_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── fetch │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── fetch_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-fetch │ ├── blocking-demo │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── color-clue │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Form │ │ │ │ └── Form.css │ │ ├── css │ │ │ ├── globals.css │ │ │ └── utils.css │ │ ├── index.html │ │ ├── js │ │ │ ├── fetch.js │ │ │ ├── game.js │ │ │ ├── index.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── styles.css │ ├── color-clue_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Form │ │ │ │ └── Form.css │ │ ├── css │ │ │ ├── globals.css │ │ │ └── utils.css │ │ ├── index.html │ │ ├── js │ │ │ ├── fetch.js │ │ │ ├── game.js │ │ │ ├── index.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── styles.css │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Joke │ │ │ │ ├── Joke.css │ │ │ │ └── Joke.js │ │ │ └── JokeSection │ │ │ │ ├── JokeSection.css │ │ │ │ └── JokeSection.js │ │ ├── css │ │ │ └── globals.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── styles.css │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Joke │ │ │ │ ├── Joke.css │ │ │ │ └── Joke.js │ │ │ └── JokeSection │ │ │ │ ├── JokeSection.css │ │ │ │ └── JokeSection.js │ │ ├── css │ │ │ └── globals.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ ├── package.json │ │ └── styles.css │ ├── star-wars-console │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── utils.js │ │ └── package.json │ ├── star-wars-console_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── utils.js │ │ └── package.json │ ├── star-wars │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── Card.js │ │ ├── css │ │ │ └── globals.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── styles.css │ └── star-wars_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ └── Card │ │ │ ├── Card.css │ │ │ └── Card.js │ │ ├── css │ │ └── globals.css │ │ ├── index.html │ │ ├── js │ │ ├── index.js │ │ └── utils.js │ │ ├── package.json │ │ └── styles.css ├── js-forms │ ├── calculator │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── calculator_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── checkbox-input │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── checkbox-input_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── handle-form-submit │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── handle-form-submit_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-functions │ ├── arrow-functions │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── arrow-functions_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── basic-calculations │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── basic-calculations_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── basic-functions │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── basic-functions_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── dom-manipulation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── dom-manipulation_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters-extra │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters-extra_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── functions-with-parameters_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── greeting-page │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── greeting-page_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pizza-analyzer │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pizza-analyzer_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── progress-bar │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── progress-bar_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── vending-machine │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── vending-machine_advanced │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-inputs-and-strings │ ├── change-box-appearance │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── change-box-appearance_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── input-to-upper-and-lowercase │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── input-to-upper-and-lowercase_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── input-to-uppercase │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── input-to-uppercase_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── multiple-inputs │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── multiple-inputs_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── switch-values │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ └── switch-values_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ └── index.js │ │ └── package.json ├── js-loops │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── for-console │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── for-console_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── forin-select-nav │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── forin-select-nav_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── forof-list │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── forof-list_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pixels │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── pixels_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── stars │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── star-empty.svg │ │ │ └── star-filled.svg │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── stars_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── star-empty.svg │ │ │ └── star-filled.svg │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── while-random-number │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ └── while-random-number_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json ├── js-modern-syntax │ ├── back-to-basics │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── back-to-basics_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── destructuring-arrays │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── destructuring-arrays_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── destructuring-objects │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── destructuring-objects_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── rest-and-spread │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ └── rest-and-spread_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ ├── index.js │ │ └── index.test.js │ │ └── package.json ├── js-objects-and-arrays │ ├── arrays │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── arrays_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── objects-and-arrays │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── objects-and-arrays_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ ├── objects │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── index.js │ │ │ └── index.test.js │ │ └── package.json │ └── objects_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ ├── index.js │ │ └── index.test.js │ │ └── package.json ├── js-structure │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Card │ │ │ │ ├── Card.css │ │ │ │ └── Card.js │ │ │ └── Header │ │ │ │ ├── Header.css │ │ │ │ └── Header.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ ├── styles │ │ │ └── globals.css │ │ └── utils │ │ │ ├── authors.js │ │ │ └── cipher.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Card │ │ │ │ └── Card.css │ │ │ └── Header │ │ │ │ └── Header.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ └── styles │ │ │ └── globals.css │ ├── quiz-app │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── App │ │ │ │ └── App.css │ │ │ ├── Bookmark │ │ │ │ └── Bookmark.css │ │ │ ├── Card │ │ │ │ └── Card.css │ │ │ ├── CardList │ │ │ │ └── CardList.css │ │ │ ├── Form │ │ │ │ └── Form.css │ │ │ └── Header │ │ │ │ └── Header.css │ │ ├── global.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ └── styles.css │ ├── quiz-app_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ ├── App │ │ │ │ ├── App.css │ │ │ │ └── App.js │ │ │ ├── Bookmark │ │ │ │ ├── Bookmark.css │ │ │ │ └── Bookmark.js │ │ │ ├── Card │ │ │ │ ├── Card.css │ │ │ │ └── Card.js │ │ │ ├── CardList │ │ │ │ ├── CardList.css │ │ │ │ └── CardList.js │ │ │ ├── Form │ │ │ │ ├── Form.css │ │ │ │ └── Form.js │ │ │ └── Header │ │ │ │ ├── Header.css │ │ │ │ └── Header.js │ │ ├── global.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles.css │ │ └── utils │ │ │ └── cards.js │ ├── shapes │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Circle │ │ │ │ └── Circle.css │ │ │ ├── Pentagon │ │ │ │ └── Pentagon.css │ │ │ └── Square │ │ │ │ └── Square.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles │ │ │ └── styles.css │ │ └── utils │ │ │ └── randomColor.js │ ├── shapes_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ ├── Circle │ │ │ │ ├── Circle.css │ │ │ │ └── Circle.js │ │ │ ├── Pentagon │ │ │ │ ├── Pentagon.css │ │ │ │ └── Pentagon.js │ │ │ └── Square │ │ │ │ ├── Square.css │ │ │ │ └── Square.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── styles │ │ │ └── styles.css │ │ └── utils │ │ │ └── randomColor.js │ ├── spacerocket │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ ├── FISHSAT.svg │ │ │ ├── NFSAT.svg │ │ │ ├── burn.svg │ │ │ └── rocket.svg │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ ├── controls.js │ │ │ ├── core │ │ │ │ ├── countdown.js │ │ │ │ ├── deploy.js │ │ │ │ ├── fuel.js │ │ │ │ ├── liftoff.js │ │ │ │ ├── load.js │ │ │ │ ├── protocol.js │ │ │ │ └── rocket.js │ │ │ ├── index.js │ │ │ ├── launchSequence.js │ │ │ ├── launchSequence.test.js │ │ │ ├── payload │ │ │ │ └── satellites.js │ │ │ └── visual │ │ │ │ └── render.js │ │ └── package.json │ └── spacerocket_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ ├── FISHSAT.svg │ │ ├── NFSAT.svg │ │ ├── burn.svg │ │ └── rocket.svg │ │ ├── css │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ ├── controls.js │ │ ├── core │ │ │ ├── countdown.js │ │ │ ├── deploy.js │ │ │ ├── fuel.js │ │ │ ├── liftoff.js │ │ │ ├── load.js │ │ │ ├── protocol.js │ │ │ └── rocket.js │ │ ├── index.js │ │ ├── launchSequence.js │ │ ├── launchSequence.test.js │ │ ├── payload │ │ │ └── satellites.js │ │ └── visual │ │ │ └── render.js │ │ └── package.json ├── js-unit-testing │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── greet.js │ │ ├── greet.test.js │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── greet.js │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── get-animal │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json │ ├── get-animal_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json │ ├── math-functions │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ └── package.json │ ├── math-functions_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json │ ├── people │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json │ └── people_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json ├── mock-interview-1 │ ├── simple-algorithms │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json │ └── simple-algorithms_solutions │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.js │ │ ├── index.test.js │ │ └── package.json ├── nextjs-basics-and-routing │ └── lotr-app │ │ ├── README.md │ │ ├── design-resources │ │ ├── All Volumes Page (Dark).png │ │ ├── All Volumes Page (Dark)@2x.png │ │ ├── All Volumes Page.png │ │ ├── All Volumes Page@2x.png │ │ ├── Detail Page_ The Fellowship of the Ring (Dark).png │ │ ├── Detail Page_ The Fellowship of the Ring (Dark)@2x.png │ │ ├── Detail Page_ The Fellowship of the Ring.png │ │ ├── Detail Page_ The Fellowship of the Ring@2x.png │ │ ├── Detail Page_ The Return of the King (Dark).png │ │ ├── Detail Page_ The Return of the King (Dark)@2x.png │ │ ├── Detail Page_ The Return of the King.png │ │ ├── Detail Page_ The Return of the King@2x.png │ │ ├── Detail Page_ The Two Towers (Dark).png │ │ ├── Detail Page_ The Two Towers (Dark)@2x.png │ │ ├── Detail Page_ The Two Towers.png │ │ ├── Detail Page_ The Two Towers@2x.png │ │ ├── arrow-left.svg │ │ ├── arrow-right.svg │ │ ├── chevron-left.svg │ │ ├── lotr_app_design.fig │ │ └── variables.css │ │ └── resources │ │ ├── lib │ │ └── data.js │ │ └── public │ │ └── images │ │ ├── the-fellowship-of-the-ring.png │ │ ├── the-return-of-the-king.png │ │ └── the-two-towers.png ├── nextjs-dynamic-routes │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── movies │ │ │ │ ├── [slug].js │ │ │ │ └── index.js │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── movies │ │ │ │ ├── aquaman.js │ │ │ │ └── index.js │ │ └── styles.js │ ├── lotr-app-dynamic-routes │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── volumes │ │ │ │ ├── index.js │ │ │ │ ├── the-fellowship-of-the-ring.js │ │ │ │ ├── the-return-of-the-king.js │ │ │ │ └── the-two-towers.js │ │ ├── public │ │ │ └── images │ │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ │ ├── the-return-of-the-king.png │ │ │ │ └── the-two-towers.png │ │ └── styles.js │ └── lotr-app-dynamic-routes_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── index.js │ │ └── volumes │ │ │ ├── [slug].js │ │ │ └── index.js │ │ ├── public │ │ └── images │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ ├── the-return-of-the-king.png │ │ │ └── the-two-towers.png │ │ └── styles.js ├── react-basics │ ├── attributes │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── attributes_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── styles.css │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── VanillaApp.js │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── demo-render │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── styles.css │ │ ├── src │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── styles.css │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── VanillaApp.js │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── hello-world-article │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── hello-world-article_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── hello-world │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── hello-world_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-component-testing │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Form │ │ │ │ ├── Form.test.js │ │ │ │ └── index.js │ │ │ ├── Movie │ │ │ │ ├── Movie.test.js │ │ │ │ └── index.js │ │ │ └── Movies │ │ │ │ ├── Movies.test.js │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Form │ │ │ │ └── index.js │ │ │ ├── Movie │ │ │ │ └── index.js │ │ │ └── Movies │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── lotr-app-testing │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── AllVolumesNavigation │ │ │ │ └── index.js │ │ │ ├── Books │ │ │ │ └── index.js │ │ │ ├── ColoredBox │ │ │ │ └── index.js │ │ │ ├── Introduction │ │ │ │ └── index.js │ │ │ ├── Main │ │ │ │ └── index.js │ │ │ ├── NavigationLink │ │ │ │ └── index.js │ │ │ ├── Section │ │ │ │ └── index.js │ │ │ ├── Volume │ │ │ │ └── index.js │ │ │ ├── VolumeList │ │ │ │ └── index.js │ │ │ └── VolumeNavigation │ │ │ │ └── index.js │ │ ├── icons │ │ │ ├── arrow-left.svg │ │ │ ├── arrow-right.svg │ │ │ └── chevron-left.svg │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ ├── books.js │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── volumes │ │ │ │ ├── [slug].js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── images │ │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ │ ├── the-return-of-the-king.png │ │ │ │ └── the-two-towers.png │ │ └── styles.js │ ├── scorekeeper │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Button │ │ │ │ └── index.js │ │ │ ├── GameForm │ │ │ │ ├── GameForm.test.js │ │ │ │ └── index.js │ │ │ ├── HistoryEntry │ │ │ │ ├── HistoryEntry.test.js │ │ │ │ └── index.js │ │ │ ├── Input │ │ │ │ ├── Input.test.js │ │ │ │ └── index.js │ │ │ ├── Layout │ │ │ │ └── index.js │ │ │ ├── Navigation │ │ │ │ ├── Navigation.test.js │ │ │ │ └── index.js │ │ │ └── Player │ │ │ │ ├── Player.test.js │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── game.js │ │ │ ├── history.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── scorekeeper_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Button │ │ │ └── index.js │ │ ├── GameForm │ │ │ ├── GameForm.test.js │ │ │ └── index.js │ │ ├── HistoryEntry │ │ │ ├── HistoryEntry.test.js │ │ │ └── index.js │ │ ├── Input │ │ │ ├── Input.test.js │ │ │ └── index.js │ │ ├── Layout │ │ │ └── index.js │ │ ├── Navigation │ │ │ ├── Navigation.test.js │ │ │ └── index.js │ │ └── Player │ │ │ ├── Player.test.js │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── game.js │ │ ├── history.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── react-data-fetching │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── iss-tracker │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Controls │ │ │ │ ├── Controls.styled.js │ │ │ │ └── index.js │ │ │ ├── ISSTracker │ │ │ │ └── index.js │ │ │ └── Map │ │ │ │ ├── Map.styled.js │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── iss-tracker_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ ├── Controls │ │ │ │ ├── Controls.styled.js │ │ │ │ └── index.js │ │ │ ├── ISSTracker │ │ │ │ └── index.js │ │ │ └── Map │ │ │ │ ├── Map.styled.js │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── star-wars │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Card │ │ │ │ ├── Card.styled.js │ │ │ │ └── index.js │ │ │ └── Layout │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── characters │ │ │ │ └── 1.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── star-wars_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ ├── Card │ │ │ ├── Card.styled.js │ │ │ └── index.js │ │ └── Layout │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── characters │ │ │ └── [id].js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── react-effects-and-fetch │ ├── api-status │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── StatusCheck │ │ │ │ │ ├── StatusCheck.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── api-status_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── StatusCheck │ │ │ │ │ ├── StatusCheck.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Joke.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Joke.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── iss-tracker │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Controls │ │ │ │ │ ├── Controls.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Map │ │ │ │ │ ├── Map.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── iss-tracker_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Controls │ │ │ │ │ ├── Controls.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Map │ │ │ │ │ ├── Map.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── pokemon-api-with-paging │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── PokemonList.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── pokemon-api-with-paging_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── PokemonList.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── pokemon-api │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── PokemonList.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── pokemon-api_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ └── PokemonList.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-global-state │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Counter.js │ │ │ ├── CounterList.js │ │ │ ├── CounterStats.js │ │ │ ├── Footer.js │ │ │ ├── Header.js │ │ │ ├── InfoBox.js │ │ │ ├── Layout.js │ │ │ ├── Link.js │ │ │ └── Navigation.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── counters.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Counter.js │ │ │ ├── CounterList.js │ │ │ ├── CounterStats.js │ │ │ ├── Footer.js │ │ │ ├── Header.js │ │ │ ├── InfoBox.js │ │ │ ├── Layout.js │ │ │ ├── Link.js │ │ │ └── Navigation.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── counters.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── lights │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Button │ │ │ │ └── index.js │ │ │ ├── Layout │ │ │ │ └── index.js │ │ │ ├── Light │ │ │ │ ├── Light.styled.js │ │ │ │ └── index.js │ │ │ ├── Lights │ │ │ │ └── index.js │ │ │ ├── Link │ │ │ │ └── index.js │ │ │ └── QuickActions │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── actions.js │ │ │ ├── index.js │ │ │ └── rooms.js │ │ ├── public │ │ │ ├── favicon.ico │ │ │ └── images │ │ │ │ └── home.jpg │ │ └── styles.js │ └── lights_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Button │ │ │ └── index.js │ │ ├── Layout │ │ │ └── index.js │ │ ├── Light │ │ │ ├── Light.styled.js │ │ │ └── index.js │ │ ├── Lights │ │ │ └── index.js │ │ ├── Link │ │ │ └── index.js │ │ └── QuickActions │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── actions.js │ │ ├── index.js │ │ └── rooms.js │ │ ├── public │ │ ├── favicon.ico │ │ └── images │ │ │ └── home.jpg │ │ └── styles.js ├── react-nesting │ ├── buttons-and-children │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── buttons-and-children_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-composition │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Animal.jsx │ │ │ │ ├── AnimalCategory.jsx │ │ │ │ ├── AnimalEmoji.jsx │ │ │ │ ├── Button.jsx │ │ │ │ └── Header.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── fragments │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Box.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── fragments_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Box.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── navigation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── img │ │ │ │ ├── avatar.jpg │ │ │ │ └── logo.jpg │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── navigation_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ ├── Avatar.jsx │ │ │ ├── Header.jsx │ │ │ ├── Image.jsx │ │ │ ├── Link.jsx │ │ │ ├── Logo.jsx │ │ │ └── Navigation.jsx │ │ ├── img │ │ │ ├── avatar.jpg │ │ │ └── logo.jpg │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-props │ ├── box-with-props │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Box.css │ │ │ │ └── Box.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── button │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── greeting │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── greeting_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── smiley │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── smiley_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── sum │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── sum_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-state-1 │ ├── box │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── box_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── counter │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── counter_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-counter-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-counter-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── emoji-checker │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── emoji-checker_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── journal-app-favorite-button │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ └── journal-app-favorite-button_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.css │ │ ├── App.jsx │ │ ├── colors.css │ │ ├── components │ │ │ ├── Badge │ │ │ │ ├── Badge.css │ │ │ │ └── index.jsx │ │ │ ├── Button │ │ │ │ ├── Button.css │ │ │ │ └── index.jsx │ │ │ ├── Divider │ │ │ │ ├── Divider.css │ │ │ │ └── index.jsx │ │ │ ├── EntriesSection │ │ │ │ ├── EntriesSection.css │ │ │ │ └── index.jsx │ │ │ ├── Entry │ │ │ │ ├── Entry.css │ │ │ │ └── index.jsx │ │ │ ├── EntryForm │ │ │ │ ├── EntryForm.css │ │ │ │ └── index.jsx │ │ │ ├── FavoriteButton │ │ │ │ ├── FavoriteButton.css │ │ │ │ ├── index.jsx │ │ │ │ ├── star-filled.svg │ │ │ │ └── star.svg │ │ │ ├── Footer │ │ │ │ ├── Footer.css │ │ │ │ └── index.jsx │ │ │ ├── Header │ │ │ │ ├── Header.css │ │ │ │ └── index.jsx │ │ │ ├── Tab │ │ │ │ ├── Tab.css │ │ │ │ └── index.jsx │ │ │ └── Tabs │ │ │ │ ├── Tabs.css │ │ │ │ └── index.jsx │ │ ├── index.css │ │ └── index.jsx │ │ └── vite.config.js ├── react-state-2 │ ├── colored-number │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── ColoredNumber.jsx │ │ │ │ └── Counter.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── colored-number_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── ColoredNumber.jsx │ │ │ │ └── Counter.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── conditional-usestate │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── conditional-usestate_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── SearchForm.jsx │ │ │ │ ├── SearchFormControlled.jsx │ │ │ │ └── SearchResults.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── SearchForm.jsx │ │ │ │ └── SearchResults.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── favourite-holiday │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── favourite-holiday_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── personal-details │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Form.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── personal-details_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Form.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── table-reservation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Counter.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── table-reservation_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Counter.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── triple-count │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ └── Counter.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── triple-count_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ └── Counter.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-state-3 │ ├── adding-animals │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── List │ │ │ │ │ ├── List.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── adding-animals_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── List │ │ │ │ │ ├── List.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Movie │ │ │ │ │ ├── Movie.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Movie │ │ │ │ │ ├── Movie.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── journal-app-favorite-button-shared-state │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── journal-app-filter │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── journal-app-form │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── journal-app_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── tags │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── List │ │ │ │ │ ├── List.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── tags_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ ├── Form │ │ │ │ ├── Form.css │ │ │ │ └── index.jsx │ │ │ └── List │ │ │ │ ├── List.css │ │ │ │ └── index.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-styled-components │ ├── box │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── BoxWithClassName │ │ │ │ ├── BoxWithClassName.css │ │ │ │ └── BoxWithClassName.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ └── styles.js │ ├── box_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── BoxWIhtStyledComponents.js │ │ │ └── BoxWithClassName │ │ │ │ ├── BoxWithClassName.css │ │ │ │ └── BoxWithClassName.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ └── styles.js │ ├── card-conversion-cra │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── logo192.png │ │ │ ├── logo512.png │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ └── src │ │ │ ├── App.js │ │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── index.js │ │ │ ├── index.js │ │ │ └── styles.js │ ├── card-conversion │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ ├── Card.css │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── card-conversion_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Card │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ └── Button │ │ │ │ └── index.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ ├── lotr-app-styling │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── volumes │ │ │ │ ├── [slug].js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── images │ │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ │ ├── the-return-of-the-king.png │ │ │ │ └── the-two-towers.png │ │ └── styles.js │ ├── lotr-app-styling_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ └── data.js │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── index.js │ │ │ └── volumes │ │ │ │ ├── [slug].js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── images │ │ │ │ ├── arrow-left.svg │ │ │ │ ├── arrow-right.svg │ │ │ │ ├── chevron-left.svg │ │ │ │ ├── the-fellowship-of-the-ring.png │ │ │ │ ├── the-return-of-the-king.png │ │ │ │ └── the-two-towers.png │ │ └── styles.js │ ├── styled-button-cra │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── index.html │ │ │ ├── logo192.png │ │ │ ├── logo512.png │ │ │ ├── manifest.json │ │ │ └── robots.txt │ │ └── src │ │ │ ├── App.js │ │ │ ├── components │ │ │ └── StyledButton.js │ │ │ ├── index.js │ │ │ └── styles.js │ ├── styled-navbar │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── about │ │ │ │ └── index.js │ │ │ ├── contact │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── styled-navbar_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── about │ │ │ └── index.js │ │ ├── contact │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js ├── react-with-arrays │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── PokemonCard.css │ │ │ │ └── PokemonCard.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── PokemonCard.css │ │ │ │ └── PokemonCard.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── fruits │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Card.css │ │ │ │ └── Card.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── fruits_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Card.css │ │ │ │ └── Card.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── journal-app-entries-array │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── journal-app-entries-array_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── users │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Button.css │ │ │ │ ├── Button.jsx │ │ │ │ ├── Card.css │ │ │ │ ├── Card.jsx │ │ │ │ ├── Tag.css │ │ │ │ ├── Tag.jsx │ │ │ │ ├── Title.css │ │ │ │ └── Title.jsx │ │ │ ├── db.js │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── users_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ ├── Button.css │ │ │ ├── Button.jsx │ │ │ ├── Card.css │ │ │ ├── Card.jsx │ │ │ ├── Tag.css │ │ │ ├── Tag.jsx │ │ │ ├── Title.css │ │ │ └── Title.jsx │ │ ├── db.js │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── react-with-local-storage │ ├── demo-end │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── List │ │ │ │ │ ├── List.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── demo-start │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── Form │ │ │ │ │ ├── Form.css │ │ │ │ │ └── index.jsx │ │ │ │ └── List │ │ │ │ │ ├── List.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ ├── dice │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── D6 │ │ │ │ │ ├── D6.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── D6Button │ │ │ │ │ ├── D6Button.css │ │ │ │ │ └── index.jsx │ │ │ │ └── History │ │ │ │ │ ├── History.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ ├── styles.css │ │ │ └── utils.jsx │ │ └── vite.config.js │ ├── dice_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── D6 │ │ │ │ │ ├── D6.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── D6Button │ │ │ │ │ ├── D6Button.css │ │ │ │ │ └── index.jsx │ │ │ │ └── History │ │ │ │ │ ├── History.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.jsx │ │ │ ├── styles.css │ │ │ └── utils.jsx │ │ └── vite.config.js │ ├── journal-app-with-local-storage │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── journal-app-with-local-storage_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.css │ │ │ ├── App.jsx │ │ │ ├── colors.css │ │ │ ├── components │ │ │ │ ├── Badge │ │ │ │ │ ├── Badge.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Button │ │ │ │ │ ├── Button.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Divider │ │ │ │ │ ├── Divider.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntriesSection │ │ │ │ │ ├── EntriesSection.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Entry │ │ │ │ │ ├── Entry.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── EntryForm │ │ │ │ │ ├── EntryForm.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── FavoriteButton │ │ │ │ │ ├── FavoriteButton.css │ │ │ │ │ ├── index.jsx │ │ │ │ │ ├── star-filled.svg │ │ │ │ │ └── star.svg │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.css │ │ │ │ │ └── index.jsx │ │ │ │ ├── Tab │ │ │ │ │ ├── Tab.css │ │ │ │ │ └── index.jsx │ │ │ │ └── Tabs │ │ │ │ │ ├── Tabs.css │ │ │ │ │ └── index.jsx │ │ │ ├── index.css │ │ │ └── index.jsx │ │ └── vite.config.js │ ├── stored-note │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ │ ├── App.jsx │ │ │ ├── components │ │ │ │ ├── FontSelector.css │ │ │ │ ├── FontSelector.jsx │ │ │ │ ├── Note.css │ │ │ │ └── Note.jsx │ │ │ ├── index.jsx │ │ │ └── styles.css │ │ └── vite.config.js │ └── stored-note_solution │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── src │ │ ├── App.jsx │ │ ├── components │ │ │ ├── FontSelector.css │ │ │ ├── FontSelector.jsx │ │ │ ├── Note.css │ │ │ └── Note.jsx │ │ ├── index.jsx │ │ └── styles.css │ │ └── vite.config.js ├── recap-project-1 │ └── quiz-app │ │ ├── README.md │ │ └── assets │ │ ├── bookmarkpage.png │ │ ├── bookmarkspage.png │ │ ├── homepage.png │ │ ├── overview.png │ │ ├── profilepage.png │ │ ├── topics.md │ │ └── wireframes.excalidraw ├── recap-project-2 │ ├── character-count-example │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── css │ │ │ └── styles.css │ │ ├── index.html │ │ ├── js │ │ │ └── index.js │ │ └── package.json │ ├── example-implementation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── bookmarks.html │ │ ├── components │ │ │ ├── bookmark │ │ │ │ └── bookmark.css │ │ │ ├── card-list │ │ │ │ └── card-list.css │ │ │ ├── card │ │ │ │ └── card.css │ │ │ ├── counter-list │ │ │ │ └── counter-list.css │ │ │ ├── form │ │ │ │ └── form.css │ │ │ ├── header │ │ │ │ └── header.css │ │ │ ├── navigation │ │ │ │ └── navigation.css │ │ │ └── profile │ │ │ │ └── profile.css │ │ ├── form.html │ │ ├── form.js │ │ ├── global.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── profile.html │ │ ├── profile.js │ │ ├── styles.css │ │ └── wireframes │ │ │ ├── quiz-app-form-page-with-counter.excalidraw │ │ │ ├── quiz-app-form-page-with-counter.png │ │ │ ├── quiz-app-form-page.excalidraw │ │ │ └── quiz-app-form-page.png │ └── quiz-app │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── bookmarks.html │ │ ├── components │ │ ├── bookmark │ │ │ └── bookmark.css │ │ ├── card-list │ │ │ └── card-list.css │ │ ├── card │ │ │ └── card.css │ │ ├── counter-list │ │ │ └── counter-list.css │ │ ├── header │ │ │ └── header.css │ │ ├── navigation │ │ │ └── navigation.css │ │ └── profile │ │ │ └── profile.css │ │ ├── global.css │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ ├── profile.html │ │ ├── styles.css │ │ └── wireframes │ │ ├── quiz-app-form-page-with-counter.excalidraw │ │ ├── quiz-app-form-page-with-counter.png │ │ ├── quiz-app-form-page.excalidraw │ │ └── quiz-app-form-page.png ├── recap-project-3 │ ├── example-implementation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ └── magnifying-glass.png │ │ ├── components │ │ │ ├── CharacterCard │ │ │ │ ├── CharacterCard.css │ │ │ │ └── CharacterCard.js │ │ │ ├── NavButton │ │ │ │ ├── NavButton.css │ │ │ │ └── NavButton.js │ │ │ ├── NavPagination │ │ │ │ ├── NavPagination.css │ │ │ │ └── NavPagination.js │ │ │ └── SearchBar │ │ │ │ ├── SearchBar.css │ │ │ │ └── SearchBar.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ └── styles.css │ └── rick-and-morty-app │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ └── magnifying-glass.png │ │ ├── components │ │ ├── CharacterCard │ │ │ ├── CharacterCard.css │ │ │ └── CharacterCard.js │ │ ├── NavButton │ │ │ ├── NavButton.css │ │ │ └── NavButton.js │ │ ├── NavPagination │ │ │ ├── NavPagination.css │ │ │ └── NavPagination.js │ │ └── SearchBar │ │ │ ├── SearchBar.css │ │ │ └── SearchBar.js │ │ ├── index.html │ │ ├── index.js │ │ ├── package.json │ │ └── styles.css ├── recap-project-4 │ ├── README.md │ ├── assets │ │ ├── db.js │ │ ├── wireframe-1.png │ │ ├── wireframe-2.png │ │ ├── wireframe-3.png │ │ ├── wireframe-4.png │ │ ├── wireframe-5.png │ │ ├── wireframe-6.png │ │ ├── wireframe-7.png │ │ └── wireframe-8.png │ ├── part-1 │ │ ├── hints.md │ │ └── readme.md │ ├── part-2 │ │ ├── hints.md │ │ └── readme.md │ ├── part-3 │ │ ├── hints.md │ │ └── readme.md │ ├── part-4 │ │ ├── hints.md │ │ └── readme.md │ ├── part-5 │ │ ├── hints.md │ │ └── readme.md │ ├── part-6 │ │ ├── hints.md │ │ └── readme.md │ ├── part-7 │ │ ├── hints.md │ │ └── readme.md │ └── part-8 │ │ ├── hints.md │ │ └── readme.md ├── recap-project-5 │ ├── art-gallery-app │ │ ├── .gitignore │ │ ├── README.md │ │ ├── assets │ │ │ └── heart.svg │ │ ├── package.json │ │ └── wireframes.excalidraw.png │ └── example-implementation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── ArtPiecePreview │ │ │ └── index.js │ │ ├── ArtPieces │ │ │ └── index.js │ │ ├── ArtPiecesDetails │ │ │ └── index.js │ │ ├── CommentForm │ │ │ └── index.js │ │ ├── Comments │ │ │ └── index.js │ │ ├── FavoriteButton │ │ │ └── index.js │ │ ├── Layout.js │ │ ├── List.js │ │ ├── Navigation │ │ │ └── index.js │ │ ├── Spotlight │ │ │ └── index.js │ │ └── StyledImage.js │ │ ├── jsconfig.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── art-pieces │ │ │ ├── [slug] │ │ │ │ └── index.js │ │ │ └── index.js │ │ ├── favorites │ │ │ └── index.js │ │ └── index.js │ │ ├── public │ │ ├── assets │ │ │ └── heart.svg │ │ └── favicon.ico │ │ └── styles.js ├── recap-project-6 │ ├── example-implementation-with-comments │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── .prettierrc.json │ │ ├── README.md │ │ ├── components │ │ │ ├── Card.js │ │ │ ├── Comments.js │ │ │ ├── Form.js │ │ │ ├── Layout.js │ │ │ ├── StyledButton.js │ │ │ ├── StyledImage.js │ │ │ ├── StyledLink.js │ │ │ └── TitleBar.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ ├── Comment.js │ │ │ │ └── Place.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ ├── comments │ │ │ │ │ └── [id] │ │ │ │ │ │ └── index.js │ │ │ │ └── places │ │ │ │ │ ├── [id] │ │ │ │ │ └── index.js │ │ │ │ │ └── index.js │ │ │ ├── create.js │ │ │ ├── index.js │ │ │ └── places │ │ │ │ └── [id] │ │ │ │ ├── edit.js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ ├── sandbox.config.json │ │ └── styles.js │ ├── example-implementation │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ │ ├── Card.js │ │ │ ├── Comments.js │ │ │ ├── Form.js │ │ │ ├── Layout.js │ │ │ ├── StyledButton.js │ │ │ ├── StyledImage.js │ │ │ ├── StyledLink.js │ │ │ └── TitleBar.js │ │ ├── db │ │ │ ├── connect.js │ │ │ └── models │ │ │ │ └── Place.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ │ ├── db.js │ │ │ └── db.json │ │ ├── next.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pages │ │ │ ├── _app.js │ │ │ ├── _document.js │ │ │ ├── api │ │ │ │ └── places │ │ │ │ │ ├── [id] │ │ │ │ │ └── index.js │ │ │ │ │ └── index.js │ │ │ ├── create.js │ │ │ ├── index.js │ │ │ └── places │ │ │ │ └── [id] │ │ │ │ ├── edit.js │ │ │ │ └── index.js │ │ ├── public │ │ │ └── favicon.ico │ │ └── styles.js │ └── tourio-app │ │ ├── .eslintrc.json │ │ ├── .gitignore │ │ ├── README.md │ │ ├── components │ │ ├── Card.js │ │ ├── Comments.js │ │ ├── Form.js │ │ ├── Layout.js │ │ ├── StyledButton.js │ │ ├── StyledImage.js │ │ ├── StyledLink.js │ │ └── TitleBar.js │ │ ├── jest.config.js │ │ ├── jest.setup.js │ │ ├── jsconfig.json │ │ ├── lib │ │ ├── db.js │ │ ├── db.json │ │ ├── db_comments.js │ │ └── db_comments.json │ │ ├── next.config.js │ │ ├── package.json │ │ ├── pages │ │ ├── _app.js │ │ ├── _document.js │ │ ├── api │ │ │ ├── comments │ │ │ │ └── [id] │ │ │ │ │ └── index.js │ │ │ └── places │ │ │ │ ├── [id] │ │ │ │ └── index.js │ │ │ │ └── index.js │ │ ├── create.js │ │ ├── index.js │ │ └── places │ │ │ └── [id] │ │ │ ├── edit.js │ │ │ └── index.js │ │ ├── public │ │ └── favicon.ico │ │ └── styles.js └── shell-basics │ └── treasure-hunt │ ├── .gitignore │ ├── README.md │ ├── package.json │ └── treasure-island │ ├── beach │ ├── cave │ │ ├── barrel.md │ │ ├── note-in-a-bottle.md │ │ └── underwater-cave.md │ └── shipwreck.md │ ├── cliffs │ └── nest.md │ └── forest │ ├── deep-forest │ └── very-deep-forest │ │ └── ruins │ │ ├── temple │ │ ├── .secret-door │ │ │ └── tunnel │ │ │ │ └── chest.md │ │ └── altar.md │ │ └── tower │ │ └── old-door.md │ └── meadow │ ├── old-tree.md │ └── river-bed │ └── mountain-path │ ├── cave-camp │ ├── piece-of-paper-on-table.md │ └── skeleton.md │ └── mountain-peak │ └── viewpoint.md └── templates ├── README.md ├── empty ├── .codesandbox │ └── tasks.json ├── .gitignore ├── README.md ├── package.json └── sandbox.config.json ├── html-css-js ├── .codesandbox │ └── tasks.json ├── .eslintrc.json ├── .gitignore ├── .prettierrc.json ├── README.md ├── css │ └── styles.css ├── index.html ├── js │ ├── index.js │ └── index.test.js ├── package.json └── sandbox.config.json ├── html-css ├── .codesandbox │ └── tasks.json ├── .gitignore ├── .prettierrc.json ├── README.md ├── css │ └── styles.css ├── index.html ├── package.json └── sandbox.config.json ├── js-with-node ├── .gitignore ├── README.md └── index.js ├── js ├── .codesandbox │ └── tasks.json ├── .eslintrc.json ├── .gitignore ├── .prettierrc.json ├── README.md ├── index.html ├── index.js ├── index.test.js ├── package.json └── sandbox.config.json ├── next ├── .eslintrc.json ├── .gitignore ├── .prettierrc.json ├── README.md ├── jest.config.js ├── jest.setup.js ├── jsconfig.json ├── next.config.js ├── package.json ├── pages │ ├── _app.js │ ├── _document.js │ └── index.js ├── public │ └── favicon.ico └── styles.js ├── node-server ├── .codesandbox │ └── tasks.json ├── .eslintrc.json ├── .gitignore ├── .prettierrc.json ├── README.md ├── index.js ├── package.json ├── sandbox.config.json ├── server.js └── server.test.js ├── react ├── .eslintrc.json ├── .gitignore ├── README.md ├── index.html ├── package.json ├── public │ └── .gitkeep ├── src │ ├── App.jsx │ ├── index.jsx │ └── styles.css └── vite.config.js └── recap-project └── README.md /.browserslistrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/.browserslistrc -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/.gitignore -------------------------------------------------------------------------------- /.ncurc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/.ncurc.json -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/README.md -------------------------------------------------------------------------------- /archive/booleans/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/.eslintrc.json -------------------------------------------------------------------------------- /archive/booleans/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/booleans/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/README.md -------------------------------------------------------------------------------- /archive/booleans/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/css/styles.css -------------------------------------------------------------------------------- /archive/booleans/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/index.html -------------------------------------------------------------------------------- /archive/booleans/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/js/index.js -------------------------------------------------------------------------------- /archive/booleans/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/booleans/package.json -------------------------------------------------------------------------------- /archive/js-functions-1/basic-functions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/basic-functions_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/dom-manipulation/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/dom-manipulation_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/functions-with-parameters-extra/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/functions-with-parameters-extra_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/functions-with-parameters/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/functions-with-parameters_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/pizza-analyzer/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/pizza-analyzer_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/js-functions-1/vending-machine/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/react-custom-hooks/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/react-custom-hooks/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/react-immutable-state/form/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/react-immutable-state/form/README.md -------------------------------------------------------------------------------- /archive/react-immutable-state/form/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/react-immutable-state/form/styles.js -------------------------------------------------------------------------------- /archive/react-project-setup/demo-project-structure/src/components/Button/Button.test.js: -------------------------------------------------------------------------------- 1 | test.skip("renders the Button component", () => {}); 2 | -------------------------------------------------------------------------------- /archive/react-project-setup/demo-project-structure/src/components/Footer/Footer.test.js: -------------------------------------------------------------------------------- 1 | test.skip("renders the Footer component", () => {}); 2 | -------------------------------------------------------------------------------- /archive/react-project-setup/demo-project-structure/src/components/Header/Header.test.js: -------------------------------------------------------------------------------- 1 | test.skip("renders the Footer component", () => {}); 2 | -------------------------------------------------------------------------------- /archive/react-project-setup/demo-project-structure/src/components/Link/Link.test.js: -------------------------------------------------------------------------------- 1 | test.skip("renders the Link component", () => {}); 2 | -------------------------------------------------------------------------------- /archive/react-project-setup/journal-app/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /archive/recap-project-spotify/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/recap-project-spotify/README.md -------------------------------------------------------------------------------- /archive/recap-project-spotify/assets/db.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/archive/recap-project-spotify/assets/db.js -------------------------------------------------------------------------------- /archive/recap-project-weather-app/weather-and-activities-app/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /bun.lockb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/bun.lockb -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/package.json -------------------------------------------------------------------------------- /scripts/cook.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/cook.js -------------------------------------------------------------------------------- /scripts/create.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/create.js -------------------------------------------------------------------------------- /scripts/generate-solution-files/bun.lockb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/generate-solution-files/bun.lockb -------------------------------------------------------------------------------- /scripts/generate-solution-files/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/generate-solution-files/index.js -------------------------------------------------------------------------------- /scripts/generate-solution-files/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/generate-solution-files/package.json -------------------------------------------------------------------------------- /scripts/get-all-challenges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get-all-challenges.js -------------------------------------------------------------------------------- /scripts/get-all-links.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get-all-links.js -------------------------------------------------------------------------------- /scripts/get.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get.js -------------------------------------------------------------------------------- /scripts/get/challenge-local-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get/challenge-local-template.md -------------------------------------------------------------------------------- /scripts/get/challenge-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get/challenge-template.md -------------------------------------------------------------------------------- /scripts/get/pr-local-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get/pr-local-template.md -------------------------------------------------------------------------------- /scripts/get/pr-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/get/pr-template.md -------------------------------------------------------------------------------- /scripts/migrate-vite.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/migrate-vite.js -------------------------------------------------------------------------------- /scripts/migrate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/migrate.js -------------------------------------------------------------------------------- /scripts/vite-assets/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/vite-assets/.eslintrc.json -------------------------------------------------------------------------------- /scripts/vite-assets/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/vite-assets/package.json -------------------------------------------------------------------------------- /scripts/vite-assets/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/scripts/vite-assets/vite.config.js -------------------------------------------------------------------------------- /sessions/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/accessibility/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/accessibility/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/accessibility/demo-end/README.md -------------------------------------------------------------------------------- /sessions/accessibility/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/accessibility/demo-end/index.html -------------------------------------------------------------------------------- /sessions/accessibility/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/accessibility/demo-end/package.json -------------------------------------------------------------------------------- /sessions/accessibility/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/accessibility/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/accessibility/demo-start/README.md -------------------------------------------------------------------------------- /sessions/accessibility/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/accessibility/demo-start/index.html -------------------------------------------------------------------------------- /sessions/agile-workflow-and-user-stories/movie-app/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/agile-workflow-and-user-stories/movie-app_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/chance/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/chance/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/chance/README.md -------------------------------------------------------------------------------- /sessions/backend-basics/chance/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/chance/index.js -------------------------------------------------------------------------------- /sessions/backend-basics/chance/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/chance/package.json -------------------------------------------------------------------------------- /sessions/backend-basics/chance/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/chance/server.js -------------------------------------------------------------------------------- /sessions/backend-basics/chance_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/demo-end/README.md -------------------------------------------------------------------------------- /sessions/backend-basics/demo-end/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/demo-end/index.js -------------------------------------------------------------------------------- /sessions/backend-basics/demo-end/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/demo-end/server.js -------------------------------------------------------------------------------- /sessions/backend-basics/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/demo-start/README.md -------------------------------------------------------------------------------- /sessions/backend-basics/demo-start/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/backend-basics/demo-start/server.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/backend-basics/greeting/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/greeting/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/greeting/README.md -------------------------------------------------------------------------------- /sessions/backend-basics/greeting/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/greeting/index.js -------------------------------------------------------------------------------- /sessions/backend-basics/greeting/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/greeting/server.js -------------------------------------------------------------------------------- /sessions/backend-basics/greeting_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/routes/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-basics/routes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/routes/README.md -------------------------------------------------------------------------------- /sessions/backend-basics/routes/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/routes/index.js -------------------------------------------------------------------------------- /sessions/backend-basics/routes/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/routes/package.json -------------------------------------------------------------------------------- /sessions/backend-basics/routes/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-basics/routes/server.js -------------------------------------------------------------------------------- /sessions/backend-basics/routes_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-create/demo-end/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/demo-end/.gitignore -------------------------------------------------------------------------------- /sessions/backend-create/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/demo-end/README.md -------------------------------------------------------------------------------- /sessions/backend-create/demo-end/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/demo-end/styles.js -------------------------------------------------------------------------------- /sessions/backend-create/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/demo-start/README.md -------------------------------------------------------------------------------- /sessions/backend-create/demo-start/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/demo-start/styles.js -------------------------------------------------------------------------------- /sessions/backend-create/products/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/products/.gitignore -------------------------------------------------------------------------------- /sessions/backend-create/products/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/products/README.md -------------------------------------------------------------------------------- /sessions/backend-create/products/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-create/products/styles.js -------------------------------------------------------------------------------- /sessions/backend-mongodb/database-design/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-mongodb/queries/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/backend-mongodb/queries/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-mongodb/queries/README.md -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/.gitignore -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/README.md -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/db/connect.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/db/connect.js -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/jest.setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/jest.setup.js -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/jsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/jsconfig.json -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/package.json -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/pages/[id].js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/pages/[id].js -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/pages/_app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/pages/_app.js -------------------------------------------------------------------------------- /sessions/backend-read/demo-end/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-end/styles.js -------------------------------------------------------------------------------- /sessions/backend-read/demo-start/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-start/.gitignore -------------------------------------------------------------------------------- /sessions/backend-read/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-start/README.md -------------------------------------------------------------------------------- /sessions/backend-read/demo-start/lib/data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-start/lib/data.js -------------------------------------------------------------------------------- /sessions/backend-read/demo-start/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/demo-start/styles.js -------------------------------------------------------------------------------- /sessions/backend-read/products/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/.gitignore -------------------------------------------------------------------------------- /sessions/backend-read/products/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/README.md -------------------------------------------------------------------------------- /sessions/backend-read/products/db/connect.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/db/connect.js -------------------------------------------------------------------------------- /sessions/backend-read/products/jest.setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/jest.setup.js -------------------------------------------------------------------------------- /sessions/backend-read/products/jsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/jsconfig.json -------------------------------------------------------------------------------- /sessions/backend-read/products/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/package.json -------------------------------------------------------------------------------- /sessions/backend-read/products/pages/[id].js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/pages/[id].js -------------------------------------------------------------------------------- /sessions/backend-read/products/pages/_app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/pages/_app.js -------------------------------------------------------------------------------- /sessions/backend-read/products/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/backend-read/products/styles.js -------------------------------------------------------------------------------- /sessions/css-basics/button-styles/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/button-styles/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/button-styles/README.md -------------------------------------------------------------------------------- /sessions/css-basics/button-styles/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/button-styles/index.html -------------------------------------------------------------------------------- /sessions/css-basics/button-styles_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/combined-users/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/combined-users/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/combined-users/README.md -------------------------------------------------------------------------------- /sessions/css-basics/combined-users_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-end/README.md -------------------------------------------------------------------------------- /sessions/css-basics/demo-end/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-end/css/styles.css -------------------------------------------------------------------------------- /sessions/css-basics/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-end/index.html -------------------------------------------------------------------------------- /sessions/css-basics/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-end/package.json -------------------------------------------------------------------------------- /sessions/css-basics/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-start/README.md -------------------------------------------------------------------------------- /sessions/css-basics/demo-start/css/styles.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/css-basics/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-start/index.html -------------------------------------------------------------------------------- /sessions/css-basics/demo-start/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/demo-start/package.json -------------------------------------------------------------------------------- /sessions/css-basics/pink-box/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/pink-box/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pink-box/README.md -------------------------------------------------------------------------------- /sessions/css-basics/pink-box/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pink-box/css/styles.css -------------------------------------------------------------------------------- /sessions/css-basics/pink-box/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pink-box/index.html -------------------------------------------------------------------------------- /sessions/css-basics/pink-box/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pink-box/package.json -------------------------------------------------------------------------------- /sessions/css-basics/pink-box_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/pokemon-page/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/pokemon-page/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pokemon-page/README.md -------------------------------------------------------------------------------- /sessions/css-basics/pokemon-page/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pokemon-page/index.html -------------------------------------------------------------------------------- /sessions/css-basics/pokemon-page_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/pseudo-park/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-basics/pseudo-park/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pseudo-park/README.md -------------------------------------------------------------------------------- /sessions/css-basics/pseudo-park/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pseudo-park/index.html -------------------------------------------------------------------------------- /sessions/css-basics/pseudo-park/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-basics/pseudo-park/package.json -------------------------------------------------------------------------------- /sessions/css-basics/pseudo-park_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-end/README.md -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-end/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-end/css/styles.css -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-end/index.html -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-end/package.json -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-start/README.md -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-start/index.html -------------------------------------------------------------------------------- /sessions/css-flexbox/demo-start/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/demo-start/package.json -------------------------------------------------------------------------------- /sessions/css-flexbox/navigation/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/navigation/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/navigation/README.md -------------------------------------------------------------------------------- /sessions/css-flexbox/navigation/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/navigation/index.html -------------------------------------------------------------------------------- /sessions/css-flexbox/navigation/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/navigation/package.json -------------------------------------------------------------------------------- /sessions/css-flexbox/navigation_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/profile/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-flexbox/profile/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/profile/README.md -------------------------------------------------------------------------------- /sessions/css-flexbox/profile/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/profile/css/styles.css -------------------------------------------------------------------------------- /sessions/css-flexbox/profile/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/profile/index.html -------------------------------------------------------------------------------- /sessions/css-flexbox/profile/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-flexbox/profile/package.json -------------------------------------------------------------------------------- /sessions/css-flexbox/profile_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/absolute-position/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/absolute-position_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-positioning/demo-end/README.md -------------------------------------------------------------------------------- /sessions/css-positioning/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-positioning/demo-end/index.html -------------------------------------------------------------------------------- /sessions/css-positioning/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/layout-with-position/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-positioning/layout-with-position_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-responsive/demo-end/README.md -------------------------------------------------------------------------------- /sessions/css-responsive/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-responsive/demo-end/index.html -------------------------------------------------------------------------------- /sessions/css-responsive/demo-example-responsive/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/demo-example-static/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-responsive/demo-start/README.md -------------------------------------------------------------------------------- /sessions/css-responsive/playground/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/playground/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-responsive/playground/README.md -------------------------------------------------------------------------------- /sessions/css-responsive/playground_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/responsive-website/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-responsive/responsive-website_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/custom-properties/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/custom-properties_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/demo-end/README.md -------------------------------------------------------------------------------- /sessions/css-structure/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/demo-end/index.html -------------------------------------------------------------------------------- /sessions/css-structure/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/demo-end/package.json -------------------------------------------------------------------------------- /sessions/css-structure/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/demo-start/README.md -------------------------------------------------------------------------------- /sessions/css-structure/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/demo-start/index.html -------------------------------------------------------------------------------- /sessions/css-structure/selectors-and-cascading-bugs_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/taco-truck/README.md -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/taco-truck/index.html -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/taco-truck/styles.css -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck/theme.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/css-structure/taco-truck/theme.css -------------------------------------------------------------------------------- /sessions/css-structure/taco-truck_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/how-to-code-review/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/.eslintrc.json -------------------------------------------------------------------------------- /sessions/how-to-code-review/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/.gitignore -------------------------------------------------------------------------------- /sessions/how-to-code-review/.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/.prettierrc.json -------------------------------------------------------------------------------- /sessions/how-to-code-review/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/README.md -------------------------------------------------------------------------------- /sessions/how-to-code-review/jsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/jsconfig.json -------------------------------------------------------------------------------- /sessions/how-to-code-review/next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/next.config.js -------------------------------------------------------------------------------- /sessions/how-to-code-review/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/package.json -------------------------------------------------------------------------------- /sessions/how-to-code-review/pages/_app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/pages/_app.js -------------------------------------------------------------------------------- /sessions/how-to-code-review/pages/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/pages/index.js -------------------------------------------------------------------------------- /sessions/how-to-code-review/styles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/how-to-code-review/styles.js -------------------------------------------------------------------------------- /sessions/html-and-the-web/div-salad/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-and-the-web/div-salad_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-and-the-web/find-the-errors/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-and-the-web/format-salad/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-and-the-web/personal-website/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-and-the-web/personal-website/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/html-forms/finding-a11y-errors/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/finding-a11y-errors_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/form-validation/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/form-validation_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/personal-profile-form/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/personal-profile-form_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/zoo/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/html-forms/zoo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/html-forms/zoo/README.md -------------------------------------------------------------------------------- /sessions/html-forms/zoo/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/html-forms/zoo/css/styles.css -------------------------------------------------------------------------------- /sessions/html-forms/zoo/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/html-forms/zoo/index.html -------------------------------------------------------------------------------- /sessions/html-forms/zoo/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/html-forms/zoo/package.json -------------------------------------------------------------------------------- /sessions/js-array-methods/animal-objects/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/animal-objects_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/animal-strings/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/animal-strings_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/employees/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/employees_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/filter/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/filter/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/filter/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/filter/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/filter/index.html -------------------------------------------------------------------------------- /sessions/js-array-methods/filter/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/filter/js/index.js -------------------------------------------------------------------------------- /sessions/js-array-methods/filter_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/for-each/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/for-each/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/for-each/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/for-each_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/fun-with-flags/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/fun-with-flags_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/letter-puzzle/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/letter-puzzle_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/map/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-array-methods/map/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/map/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/map/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/css/styles.css -------------------------------------------------------------------------------- /sessions/js-array-methods/map/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/index.html -------------------------------------------------------------------------------- /sessions/js-array-methods/map/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/js/index.js -------------------------------------------------------------------------------- /sessions/js-array-methods/map/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/map/package.json -------------------------------------------------------------------------------- /sessions/js-array-methods/map_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/news-flash/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/news-flash_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/repetition/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/repetition_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-1/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-1/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-1/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-1/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-1/index.html -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-1/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-1/js/index.js -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-1/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-1/package.json -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-2/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-2/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-2/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-2/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-2/index.html -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-2/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-2/js/index.js -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-2/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-2/package.json -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-3/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-3/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-3/README.md -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-3/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-3/index.html -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-3/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-3/js/index.js -------------------------------------------------------------------------------- /sessions/js-array-methods/spa-3/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-array-methods/spa-3/package.json -------------------------------------------------------------------------------- /sessions/js-array-methods/zoo-animals/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-array-methods/zoo-animals_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/calculate-circle-area-and-circumference/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/calculate-circle-area-and-circumference__solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/console-methods/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/console-methods_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/lifetime-calculator/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/lifetime-calculator_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/social-media-post/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/social-media-post_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/tip-calculator/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/tip-calculator_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/track-your-savings-goals/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-basics-and-variables/track-your-savings-goals_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/demo-start/js/index.js: -------------------------------------------------------------------------------- 1 | let carrots = 2; 2 | const dishesCleaned = 0; 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/log-type/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/log-type/js/index.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/log-type_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/statements/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/statements_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/teenager-check/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/teenager-check_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/teenager/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/truthy-and-falsy/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/weather-check/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-conditions-and-booleans/weather-check_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-createelement/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-createelement/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/product-teaser/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/product-teaser_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/social-media-post/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/social-media-post_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/toast-messages/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-createelement/toast-messages_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/dark-mode/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/dark-mode_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/demo-start/js/index.js: -------------------------------------------------------------------------------- 1 | console.log("Hello from index.js!"); 2 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/simple-calculator/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/simple-calculator_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/survey-error-fixing/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-dom-and-events/survey-error-fixing_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-error-handling/calculator/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-error-handling/calculator_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-error-handling/fetch/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-error-handling/fetch/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-error-handling/fetch/README.md -------------------------------------------------------------------------------- /sessions/js-error-handling/fetch/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-error-handling/fetch/index.html -------------------------------------------------------------------------------- /sessions/js-error-handling/fetch/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-error-handling/fetch/js/index.js -------------------------------------------------------------------------------- /sessions/js-error-handling/fetch_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/blocking-demo/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/blocking-demo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/blocking-demo/README.md -------------------------------------------------------------------------------- /sessions/js-fetch/blocking-demo/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/blocking-demo/index.html -------------------------------------------------------------------------------- /sessions/js-fetch/blocking-demo/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/blocking-demo/js/index.js -------------------------------------------------------------------------------- /sessions/js-fetch/blocking-demo/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/blocking-demo/package.json -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/README.md -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/css/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/css/globals.css -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/css/utils.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/css/utils.css -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/index.html -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/js/fetch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/js/fetch.js -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/js/game.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/js/game.js -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/js/index.js: -------------------------------------------------------------------------------- 1 | import "./game.js"; 2 | 3 | console.clear(); 4 | -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/js/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/js/utils.js -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/package.json -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/color-clue/styles.css -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/color-clue_solution/js/index.js: -------------------------------------------------------------------------------- 1 | import "./game.js"; 2 | 3 | console.clear(); 4 | -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/css/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/css/globals.css -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/js/index.js -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/package.json -------------------------------------------------------------------------------- /sessions/js-fetch/demo-end/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-end/styles.css -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/README.md -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/css/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/css/globals.css -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/index.html -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/js/index.js -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/package.json -------------------------------------------------------------------------------- /sessions/js-fetch/demo-start/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/demo-start/styles.css -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars-console/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars-console_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/README.md -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/css/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/css/globals.css -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/index.html -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/js/index.js -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/js/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/js/utils.js -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/package.json -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-fetch/star-wars/styles.css -------------------------------------------------------------------------------- /sessions/js-fetch/star-wars_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/calculator/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-forms/calculator/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/calculator/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/README.md -------------------------------------------------------------------------------- /sessions/js-forms/calculator/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/css/styles.css -------------------------------------------------------------------------------- /sessions/js-forms/calculator/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/index.html -------------------------------------------------------------------------------- /sessions/js-forms/calculator/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/js/index.js -------------------------------------------------------------------------------- /sessions/js-forms/calculator/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/calculator/package.json -------------------------------------------------------------------------------- /sessions/js-forms/calculator_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/checkbox-input/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/checkbox-input/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/checkbox-input/README.md -------------------------------------------------------------------------------- /sessions/js-forms/checkbox-input/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/checkbox-input/index.html -------------------------------------------------------------------------------- /sessions/js-forms/checkbox-input/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/checkbox-input/js/index.js -------------------------------------------------------------------------------- /sessions/js-forms/checkbox-input_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/css/styles.css -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/js/index.js -------------------------------------------------------------------------------- /sessions/js-forms/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-end/package.json -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-start/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-start/README.md -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-start/css/styles.css -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-start/index.html -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/js/index.js: -------------------------------------------------------------------------------- 1 | console.clear(); 2 | -------------------------------------------------------------------------------- /sessions/js-forms/demo-start/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-forms/demo-start/package.json -------------------------------------------------------------------------------- /sessions/js-forms/handle-form-submit/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-forms/handle-form-submit_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/arrow-functions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/arrow-functions_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/basic-calculations/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/basic-calculations_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/basic-functions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/basic-functions_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-functions/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-functions/demo-end/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-functions/demo-end/js/index.js -------------------------------------------------------------------------------- /sessions/js-functions/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-functions/demo-end/package.json -------------------------------------------------------------------------------- /sessions/js-functions/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-functions/demo-start/index.html -------------------------------------------------------------------------------- /sessions/js-functions/demo-start/js/index.js: -------------------------------------------------------------------------------- 1 | console.clear(); 2 | -------------------------------------------------------------------------------- /sessions/js-functions/dom-manipulation/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/dom-manipulation_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/functions-with-parameters-extra/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/functions-with-parameters-extra_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/functions-with-parameters/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/functions-with-parameters_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/greeting-page/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/greeting-page_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/pizza-analyzer/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/pizza-analyzer_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/progress-bar/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/progress-bar/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-functions/progress-bar/README.md -------------------------------------------------------------------------------- /sessions/js-functions/progress-bar_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/vending-machine/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-functions/vending-machine_advanced/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/change-box-appearance/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/change-box-appearance/js/index.js: -------------------------------------------------------------------------------- 1 | console.clear(); 2 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/change-box-appearance_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/input-to-upper-and-lowercase/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/input-to-upper-and-lowercase_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/input-to-uppercase/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/input-to-uppercase/js/index.js: -------------------------------------------------------------------------------- 1 | console.clear(); 2 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/input-to-uppercase_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/multiple-inputs/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/multiple-inputs_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/switch-values/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-inputs-and-strings/switch-values_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-end/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-end/index.js -------------------------------------------------------------------------------- /sessions/js-loops/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-end/package.json -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-start/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-start/README.md -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-start/index.html -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-start/index.js -------------------------------------------------------------------------------- /sessions/js-loops/demo-start/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/demo-start/package.json -------------------------------------------------------------------------------- /sessions/js-loops/for-console/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/for-console/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/for-console/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/for-console/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/for-console/README.md -------------------------------------------------------------------------------- /sessions/js-loops/for-console/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/for-console/index.html -------------------------------------------------------------------------------- /sessions/js-loops/for-console/index.js: -------------------------------------------------------------------------------- 1 | console.clear(); 2 | -------------------------------------------------------------------------------- /sessions/js-loops/for-console/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/for-console/package.json -------------------------------------------------------------------------------- /sessions/js-loops/for-console_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/forin-select-nav/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/forin-select-nav/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forin-select-nav/README.md -------------------------------------------------------------------------------- /sessions/js-loops/forin-select-nav_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/README.md -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/css/styles.css -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/index.html -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/js/index.js -------------------------------------------------------------------------------- /sessions/js-loops/forof-list/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/forof-list/package.json -------------------------------------------------------------------------------- /sessions/js-loops/forof-list_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/pixels/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/pixels/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/pixels/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/README.md -------------------------------------------------------------------------------- /sessions/js-loops/pixels/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/css/styles.css -------------------------------------------------------------------------------- /sessions/js-loops/pixels/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/index.html -------------------------------------------------------------------------------- /sessions/js-loops/pixels/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/js/index.js -------------------------------------------------------------------------------- /sessions/js-loops/pixels/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels/package.json -------------------------------------------------------------------------------- /sessions/js-loops/pixels_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/pixels_solution/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels_solution/README.md -------------------------------------------------------------------------------- /sessions/js-loops/pixels_solution/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/pixels_solution/index.html -------------------------------------------------------------------------------- /sessions/js-loops/stars/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-loops/stars/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/stars/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/README.md -------------------------------------------------------------------------------- /sessions/js-loops/stars/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/css/styles.css -------------------------------------------------------------------------------- /sessions/js-loops/stars/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/index.html -------------------------------------------------------------------------------- /sessions/js-loops/stars/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/js/index.js -------------------------------------------------------------------------------- /sessions/js-loops/stars/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars/package.json -------------------------------------------------------------------------------- /sessions/js-loops/stars_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/stars_solution/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars_solution/README.md -------------------------------------------------------------------------------- /sessions/js-loops/stars_solution/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars_solution/index.html -------------------------------------------------------------------------------- /sessions/js-loops/stars_solution/js/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-loops/stars_solution/js/index.js -------------------------------------------------------------------------------- /sessions/js-loops/while-random-number/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-loops/while-random-number_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/back-to-basics/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/back-to-basics_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-modern-syntax/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-modern-syntax/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/destructuring-arrays/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/destructuring-arrays_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/destructuring-objects/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/destructuring-objects_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/rest-and-spread/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-modern-syntax/rest-and-spread_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/arrays/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/arrays_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/objects-and-arrays/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/objects-and-arrays_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/objects/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-objects-and-arrays/objects_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-end/index.js -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-end/package.json -------------------------------------------------------------------------------- /sessions/js-structure/demo-end/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-end/styles.css -------------------------------------------------------------------------------- /sessions/js-structure/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-start/README.md -------------------------------------------------------------------------------- /sessions/js-structure/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-start/index.html -------------------------------------------------------------------------------- /sessions/js-structure/demo-start/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-start/index.js -------------------------------------------------------------------------------- /sessions/js-structure/demo-start/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/demo-start/styles.css -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/README.md -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/global.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/global.css -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/index.html -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/index.js -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/package.json -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/quiz-app/styles.css -------------------------------------------------------------------------------- /sessions/js-structure/quiz-app_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/shapes/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/shapes/.eslintrc.json -------------------------------------------------------------------------------- /sessions/js-structure/shapes/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/shapes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/shapes/README.md -------------------------------------------------------------------------------- /sessions/js-structure/shapes/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/shapes/index.html -------------------------------------------------------------------------------- /sessions/js-structure/shapes/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/shapes/index.js -------------------------------------------------------------------------------- /sessions/js-structure/shapes/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/shapes/package.json -------------------------------------------------------------------------------- /sessions/js-structure/shapes_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/spacerocket/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-structure/spacerocket/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/spacerocket/README.md -------------------------------------------------------------------------------- /sessions/js-structure/spacerocket/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-structure/spacerocket/index.html -------------------------------------------------------------------------------- /sessions/js-structure/spacerocket_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/demo-end/README.md -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-end/greet.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/demo-end/greet.js -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/demo-end/index.html -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-end/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/demo-end/index.js -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-start/greet.js: -------------------------------------------------------------------------------- 1 | export function greet(name) { 2 | return `Hello ${name}!`; 3 | } 4 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/demo-start/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/demo-start/index.js -------------------------------------------------------------------------------- /sessions/js-unit-testing/get-animal/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/get-animal/index.js: -------------------------------------------------------------------------------- 1 | export function getAnimal() {} 2 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/get-animal_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/math-functions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/math-functions_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/people/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/js-unit-testing/people/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/people/README.md -------------------------------------------------------------------------------- /sessions/js-unit-testing/people/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/people/index.html -------------------------------------------------------------------------------- /sessions/js-unit-testing/people/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/people/index.js -------------------------------------------------------------------------------- /sessions/js-unit-testing/people/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/js-unit-testing/people/package.json -------------------------------------------------------------------------------- /sessions/js-unit-testing/people_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/mock-interview-1/simple-algorithms/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/mock-interview-1/simple-algorithms_solutions/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/attributes/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/attributes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/attributes/README.md -------------------------------------------------------------------------------- /sessions/react-basics/attributes/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/attributes/index.html -------------------------------------------------------------------------------- /sessions/react-basics/attributes/src/App.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/attributes/src/App.jsx -------------------------------------------------------------------------------- /sessions/react-basics/attributes_solution/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-end/README.md -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-end/index.html -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-end/package.json -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/src/App.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-end/src/App.jsx -------------------------------------------------------------------------------- /sessions/react-basics/demo-end/src/index.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-end/src/index.jsx -------------------------------------------------------------------------------- /sessions/react-basics/demo-render/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/demo-render/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-render/README.md -------------------------------------------------------------------------------- /sessions/react-basics/demo-render/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-render/index.html -------------------------------------------------------------------------------- /sessions/react-basics/demo-start/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /sessions/react-basics/demo-start/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-start/README.md -------------------------------------------------------------------------------- /sessions/react-basics/demo-start/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/neuefische/web-exercises/HEAD/sessions/react-basics/demo-start/index.html -------------------------------------------------------------------------------- /sessions/react-basics/demo-start/src/App.jsx: -------------------------------------------------------------------------------- 1 | export default function App() { 2 | return