├── .editorconfig ├── .eslintignore ├── .eslintrc.json ├── .gitattributes ├── .github ├── CODEOWNERS ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug-report--issues-with-coding-challenges.md │ ├── bug-report--software-issue-in-platform.md │ ├── feature-request--request-a-new-feature-for-freecodecamp-org-s-platforms.md │ └── general-report--issue-with-articles.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── codeql-analysis.yml │ ├── cypress.yml │ ├── lighthouse-ci.yml │ └── node.js-tests.yml ├── .gitignore ├── .gitpod.yml ├── .node-inspectorrc ├── .npmrc ├── .prettierignore ├── .prettierrc ├── .snyk ├── .vcmrc ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile.tests ├── HoF.md ├── LICENSE.md ├── README.md ├── SECURITY.md ├── api-server ├── .babelrc.js ├── .gitignore ├── common │ ├── config.global.js │ ├── index.less │ ├── models │ │ ├── User-Credential.js │ │ ├── User-Credential.json │ │ ├── User-Identity.js │ │ ├── User-Identity.json │ │ ├── User-Identity.test.js │ │ ├── article.js │ │ ├── article.json │ │ ├── block.js │ │ ├── block.json │ │ ├── challenge.json │ │ ├── nonprofit.json │ │ ├── pledge.json │ │ ├── popularity.js │ │ ├── popularity.json │ │ ├── user.js │ │ └── user.json │ └── utils │ │ ├── auth.js │ │ ├── constantStrings.json │ │ ├── empty-protector.js │ │ ├── flash.js │ │ ├── index.js │ │ ├── legacyProjectData.js │ │ └── themes.js ├── development-start.js ├── jest.config.js ├── package-lock.json ├── package.json ├── post-seed.js ├── production-start.js ├── public │ ├── browserconfig.xml │ ├── favicon.ico │ ├── fonts │ │ ├── Lato-Bold.ttf │ │ ├── Lato-Light.ttf │ │ ├── Lato-Regular.ttf │ │ ├── Ubuntu-Regular.ttf │ │ ├── UbuntuMono-Regular.ttf │ │ ├── glyphicons-halflings-regular.eot │ │ └── saxmono.ttf │ ├── images │ │ └── freeCodeCamp-puck.svg │ ├── js │ │ ├── .jshintrc │ │ ├── calculator.js │ │ └── lib │ │ │ └── fontawesome │ │ │ ├── fa-brands.js │ │ │ ├── fa-brands.min.js │ │ │ ├── fa-regular.js │ │ │ ├── fa-regular.min.js │ │ │ ├── fa-solid.js │ │ │ ├── fa-solid.min.js │ │ │ ├── fontawesome-all.js │ │ │ ├── fontawesome-all.min.js │ │ │ ├── fontawesome.js │ │ │ └── fontawesome.min.js │ ├── json │ │ ├── bootcamps.json │ │ └── cats.json │ └── robots.txt └── server │ ├── README.md │ ├── boot │ ├── a-extend-built-ins.js │ ├── a-increase-listeners.js │ ├── authentication.js │ ├── certificate.js │ ├── challenge.js │ ├── commit.js │ ├── donate.js │ ├── explorer.js │ ├── news.js │ ├── randomAPIs.js │ ├── restApi.js │ ├── sentry-debug.js │ ├── settings.js │ ├── status.js │ ├── t-wiki.js │ ├── user.js │ └── z-not-found.js │ ├── boot_tests │ ├── README.md │ ├── certificate.test.js │ ├── challenge.test.js │ └── fixtures.js │ ├── component-passport.js │ ├── config.development.js │ ├── config.json │ ├── config.local.js │ ├── config.production.js │ ├── datasources.development.js │ ├── datasources.json │ ├── datasources.production.js │ ├── index.js │ ├── manifests │ └── README.md │ ├── middleware.json │ ├── middlewares │ ├── add-return-to.js │ ├── constant-headers.js │ ├── cookie-parser.js │ ├── csp.js │ ├── csurf.js │ ├── error-handlers.js │ ├── express-extensions.js │ ├── flash-cheaters.js │ ├── passport-login.js │ ├── request-authorization.js │ ├── request-authorization.test.js │ ├── sentry-error-handler.js │ ├── sentry-request-handler.js │ ├── sessions.js │ └── validator.js │ ├── model-config.json │ ├── models │ ├── about.js │ ├── about.json │ ├── auth-token.js │ ├── auth-token.json │ ├── donation.js │ └── donation.json │ ├── passport-providers.js │ ├── resources │ └── .gitkeep │ ├── rss │ ├── index.js │ └── lybsyn.js │ ├── utils │ ├── __mocks__ │ │ └── donation.js │ ├── about.js │ ├── auth.js │ ├── bad-id-map.js │ ├── cast-to-observable.js │ ├── certTypes.json │ ├── commit-goals.json │ ├── commit.js │ ├── commit.json │ ├── constantStrings.json │ ├── constants.js │ ├── cookieConfig.js │ ├── create-handled-error.js │ ├── date-utils.js │ ├── date-utils.test.js │ ├── donation.js │ ├── donation.test.js │ ├── get-curriculum.js │ ├── getDynamicPropsForUser.js │ ├── getSetAccessToken.js │ ├── getSetAccessToken.test.js │ ├── in-memory-cache.js │ ├── in-memory-cache.test.js │ ├── index.js │ ├── lang-passthrough-urls.js │ ├── middleware.js │ ├── publicUserProps.js │ ├── react.js │ ├── rx.js │ ├── superBlockCertTypeMap.js │ ├── url-utils.js │ ├── user-stats.js │ └── user-stats.test.js │ └── views │ ├── commit │ ├── directory.jade │ ├── index.jade │ └── pledge.jade │ ├── emails │ ├── a-new-user.ejs │ ├── certified.ejs │ ├── user-request-sign-in.ejs │ ├── user-request-sign-up.ejs │ └── user-request-update-email.ejs │ └── resources │ ├── calculator.jade │ └── the-fastest-web-page-on-the-internet.jade ├── change_volumes_owner.sh ├── client ├── .babelrc ├── .gitignore ├── config │ └── .gitkeep ├── gatsby-browser.js ├── gatsby-config.js ├── gatsby-node.js ├── gatsby-ssr.js ├── jest.config.js ├── jest.transform.js ├── package-lock.json ├── package.json ├── plugins │ ├── fcc-source-challenges │ │ ├── create-challenge-nodes.js │ │ ├── gatsby-node.js │ │ ├── package-lock.json │ │ └── package.json │ ├── gatsby-remark-fcc-forum-emoji │ │ ├── index.js │ │ ├── package-lock.json │ │ └── package.json │ └── gatsby-remark-node-identity │ │ ├── gatsby-node.js │ │ ├── package-lock.json │ │ └── package.json ├── postcss.config.js ├── src │ ├── __mocks__ │ │ ├── analyticsMock.js │ │ ├── challenge-nodes.js │ │ ├── completedChallengesMock.js │ │ ├── fileMock.js │ │ ├── gatsby-link.js │ │ ├── gatsby.js │ │ ├── intro-nodes.js │ │ └── styleMock.js │ ├── __tests__ │ │ └── integration │ │ │ └── handled-error.test.js │ ├── analytics │ │ ├── gtag.js │ │ └── index.js │ ├── assets │ │ ├── icons │ │ │ ├── Caret.js │ │ │ ├── CertificationIcon.js │ │ │ ├── Cup.js │ │ │ ├── DonateWithPayPal.js │ │ │ ├── Fail.js │ │ │ ├── GreenNotCompleted.js │ │ │ ├── GreenPass.js │ │ │ ├── Heart.js │ │ │ ├── Initial.js │ │ │ ├── IntroInformation.js │ │ │ ├── Spacer.js │ │ │ ├── ToggleCheck.js │ │ │ └── freeCodeCampLogo.js │ │ └── images │ │ │ ├── AmazonLogo.js │ │ │ ├── AppleLogo.js │ │ │ ├── AsFeatureLogo.js │ │ │ ├── GoogleLogo.js │ │ │ ├── MicrosoftLogo.js │ │ │ ├── SpotifyLogo.js │ │ │ ├── freeCodeCamp-404.svg │ │ │ ├── index.js │ │ │ └── square_puck.png │ ├── client-only-routes │ │ ├── ShowCertification.js │ │ ├── ShowProfileOrFourOhFour.js │ │ ├── ShowSettings.js │ │ ├── ShowSettings.test.js │ │ ├── ShowUnsubscribed.js │ │ ├── ShowUser.js │ │ └── showuser.css │ ├── client │ │ ├── frame-runner.js │ │ └── workers │ │ │ ├── sass-compile.js │ │ │ └── test-evaluator.js │ ├── components │ │ ├── AppMountNotifier.js │ │ ├── Donation │ │ │ ├── DonateCompletion.js │ │ │ ├── DonateForm.js │ │ │ ├── DonateFormChildViewForHOC.js │ │ │ ├── DonateText.js │ │ │ ├── Donation.css │ │ │ ├── DonationModal.js │ │ │ ├── MinimalDonateForm.js │ │ │ ├── PayPalButtonScriptLoader.js │ │ │ ├── PaypalButton.js │ │ │ ├── StripeCardForm.js │ │ │ └── assets │ │ │ │ ├── ApplePay.js │ │ │ │ ├── GooglePay.js │ │ │ │ └── accepted-cards.png │ │ ├── Flash │ │ │ ├── flash.css │ │ │ ├── index.js │ │ │ └── redux │ │ │ │ └── index.js │ │ ├── Footer │ │ │ ├── Footer.test.js │ │ │ ├── __snapshots__ │ │ │ │ └── Footer.test.js.snap │ │ │ ├── footer.css │ │ │ └── index.js │ │ ├── FourOhFour │ │ │ ├── 404.css │ │ │ └── index.js │ │ ├── Header │ │ │ ├── Header.test.js │ │ │ ├── components │ │ │ │ ├── Login.js │ │ │ │ ├── MenuButton.js │ │ │ │ ├── NavLinks.js │ │ │ │ ├── NavLogo.js │ │ │ │ ├── UniversalNav.js │ │ │ │ ├── UserState.js │ │ │ │ ├── login.css │ │ │ │ └── universalNav.css │ │ │ ├── header.css │ │ │ ├── index.js │ │ │ └── stripeIframesFix.js │ │ ├── Intro │ │ │ ├── Intro.test.js │ │ │ ├── components │ │ │ │ └── IntroDescription.js │ │ │ ├── index.js │ │ │ └── intro.css │ │ ├── Map │ │ │ ├── Map.test.js │ │ │ ├── __snapshots__ │ │ │ │ └── Map.test.js.snap │ │ │ ├── components │ │ │ │ ├── Block.js │ │ │ │ ├── Block.test.js │ │ │ │ ├── SuperBlock.js │ │ │ │ ├── SuperBlock.test.js │ │ │ │ └── __snapshots__ │ │ │ │ │ ├── Block.test.js.snap │ │ │ │ │ └── SuperBlock.test.js.snap │ │ │ ├── index.js │ │ │ ├── map.css │ │ │ └── redux │ │ │ │ └── index.js │ │ ├── OfflineWarning │ │ │ ├── OfflineWarning.js │ │ │ ├── index.js │ │ │ └── offline-warning.css │ │ ├── RedirectHome.js │ │ ├── createRedirect.js │ │ ├── formHelpers │ │ │ ├── BlockSaveButton.js │ │ │ ├── BlockSaveButton.test.js │ │ │ ├── BlockSaveWrapper.js │ │ │ ├── BlockSaveWrapper.test.js │ │ │ ├── Form.js │ │ │ ├── Form.test.js │ │ │ ├── FormFields.js │ │ │ ├── __snapshots__ │ │ │ │ ├── BlockSaveButton.test.js.snap │ │ │ │ └── BlockSaveWrapper.test.js.snap │ │ │ └── index.js │ │ ├── helpers │ │ │ ├── ButtonSpacer.js │ │ │ ├── CurrentChallengeLink.js │ │ │ ├── FullWidthRow.js │ │ │ ├── Link.js │ │ │ ├── Link.test.js │ │ │ ├── Loader.js │ │ │ ├── Loader.test.js │ │ │ ├── SkeletonSprite.js │ │ │ ├── SlimWidthRow.js │ │ │ ├── Spacer.js │ │ │ ├── ToggleButton.js │ │ │ ├── __snapshots__ │ │ │ │ └── Loader.test.js.snap │ │ │ ├── form │ │ │ │ ├── BlockSaveButton.js │ │ │ │ └── BlockSaveWrapper.js │ │ │ ├── index.js │ │ │ ├── loader.css │ │ │ ├── skeletonStyles.js │ │ │ └── toggle-button.css │ │ ├── landing │ │ │ ├── Landing.test.js │ │ │ ├── components │ │ │ │ ├── CompanyLogos.js │ │ │ │ └── companyLogos.css │ │ │ ├── index.js │ │ │ └── landing.css │ │ ├── layouts │ │ │ ├── Certification.js │ │ │ ├── Default.js │ │ │ ├── Learn.js │ │ │ ├── fonts.css │ │ │ ├── global.css │ │ │ ├── index.js │ │ │ ├── learn.css │ │ │ ├── prism-night.css │ │ │ ├── prism.css │ │ │ └── variables.css │ │ ├── profile │ │ │ ├── Profile.js │ │ │ ├── Profile.test.js │ │ │ ├── __snapshots__ │ │ │ │ └── Profile.test.js.snap │ │ │ └── components │ │ │ │ ├── Camper.js │ │ │ │ ├── Certifications.js │ │ │ │ ├── HeatMap.js │ │ │ │ ├── HeatMap.test.js │ │ │ │ ├── Portfolio.js │ │ │ │ ├── SocialIcons.js │ │ │ │ ├── TimeLine.js │ │ │ │ ├── TimelinePagination.js │ │ │ │ ├── camper.css │ │ │ │ ├── certifications.css │ │ │ │ ├── heatmap.css │ │ │ │ ├── portfolio.css │ │ │ │ └── social-icons.css │ │ ├── search │ │ │ ├── WithInstantSearch.js │ │ │ ├── redux │ │ │ │ └── index.js │ │ │ ├── searchBar │ │ │ │ ├── NoHitsSuggestion.js │ │ │ │ ├── SearchBar.js │ │ │ │ ├── SearchBar.test.js │ │ │ │ ├── SearchHits.js │ │ │ │ ├── SearchSuggestion.js │ │ │ │ ├── searchbar-base.css │ │ │ │ └── searchbar.css │ │ │ └── searchPage │ │ │ │ ├── EmptySearch.js │ │ │ │ ├── NoResults.js │ │ │ │ ├── SearchPageHits.js │ │ │ │ ├── empty-search.css │ │ │ │ ├── no-results.css │ │ │ │ └── search-page-hits.css │ │ └── settings │ │ │ ├── About.js │ │ │ ├── Certification.js │ │ │ ├── Certification.test.js │ │ │ ├── DangerZone.js │ │ │ ├── DeleteModal.js │ │ │ ├── Email.js │ │ │ ├── Honesty.js │ │ │ ├── Honesty.test.js │ │ │ ├── Internet.js │ │ │ ├── Portfolio.js │ │ │ ├── Privacy.js │ │ │ ├── ResetModal.js │ │ │ ├── SectionHeader.js │ │ │ ├── SolutionViewer.js │ │ │ ├── Theme.js │ │ │ ├── ToggleSetting.js │ │ │ ├── Username.js │ │ │ ├── __snapshots__ │ │ │ └── Honesty.test.js.snap │ │ │ ├── certification.css │ │ │ ├── danger-zone.css │ │ │ ├── honesty.css │ │ │ ├── solution-viewer.css │ │ │ └── toggle-setting.css │ ├── head │ │ ├── index.js │ │ ├── meta.js │ │ ├── preloads.js │ │ └── styleSheets.js │ ├── html.js │ ├── pages │ │ ├── 404.js │ │ ├── certification.css │ │ ├── certification.js │ │ ├── common-pages.css │ │ ├── donate.js │ │ ├── email-sign-up.css │ │ ├── email-sign-up.js │ │ ├── index.js │ │ ├── learn.js │ │ ├── learn │ │ │ ├── apis-and-microservices │ │ │ │ ├── apis-and-microservices-projects │ │ │ │ │ └── index.md │ │ │ │ ├── basic-node-and-express │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── managing-packages-with-npm │ │ │ │ │ └── index.md │ │ │ │ └── mongodb-and-mongoose │ │ │ │ │ └── index.md │ │ │ ├── coding-interview-prep │ │ │ │ ├── algorithms │ │ │ │ │ └── index.md │ │ │ │ ├── data-structures │ │ │ │ │ └── index.md │ │ │ │ ├── project-euler │ │ │ │ │ └── index.md │ │ │ │ ├── rosetta-code │ │ │ │ │ └── index.md │ │ │ │ └── take-home-projects │ │ │ │ │ └── index.md │ │ │ ├── data-analysis-with-python │ │ │ │ ├── data-analysis-with-python-course │ │ │ │ │ └── index.md │ │ │ │ ├── data-analysis-with-python-projects │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ └── numpy │ │ │ │ │ └── index.md │ │ │ ├── data-visualization │ │ │ │ ├── data-visualization-projects │ │ │ │ │ └── index.md │ │ │ │ ├── data-visualization-with-d3 │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ └── json-apis-and-ajax │ │ │ │ │ └── index.md │ │ │ ├── front-end-libraries │ │ │ │ ├── bootstrap │ │ │ │ │ └── index.md │ │ │ │ ├── front-end-libraries-projects │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── jquery │ │ │ │ │ └── index.md │ │ │ │ ├── react-and-redux │ │ │ │ │ └── index.md │ │ │ │ ├── react │ │ │ │ │ └── index.md │ │ │ │ ├── redux │ │ │ │ │ └── index.md │ │ │ │ └── sass │ │ │ │ │ └── index.md │ │ │ ├── information-security │ │ │ │ ├── index.md │ │ │ │ ├── information-security-projects │ │ │ │ │ └── index.md │ │ │ │ ├── information-security-with-helmetjs │ │ │ │ │ └── index.md │ │ │ │ └── python-for-penetration-testing │ │ │ │ │ └── index.md │ │ │ ├── javascript-algorithms-and-data-structures │ │ │ │ ├── basic-algorithm-scripting │ │ │ │ │ └── index.md │ │ │ │ ├── basic-data-structures │ │ │ │ │ └── index.md │ │ │ │ ├── basic-javascript │ │ │ │ │ └── index.md │ │ │ │ ├── debugging │ │ │ │ │ └── index.md │ │ │ │ ├── es6 │ │ │ │ │ └── index.md │ │ │ │ ├── functional-programming │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ │ └── index.md │ │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ │ └── index.md │ │ │ │ ├── object-oriented-programming │ │ │ │ │ └── index.md │ │ │ │ └── regular-expressions │ │ │ │ │ └── index.md │ │ │ ├── machine-learning-with-python │ │ │ │ ├── how-neural-networks-work │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── machine-learning-with-python-projects │ │ │ │ │ └── index.md │ │ │ │ └── tensorflow │ │ │ │ │ └── index.md │ │ │ ├── quality-assurance │ │ │ │ ├── advanced-node-and-express │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── quality-assurance-and-testing-with-chai │ │ │ │ │ └── index.md │ │ │ │ └── quality-assurance-projects │ │ │ │ │ └── index.md │ │ │ ├── responsive-web-design │ │ │ │ ├── applied-accessibility │ │ │ │ │ └── index.md │ │ │ │ ├── applied-visual-design │ │ │ │ │ └── index.md │ │ │ │ ├── basic-css │ │ │ │ │ └── index.md │ │ │ │ ├── basic-html-and-html5 │ │ │ │ │ └── index.md │ │ │ │ ├── css-flexbox │ │ │ │ │ └── index.md │ │ │ │ ├── css-grid │ │ │ │ │ └── index.md │ │ │ │ ├── index.md │ │ │ │ ├── responsive-web-design-principles │ │ │ │ │ └── index.md │ │ │ │ └── responsive-web-design-projects │ │ │ │ │ └── index.md │ │ │ └── scientific-computing-with-python │ │ │ │ ├── index.md │ │ │ │ ├── python-for-everybody │ │ │ │ └── index.md │ │ │ │ └── scientific-computing-with-python-projects │ │ │ │ └── index.md │ │ ├── search.css │ │ ├── search.js │ │ ├── settings.js │ │ ├── unsubscribed.js │ │ ├── update-email.css │ │ ├── update-email.js │ │ └── user.js │ ├── redux │ │ ├── accept-terms-saga.js │ │ ├── app-mount-saga.js │ │ ├── cookieValues.js │ │ ├── createStore.js │ │ ├── donation-saga.js │ │ ├── error-saga.js │ │ ├── failed-updates-epic.js │ │ ├── failed-updates-epic.test.js │ │ ├── fetch-user-saga.js │ │ ├── ga-saga.js │ │ ├── ga-saga.test.js │ │ ├── hard-go-to-epic.js │ │ ├── index.js │ │ ├── night-mode-saga.js │ │ ├── propTypes.js │ │ ├── report-user-saga.js │ │ ├── rootEpic.js │ │ ├── rootReducer.js │ │ ├── rootSaga.js │ │ ├── settings │ │ │ ├── danger-zone-saga.js │ │ │ ├── index.js │ │ │ ├── settings-sagas.js │ │ │ ├── update-email-saga.js │ │ │ └── update-legacy-certificate-saga.js │ │ ├── show-cert-saga.js │ │ └── update-complete-epic.js │ ├── resources │ │ ├── certAndProjectMap.js │ │ └── honesty-policy.js │ ├── templates │ │ ├── Challenges │ │ │ ├── classic │ │ │ │ ├── DesktopLayout.js │ │ │ │ ├── Editor.js │ │ │ │ ├── MobileLayout.js │ │ │ │ ├── Show.js │ │ │ │ └── classic.css │ │ │ ├── components │ │ │ │ ├── Challenge-Description.js │ │ │ │ ├── Challenge-Title.js │ │ │ │ ├── ChallengeTitle.test.js │ │ │ │ ├── CompletionModal.js │ │ │ │ ├── CompletionModal.test.js │ │ │ │ ├── CompletionModalBody.js │ │ │ │ ├── CompletionModalBody.test.js │ │ │ │ ├── HelpModal.js │ │ │ │ ├── Hotkeys.js │ │ │ │ ├── Output.js │ │ │ │ ├── Preview.js │ │ │ │ ├── PrismFormatted.js │ │ │ │ ├── ResetModal.js │ │ │ │ ├── Side-Panel.js │ │ │ │ ├── Test-Suite.js │ │ │ │ ├── Tool-Panel.js │ │ │ │ ├── VideoModal.js │ │ │ │ ├── __snapshots__ │ │ │ │ │ ├── ChallengeTitle.test.js.snap │ │ │ │ │ └── CompletionModalBody.test.js.snap │ │ │ │ ├── challenge-description.css │ │ │ │ ├── challenge-title.css │ │ │ │ ├── completion-modal.css │ │ │ │ ├── help-modal.css │ │ │ │ ├── hotkeys.css │ │ │ │ ├── output.css │ │ │ │ ├── preview.css │ │ │ │ ├── reset-modal.css │ │ │ │ ├── side-panel.css │ │ │ │ ├── test-frame.css │ │ │ │ ├── test-suite.css │ │ │ │ ├── tool-panel.css │ │ │ │ └── video-modal.css │ │ │ ├── projects │ │ │ │ ├── SolutionForm.js │ │ │ │ ├── Tool-Panel.js │ │ │ │ ├── backend │ │ │ │ │ └── Show.js │ │ │ │ ├── frontend │ │ │ │ │ └── Show.js │ │ │ │ ├── ns.json │ │ │ │ └── tool-panel.css │ │ │ ├── rechallenge │ │ │ │ ├── builders.js │ │ │ │ ├── throwers.js │ │ │ │ └── transformers.js │ │ │ ├── redux │ │ │ │ ├── challenge-modal-epic.js │ │ │ │ ├── code-lock-epic.js │ │ │ │ ├── code-storage-epic.js │ │ │ │ ├── completion-epic.js │ │ │ │ ├── create-question-epic.js │ │ │ │ ├── current-challenge-saga.js │ │ │ │ ├── current-challenge-saga.test.js │ │ │ │ ├── execute-challenge-saga.js │ │ │ │ └── index.js │ │ │ ├── utils │ │ │ │ ├── build.js │ │ │ │ ├── fetch-and-cache.js │ │ │ │ ├── frame.js │ │ │ │ ├── index.js │ │ │ │ ├── index.test.js │ │ │ │ ├── postUpdate$.js │ │ │ │ ├── worker-executor.js │ │ │ │ └── worker-executor.test.js │ │ │ └── video │ │ │ │ ├── Show.js │ │ │ │ └── show.css │ │ └── Introduction │ │ │ ├── Intro.js │ │ │ ├── SuperBlockIntro.js │ │ │ └── intro.css │ └── utils │ │ ├── ajax.js │ │ ├── createTypes.js │ │ ├── format.js │ │ ├── format.test.js │ │ ├── get-words.js │ │ ├── handled-error.js │ │ ├── handled-error.test.js │ │ ├── index.js │ │ ├── reallyWeirdErrorMessage.js │ │ ├── report-error.js │ │ ├── reportedErrorMessage.js │ │ ├── scriptLoaders.js │ │ └── standardErrorMessage.js ├── static │ ├── _headers │ ├── css │ │ ├── bootstrap.min.css │ │ └── prism.css │ ├── fonts │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ ├── glyphicons-halflings-regular.woff2 │ │ ├── lato │ │ │ ├── Lato-Black.woff │ │ │ ├── Lato-BlackItalic.woff │ │ │ ├── Lato-Bold.woff │ │ │ ├── Lato-BoldItalic.woff │ │ │ ├── Lato-Hairline.woff │ │ │ ├── Lato-HairlineItalic.woff │ │ │ ├── Lato-Italic.woff │ │ │ ├── Lato-Light.woff │ │ │ ├── Lato-LightItalic.woff │ │ │ └── Lato-Regular.woff │ │ └── roboto-mono │ │ │ ├── RobotoMono-Bold.woff │ │ │ ├── RobotoMono-BoldItalic.woff │ │ │ ├── RobotoMono-Italic.woff │ │ │ ├── RobotoMono-Light.woff │ │ │ ├── RobotoMono-LightItalic.woff │ │ │ ├── RobotoMono-Medium.woff │ │ │ ├── RobotoMono-MediumItalic.woff │ │ │ ├── RobotoMono-Regular.woff │ │ │ ├── RobotoMono-Thin.woff │ │ │ └── RobotoMono-ThinItalic.woff │ ├── json │ │ └── cats.json │ └── the-fastest-web-page-on-the-internet │ │ └── index.html ├── utils │ ├── buildChallenges.js │ ├── challengeTypes.js │ ├── formatting.js │ ├── gatsby │ │ ├── challengePageCreator.js │ │ ├── index.js │ │ └── layoutSelector.js │ ├── index.js │ ├── infoLog.js │ ├── readDir.js │ ├── regEx.js │ ├── stateManagement.js │ └── titleify.js └── webpack-workers.js ├── config ├── cors-settings.js ├── donation-settings.js ├── env.js ├── misc.js ├── motivational-quotes.json └── secrets.js ├── curriculum ├── .babelrc ├── .editorconfig ├── .npmignore ├── .travis.yml ├── CHANGELOG.md ├── LICENSE.md ├── __fixtures__ │ ├── challenge-html-comments.english.md │ ├── challenge-js-comments.english.md │ ├── challenge-jsx-comments.english.md │ ├── challenge-stripped.chinese.md │ ├── challenge.chinese.md │ ├── challenge.english.md │ ├── combined-html-comments.md │ ├── combined-js-comments.md │ ├── combined-jsx-comments.md │ └── combined.md ├── challenges │ ├── _meta │ │ ├── advanced-node-and-express │ │ │ └── meta.json │ │ ├── algorithms │ │ │ └── meta.json │ │ ├── apis-and-microservices-certificate │ │ │ └── meta.json │ │ ├── apis-and-microservices-projects │ │ │ └── meta.json │ │ ├── applied-accessibility │ │ │ └── meta.json │ │ ├── applied-visual-design │ │ │ └── meta.json │ │ ├── basic-algorithm-scripting │ │ │ └── meta.json │ │ ├── basic-css │ │ │ └── meta.json │ │ ├── basic-data-structures │ │ │ └── meta.json │ │ ├── basic-html-and-html5 │ │ │ └── meta.json │ │ ├── basic-javascript │ │ │ └── meta.json │ │ ├── basic-node-and-express │ │ │ └── meta.json │ │ ├── bootstrap │ │ │ └── meta.json │ │ ├── css-flexbox │ │ │ └── meta.json │ │ ├── css-grid │ │ │ └── meta.json │ │ ├── data-analysis-with-python-certificate │ │ │ └── meta.json │ │ ├── data-analysis-with-python-course │ │ │ └── meta.json │ │ ├── data-analysis-with-python-projects │ │ │ └── meta.json │ │ ├── data-structures │ │ │ └── meta.json │ │ ├── data-visualization-certificate │ │ │ └── meta.json │ │ ├── data-visualization-projects │ │ │ └── meta.json │ │ ├── data-visualization-with-d3 │ │ │ └── meta.json │ │ ├── debugging │ │ │ └── meta.json │ │ ├── es6 │ │ │ └── meta.json │ │ ├── front-end-libraries-certificate │ │ │ └── meta.json │ │ ├── front-end-libraries-projects │ │ │ └── meta.json │ │ ├── functional-programming │ │ │ └── meta.json │ │ ├── how-neural-networks-work │ │ │ └── meta.json │ │ ├── information-security-certificate │ │ │ └── meta.json │ │ ├── information-security-projects │ │ │ └── meta.json │ │ ├── information-security-with-helmetjs │ │ │ └── meta.json │ │ ├── intermediate-algorithm-scripting │ │ │ └── meta.json │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── meta.json │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ └── meta.json │ │ ├── jquery │ │ │ └── meta.json │ │ ├── json-apis-and-ajax │ │ │ └── meta.json │ │ ├── legacy-back-end-certificate │ │ │ └── meta.json │ │ ├── legacy-data-visualization-certificate │ │ │ └── meta.json │ │ ├── legacy-front-end-certificate │ │ │ └── meta.json │ │ ├── legacy-full-stack-certificate │ │ │ └── meta.json │ │ ├── legacy-information-security-and-quality-assurance-certificate │ │ │ └── meta.json │ │ ├── machine-learning-with-python-certificate │ │ │ └── meta.json │ │ ├── machine-learning-with-python-projects │ │ │ └── meta.json │ │ ├── managing-packages-with-npm │ │ │ └── meta.json │ │ ├── mongodb-and-mongoose │ │ │ └── meta.json │ │ ├── numpy │ │ │ └── meta.json │ │ ├── object-oriented-programming │ │ │ └── meta.json │ │ ├── project-euler │ │ │ └── meta.json │ │ ├── python-for-everybody │ │ │ └── meta.json │ │ ├── python-for-penetration-testing │ │ │ └── meta.json │ │ ├── quality-assurance-and-testing-with-chai │ │ │ └── meta.json │ │ ├── quality-assurance-certificate │ │ │ └── meta.json │ │ ├── quality-assurance-projects │ │ │ └── meta.json │ │ ├── react-and-redux │ │ │ └── meta.json │ │ ├── react │ │ │ └── meta.json │ │ ├── redux │ │ │ └── meta.json │ │ ├── regular-expressions │ │ │ └── meta.json │ │ ├── responsive-web-design-certificate │ │ │ └── meta.json │ │ ├── responsive-web-design-principles │ │ │ └── meta.json │ │ ├── responsive-web-design-projects │ │ │ └── meta.json │ │ ├── rosetta-code │ │ │ └── meta.json │ │ ├── sass │ │ │ └── meta.json │ │ ├── scientific-computing-with-python-certificate │ │ │ └── meta.json │ │ ├── scientific-computing-with-python-projects │ │ │ └── meta.json │ │ ├── take-home-projects │ │ │ └── meta.json │ │ └── tensorflow │ │ │ └── meta.json │ ├── arabic │ │ ├── 01-responsive-web-design │ │ │ ├── applied-accessibility │ │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.arabic.md │ │ │ │ ├── add-an-accessible-date-picker.arabic.md │ │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.arabic.md │ │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.arabic.md │ │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.arabic.md │ │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.arabic.md │ │ │ │ ├── improve-chart-accessibility-with-the-figure-element.arabic.md │ │ │ │ ├── improve-form-field-accessibility-with-the-label-element.arabic.md │ │ │ │ ├── improve-readability-with-high-contrast-text.arabic.md │ │ │ │ ├── jump-straight-to-the-content-using-the-main-element.arabic.md │ │ │ │ ├── know-when-alt-text-should-be-left-blank.arabic.md │ │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.arabic.md │ │ │ │ ├── make-links-navigatable-with-html-access-keys.arabic.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.arabic.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.arabic.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.arabic.md │ │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.arabic.md │ │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.arabic.md │ │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.arabic.md │ │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.arabic.md │ │ │ │ ├── wrap-content-in-the-article-element.arabic.md │ │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.arabic.md │ │ │ ├── applied-visual-design │ │ │ │ ├── add-a-box-shadow-to-a-card-like-element.arabic.md │ │ │ │ ├── adjust-the-background-color-property-of-text.arabic.md │ │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.arabic.md │ │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.arabic.md │ │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.arabic.md │ │ │ │ ├── adjust-the-hue-of-a-color.arabic.md │ │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.arabic.md │ │ │ │ ├── adjust-the-tone-of-a-color.arabic.md │ │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.arabic.md │ │ │ │ ├── animate-elements-at-variable-rates.arabic.md │ │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.arabic.md │ │ │ │ ├── animate-multiple-elements-at-variable-rates.arabic.md │ │ │ │ ├── center-an-element-horizontally-using-the-margin-property.arabic.md │ │ │ │ ├── change-an-elements-relative-position.arabic.md │ │ │ │ ├── change-animation-timing-with-keywords.arabic.md │ │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.arabic.md │ │ │ │ ├── create-a-gradual-css-linear-gradient.arabic.md │ │ │ │ ├── create-a-graphic-using-css.arabic.md │ │ │ │ ├── create-a-horizontal-line-using-the-hr-element.arabic.md │ │ │ │ ├── create-a-more-complex-shape-using-css-and-html.arabic.md │ │ │ │ ├── create-movement-using-css-animation.arabic.md │ │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.arabic.md │ │ │ │ ├── create-visual-balance-using-the-text-align-property.arabic.md │ │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.arabic.md │ │ │ │ ├── decrease-the-opacity-of-an-element.arabic.md │ │ │ │ ├── learn-about-complementary-colors.arabic.md │ │ │ │ ├── learn-about-tertiary-colors.arabic.md │ │ │ │ ├── learn-how-bezier-curves-work.arabic.md │ │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.arabic.md │ │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.arabic.md │ │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.arabic.md │ │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.arabic.md │ │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.arabic.md │ │ │ │ ├── modify-fill-mode-of-an-animation.arabic.md │ │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.arabic.md │ │ │ │ ├── push-elements-left-or-right-with-the-float-property.arabic.md │ │ │ │ ├── set-the-font-size-for-multiple-heading-elements.arabic.md │ │ │ │ ├── set-the-font-size-of-paragraph-text.arabic.md │ │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.arabic.md │ │ │ │ ├── set-the-line-height-of-paragraphs.arabic.md │ │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.arabic.md │ │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.arabic.md │ │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.arabic.md │ │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.arabic.md │ │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.arabic.md │ │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.arabic.md │ │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.arabic.md │ │ │ │ ├── use-the-em-tag-to-italicize-text.arabic.md │ │ │ │ ├── use-the-s-tag-to-strikethrough-text.arabic.md │ │ │ │ ├── use-the-strong-tag-to-make-text-bold.arabic.md │ │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.arabic.md │ │ │ │ └── use-the-u-tag-to-underline-text.arabic.md │ │ │ ├── basic-css │ │ │ │ ├── add-a-negative-margin-to-an-element.arabic.md │ │ │ │ ├── add-borders-around-your-elements.arabic.md │ │ │ │ ├── add-different-margins-to-each-side-of-an-element.arabic.md │ │ │ │ ├── add-different-padding-to-each-side-of-an-element.arabic.md │ │ │ │ ├── add-rounded-corners-with-border-radius.arabic.md │ │ │ │ ├── adjust-the-margin-of-an-element.arabic.md │ │ │ │ ├── adjust-the-padding-of-an-element.arabic.md │ │ │ │ ├── attach-a-fallback-value-to-a-css-variable.arabic.md │ │ │ │ ├── cascading-css-variables.arabic.md │ │ │ │ ├── change-a-variable-for-a-specific-area.arabic.md │ │ │ │ ├── change-the-color-of-text.arabic.md │ │ │ │ ├── change-the-font-size-of-an-element.arabic.md │ │ │ │ ├── create-a-custom-css-variable.arabic.md │ │ │ │ ├── give-a-background-color-to-a-div-element.arabic.md │ │ │ │ ├── import-a-google-font.arabic.md │ │ │ │ ├── improve-compatibility-with-browser-fallbacks.arabic.md │ │ │ │ ├── inherit-styles-from-the-body-element.arabic.md │ │ │ │ ├── make-circular-images-with-a-border-radius.arabic.md │ │ │ │ ├── override-all-other-styles-by-using-important.arabic.md │ │ │ │ ├── override-class-declarations-by-styling-id-attributes.arabic.md │ │ │ │ ├── override-class-declarations-with-inline-styles.arabic.md │ │ │ │ ├── override-styles-in-subsequent-css.arabic.md │ │ │ │ ├── prioritize-one-style-over-another.arabic.md │ │ │ │ ├── set-the-font-family-of-an-element.arabic.md │ │ │ │ ├── set-the-id-of-an-element.arabic.md │ │ │ │ ├── size-your-images.arabic.md │ │ │ │ ├── specify-how-fonts-should-degrade.arabic.md │ │ │ │ ├── style-multiple-elements-with-a-css-class.arabic.md │ │ │ │ ├── style-the-html-body-element.arabic.md │ │ │ │ ├── understand-absolute-versus-relative-units.arabic.md │ │ │ │ ├── use-a-css-class-to-style-an-element.arabic.md │ │ │ │ ├── use-a-custom-css-variable.arabic.md │ │ │ │ ├── use-a-media-query-to-change-a-variable.arabic.md │ │ │ │ ├── use-abbreviated-hex-code.arabic.md │ │ │ │ ├── use-an-id-attribute-to-style-an-element.arabic.md │ │ │ │ ├── use-attribute-selectors-to-style-elements.arabic.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.arabic.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.arabic.md │ │ │ │ ├── use-css-selectors-to-style-elements.arabic.md │ │ │ │ ├── use-css-variables-to-change-several-elements-at-once.arabic.md │ │ │ │ ├── use-hex-code-for-specific-colors.arabic.md │ │ │ │ ├── use-hex-code-to-mix-colors.arabic.md │ │ │ │ ├── use-rgb-to-mix-colors.arabic.md │ │ │ │ └── use-rgb-values-to-color-elements.arabic.md │ │ │ ├── basic-html-and-html5 │ │ │ │ ├── add-a-submit-button-to-a-form.arabic.md │ │ │ │ ├── add-images-to-your-website.arabic.md │ │ │ │ ├── add-placeholder-text-to-a-text-field.arabic.md │ │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.arabic.md │ │ │ │ ├── comment-out-html.arabic.md │ │ │ │ ├── create-a-bulleted-unordered-list.arabic.md │ │ │ │ ├── create-a-form-element.arabic.md │ │ │ │ ├── create-a-set-of-checkboxes.arabic.md │ │ │ │ ├── create-a-set-of-radio-buttons.arabic.md │ │ │ │ ├── create-a-text-field.arabic.md │ │ │ │ ├── create-an-ordered-list.arabic.md │ │ │ │ ├── declare-the-doctype-of-an-html-document.arabic.md │ │ │ │ ├── define-the-head-and-body-of-an-html-document.arabic.md │ │ │ │ ├── delete-html-elements.arabic.md │ │ │ │ ├── fill-in-the-blank-with-placeholder-text.arabic.md │ │ │ │ ├── headline-with-the-h2-element.arabic.md │ │ │ │ ├── inform-with-the-paragraph-element.arabic.md │ │ │ │ ├── introduction-to-html5-elements.arabic.md │ │ │ │ ├── link-to-external-pages-with-anchor-elements.arabic.md │ │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.arabic.md │ │ │ │ ├── make-dead-links-using-the-hash-symbol.arabic.md │ │ │ │ ├── nest-an-anchor-element-within-a-paragraph.arabic.md │ │ │ │ ├── nest-many-elements-within-a-single-div-element.arabic.md │ │ │ │ ├── say-hello-to-html-elements.arabic.md │ │ │ │ ├── turn-an-image-into-a-link.arabic.md │ │ │ │ ├── uncomment-html.arabic.md │ │ │ │ └── use-html5-to-require-a-field.arabic.md │ │ │ ├── css-flexbox │ │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.arabic.md │ │ │ │ ├── align-elements-using-the-align-items-property.arabic.md │ │ │ │ ├── align-elements-using-the-justify-content-property.arabic.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.arabic.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.arabic.md │ │ │ │ ├── use-display-flex-to-position-two-boxes.arabic.md │ │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.arabic.md │ │ │ │ ├── use-the-align-self-property.arabic.md │ │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.arabic.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-column.arabic.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-row.arabic.md │ │ │ │ ├── use-the-flex-grow-property-to-expand-items.arabic.md │ │ │ │ ├── use-the-flex-shorthand-property.arabic.md │ │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.arabic.md │ │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.arabic.md │ │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.arabic.md │ │ │ │ └── use-the-order-property-to-rearrange-items.arabic.md │ │ │ ├── css-grid │ │ │ │ ├── add-columns-with-grid-template-columns.arabic.md │ │ │ │ ├── add-gaps-faster-with-grid-gap.arabic.md │ │ │ │ ├── add-rows-with-grid-template-rows.arabic.md │ │ │ │ ├── align-all-items-horizontally-using-justify-items.arabic.md │ │ │ │ ├── align-all-items-vertically-using-align-items.arabic.md │ │ │ │ ├── align-an-item-horizontally-using-justify-self.arabic.md │ │ │ │ ├── align-an-item-vertically-using-align-self.arabic.md │ │ │ │ ├── create-a-column-gap-using-grid-column-gap.arabic.md │ │ │ │ ├── create-a-row-gap-using-grid-row-gap.arabic.md │ │ │ │ ├── create-flexible-layouts-using-auto-fill.arabic.md │ │ │ │ ├── create-flexible-layouts-using-auto-fit.arabic.md │ │ │ │ ├── create-grids-within-grids.arabic.md │ │ │ │ ├── create-your-first-css-grid.arabic.md │ │ │ │ ├── divide-the-grid-into-an-area-template.arabic.md │ │ │ │ ├── limit-item-size-using-the-minmax-function.arabic.md │ │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.arabic.md │ │ │ │ ├── reduce-repetition-using-the-repeat-function.arabic.md │ │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.arabic.md │ │ │ │ ├── use-grid-area-without-creating-an-areas-template.arabic.md │ │ │ │ ├── use-grid-column-to-control-spacing.arabic.md │ │ │ │ ├── use-grid-row-to-control-spacing.arabic.md │ │ │ │ └── use-media-queries-to-create-responsive-layouts.arabic.md │ │ │ ├── responsive-web-design-principles │ │ │ │ ├── create-a-media-query.arabic.md │ │ │ │ ├── make-an-image-responsive.arabic.md │ │ │ │ ├── make-typography-responsive.arabic.md │ │ │ │ └── use-a-retina-image-for-higher-resolution-displays.arabic.md │ │ │ └── responsive-web-design-projects │ │ │ │ ├── build-a-personal-portfolio-webpage.arabic.md │ │ │ │ ├── build-a-product-landing-page.arabic.md │ │ │ │ ├── build-a-survey-form.arabic.md │ │ │ │ ├── build-a-technical-documentation-page.arabic.md │ │ │ │ └── build-a-tribute-page.arabic.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ │ ├── basic-algorithm-scripting │ │ │ │ ├── boo-who.arabic.md │ │ │ │ ├── chunky-monkey.arabic.md │ │ │ │ ├── confirm-the-ending.arabic.md │ │ │ │ ├── convert-celsius-to-fahrenheit.arabic.md │ │ │ │ ├── factorialize-a-number.arabic.md │ │ │ │ ├── falsy-bouncer.arabic.md │ │ │ │ ├── find-the-longest-word-in-a-string.arabic.md │ │ │ │ ├── finders-keepers.arabic.md │ │ │ │ ├── mutations.arabic.md │ │ │ │ ├── repeat-a-string-repeat-a-string.arabic.md │ │ │ │ ├── return-largest-numbers-in-arrays.arabic.md │ │ │ │ ├── reverse-a-string.arabic.md │ │ │ │ ├── slice-and-splice.arabic.md │ │ │ │ ├── title-case-a-sentence.arabic.md │ │ │ │ ├── truncate-a-string.arabic.md │ │ │ │ └── where-do-i-belong.arabic.md │ │ │ ├── basic-data-structures │ │ │ │ ├── access-an-arrays-contents-using-bracket-notation.arabic.md │ │ │ │ ├── access-property-names-with-bracket-notation.arabic.md │ │ │ │ ├── add-items-to-an-array-with-push-and-unshift.arabic.md │ │ │ │ ├── add-items-using-splice.arabic.md │ │ │ │ ├── add-key-value-pairs-to-javascript-objects.arabic.md │ │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.arabic.md │ │ │ │ ├── check-if-an-object-has-a-property.arabic.md │ │ │ │ ├── combine-arrays-with-the-spread-operator.arabic.md │ │ │ │ ├── copy-an-array-with-the-spread-operator.arabic.md │ │ │ │ ├── copy-array-items-using-slice.arabic.md │ │ │ │ ├── create-complex-multi-dimensional-arrays.arabic.md │ │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.arabic.md │ │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.arabic.md │ │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.arabic.md │ │ │ │ ├── modify-an-array-stored-in-an-object.arabic.md │ │ │ │ ├── modify-an-object-nested-within-an-object.arabic.md │ │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.arabic.md │ │ │ │ ├── remove-items-using-splice.arabic.md │ │ │ │ ├── use-an-array-to-store-a-collection-of-data.arabic.md │ │ │ │ └── use-the-delete-keyword-to-remove-object-properties.arabic.md │ │ │ ├── basic-javascript │ │ │ │ ├── access-array-data-with-indexes.arabic.md │ │ │ │ ├── access-multi-dimensional-arrays-with-indexes.arabic.md │ │ │ │ ├── accessing-nested-arrays.arabic.md │ │ │ │ ├── accessing-nested-objects.arabic.md │ │ │ │ ├── accessing-object-properties-with-bracket-notation.arabic.md │ │ │ │ ├── accessing-object-properties-with-dot-notation.arabic.md │ │ │ │ ├── accessing-object-properties-with-variables.arabic.md │ │ │ │ ├── add-new-properties-to-a-javascript-object.arabic.md │ │ │ │ ├── add-two-numbers-with-javascript.arabic.md │ │ │ │ ├── adding-a-default-option-in-switch-statements.arabic.md │ │ │ │ ├── appending-variables-to-strings.arabic.md │ │ │ │ ├── assignment-with-a-returned-value.arabic.md │ │ │ │ ├── build-javascript-objects.arabic.md │ │ │ │ ├── chaining-if-else-statements.arabic.md │ │ │ │ ├── comment-your-javascript-code.arabic.md │ │ │ │ ├── comparison-with-the-equality-operator.arabic.md │ │ │ │ ├── comparison-with-the-greater-than-operator.arabic.md │ │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.arabic.md │ │ │ │ ├── comparison-with-the-inequality-operator.arabic.md │ │ │ │ ├── comparison-with-the-less-than-operator.arabic.md │ │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.arabic.md │ │ │ │ ├── comparison-with-the-strict-equality-operator.arabic.md │ │ │ │ ├── comparison-with-the-strict-inequality-operator.arabic.md │ │ │ │ ├── comparisons-with-the-logical-and-operator.arabic.md │ │ │ │ ├── comparisons-with-the-logical-or-operator.arabic.md │ │ │ │ ├── compound-assignment-with-augmented-addition.arabic.md │ │ │ │ ├── compound-assignment-with-augmented-division.arabic.md │ │ │ │ ├── compound-assignment-with-augmented-multiplication.arabic.md │ │ │ │ ├── compound-assignment-with-augmented-subtraction.arabic.md │ │ │ │ ├── concatenating-strings-with-plus-operator.arabic.md │ │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.arabic.md │ │ │ │ ├── constructing-strings-with-variables.arabic.md │ │ │ │ ├── count-backwards-with-a-for-loop.arabic.md │ │ │ │ ├── counting-cards.arabic.md │ │ │ │ ├── create-decimal-numbers-with-javascript.arabic.md │ │ │ │ ├── declare-javascript-variables.arabic.md │ │ │ │ ├── declare-string-variables.arabic.md │ │ │ │ ├── decrement-a-number-with-javascript.arabic.md │ │ │ │ ├── delete-properties-from-a-javascript-object.arabic.md │ │ │ │ ├── divide-one-decimal-by-another-with-javascript.arabic.md │ │ │ │ ├── divide-one-number-by-another-with-javascript.arabic.md │ │ │ │ ├── escape-sequences-in-strings.arabic.md │ │ │ │ ├── escaping-literal-quotes-in-strings.arabic.md │ │ │ │ ├── find-the-length-of-a-string.arabic.md │ │ │ │ ├── finding-a-remainder-in-javascript.arabic.md │ │ │ │ ├── generate-random-fractions-with-javascript.arabic.md │ │ │ │ ├── generate-random-whole-numbers-with-javascript.arabic.md │ │ │ │ ├── generate-random-whole-numbers-within-a-range.arabic.md │ │ │ │ ├── global-scope-and-functions.arabic.md │ │ │ │ ├── global-vs.-local-scope-in-functions.arabic.md │ │ │ │ ├── golf-code.arabic.md │ │ │ │ ├── increment-a-number-with-javascript.arabic.md │ │ │ │ ├── initializing-variables-with-the-assignment-operator.arabic.md │ │ │ │ ├── introducing-else-if-statements.arabic.md │ │ │ │ ├── introducing-else-statements.arabic.md │ │ │ │ ├── iterate-odd-numbers-with-a-for-loop.arabic.md │ │ │ │ ├── iterate-through-an-array-with-a-for-loop.arabic.md │ │ │ │ ├── iterate-with-javascript-do...while-loops.arabic.md │ │ │ │ ├── iterate-with-javascript-for-loops.arabic.md │ │ │ │ ├── iterate-with-javascript-while-loops.arabic.md │ │ │ │ ├── local-scope-and-functions.arabic.md │ │ │ │ ├── logical-order-in-if-else-statements.arabic.md │ │ │ │ ├── manipulate-arrays-with-pop.arabic.md │ │ │ │ ├── manipulate-arrays-with-push.arabic.md │ │ │ │ ├── manipulate-arrays-with-shift.arabic.md │ │ │ │ ├── manipulate-arrays-with-unshift.arabic.md │ │ │ │ ├── manipulating-complex-objects.arabic.md │ │ │ │ ├── modify-array-data-with-indexes.arabic.md │ │ │ │ ├── multiple-identical-options-in-switch-statements.arabic.md │ │ │ │ ├── multiply-two-decimals-with-javascript.arabic.md │ │ │ │ ├── multiply-two-numbers-with-javascript.arabic.md │ │ │ │ ├── nest-one-array-within-another-array.arabic.md │ │ │ │ ├── nesting-for-loops.arabic.md │ │ │ │ ├── passing-values-to-functions-with-arguments.arabic.md │ │ │ │ ├── practice-comparing-different-values.arabic.md │ │ │ │ ├── profile-lookup.arabic.md │ │ │ │ ├── quoting-strings-with-single-quotes.arabic.md │ │ │ │ ├── record-collection.arabic.md │ │ │ │ ├── replacing-if-else-chains-with-switch.arabic.md │ │ │ │ ├── return-a-value-from-a-function-with-return.arabic.md │ │ │ │ ├── return-early-pattern-for-functions.arabic.md │ │ │ │ ├── returning-boolean-values-from-functions.arabic.md │ │ │ │ ├── selecting-from-many-options-with-switch-statements.arabic.md │ │ │ │ ├── shopping-list.arabic.md │ │ │ │ ├── stand-in-line.arabic.md │ │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.arabic.md │ │ │ │ ├── storing-values-with-the-assignment-operator.arabic.md │ │ │ │ ├── subtract-one-number-from-another-with-javascript.arabic.md │ │ │ │ ├── testing-objects-for-properties.arabic.md │ │ │ │ ├── understand-string-immutability.arabic.md │ │ │ │ ├── understanding-boolean-values.arabic.md │ │ │ │ ├── understanding-case-sensitivity-in-variables.arabic.md │ │ │ │ ├── understanding-undefined-value-returned-from-a-function.arabic.md │ │ │ │ ├── understanding-uninitialized-variables.arabic.md │ │ │ │ ├── updating-object-properties.arabic.md │ │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.arabic.md │ │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.arabic.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.arabic.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.arabic.md │ │ │ │ ├── use-conditional-logic-with-if-statements.arabic.md │ │ │ │ ├── use-multiple-conditional-ternary-operators.arabic.md │ │ │ │ ├── use-the-conditional-ternary-operator.arabic.md │ │ │ │ ├── use-the-parseint-function-with-a-radix.arabic.md │ │ │ │ ├── use-the-parseint-function.arabic.md │ │ │ │ ├── using-objects-for-lookups.arabic.md │ │ │ │ ├── word-blanks.arabic.md │ │ │ │ └── write-reusable-javascript-with-functions.arabic.md │ │ │ ├── debugging │ │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.arabic.md │ │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.arabic.md │ │ │ │ ├── catch-misspelled-variable-and-function-names.arabic.md │ │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.arabic.md │ │ │ │ ├── catch-off-by-one-errors-when-using-indexing.arabic.md │ │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.arabic.md │ │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.arabic.md │ │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.arabic.md │ │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.arabic.md │ │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.arabic.md │ │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.arabic.md │ │ │ │ └── use-typeof-to-check-the-type-of-a-variable.arabic.md │ │ │ ├── es6 │ │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.arabic.md │ │ │ │ ├── create-an-export-fallback-with-export-default.arabic.md │ │ │ │ ├── create-strings-using-template-literals.arabic.md │ │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.arabic.md │ │ │ │ ├── explore-differences-between-the-var-and-let-keywords.arabic.md │ │ │ │ ├── import-a-default-export.arabic.md │ │ │ │ ├── mutate-an-array-declared-with-const.arabic.md │ │ │ │ ├── prevent-object-mutation.arabic.md │ │ │ │ ├── set-default-parameters-for-your-functions.arabic.md │ │ │ │ ├── understand-the-differences-between-import-and-require.arabic.md │ │ │ │ ├── use--to-import-everything-from-a-file.arabic.md │ │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.arabic.md │ │ │ │ ├── use-class-syntax-to-define-a-constructor-function.arabic.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.arabic.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.arabic.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.arabic.md │ │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.arabic.md │ │ │ │ ├── use-destructuring-assignment-with-the-rest-operator-to-reassign-array-elements.arabic.md │ │ │ │ ├── use-export-to-reuse-a-code-block.arabic.md │ │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.arabic.md │ │ │ │ ├── use-the-rest-operator-with-function-parameters.arabic.md │ │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.arabic.md │ │ │ │ ├── write-arrow-functions-with-parameters.arabic.md │ │ │ │ ├── write-concise-declarative-functions-with-es6.arabic.md │ │ │ │ ├── write-concise-object-literal-declarations-using-simple-fields.arabic.md │ │ │ │ └── write-higher-order-arrow-functions.arabic.md │ │ │ ├── functional-programming │ │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.arabic.md │ │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.arabic.md │ │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.arabic.md │ │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.arabic.md │ │ │ │ ├── combine-two-arrays-using-the-concat-method.arabic.md │ │ │ │ ├── implement-map-on-a-prototype.arabic.md │ │ │ │ ├── implement-the-filter-method-on-a-prototype.arabic.md │ │ │ │ ├── introduction-to-currying-and-partial-application.arabic.md │ │ │ │ ├── learn-about-functional-programming.arabic.md │ │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.arabic.md │ │ │ │ ├── refactor-global-variables-out-of-functions.arabic.md │ │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.arabic.md │ │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.arabic.md │ │ │ │ ├── return-part-of-an-array-using-the-slice-method.arabic.md │ │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.arabic.md │ │ │ │ ├── split-a-string-into-an-array-using-the-split-method.arabic.md │ │ │ │ ├── understand-functional-programming-terminology.arabic.md │ │ │ │ ├── understand-the-hazards-of-using-imperative-code.arabic.md │ │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.arabic.md │ │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.arabic.md │ │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.arabic.md │ │ │ │ ├── use-the-reduce-method-to-analyze-data.arabic.md │ │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.arabic.md │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ ├── arguments-optional.arabic.md │ │ │ │ ├── binary-agents.arabic.md │ │ │ │ ├── convert-html-entities.arabic.md │ │ │ │ ├── diff-two-arrays.arabic.md │ │ │ │ ├── dna-pairing.arabic.md │ │ │ │ ├── drop-it.arabic.md │ │ │ │ ├── everything-be-true.arabic.md │ │ │ │ ├── make-a-person.arabic.md │ │ │ │ ├── map-the-debris.arabic.md │ │ │ │ ├── missing-letters.arabic.md │ │ │ │ ├── pig-latin.arabic.md │ │ │ │ ├── search-and-replace.arabic.md │ │ │ │ ├── seek-and-destroy.arabic.md │ │ │ │ ├── smallest-common-multiple.arabic.md │ │ │ │ ├── sorted-union.arabic.md │ │ │ │ ├── spinal-tap-case.arabic.md │ │ │ │ ├── steamroller.arabic.md │ │ │ │ ├── sum-all-numbers-in-a-range.arabic.md │ │ │ │ ├── sum-all-odd-fibonacci-numbers.arabic.md │ │ │ │ ├── sum-all-primes.arabic.md │ │ │ │ └── wherefore-art-thou.arabic.md │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ ├── caesars-cipher.arabic.md │ │ │ │ ├── cash-register.arabic.md │ │ │ │ ├── palindrome-checker.arabic.md │ │ │ │ ├── roman-numeral-converter.arabic.md │ │ │ │ └── telephone-number-validator.arabic.md │ │ │ ├── object-oriented-programming │ │ │ │ ├── add-methods-after-inheritance.arabic.md │ │ │ │ ├── change-the-prototype-to-a-new-object.arabic.md │ │ │ │ ├── create-a-basic-javascript-object.arabic.md │ │ │ │ ├── create-a-method-on-an-object.arabic.md │ │ │ │ ├── define-a-constructor-function.arabic.md │ │ │ │ ├── extend-constructors-to-receive-arguments.arabic.md │ │ │ │ ├── inherit-behaviors-from-a-supertype.arabic.md │ │ │ │ ├── iterate-over-all-properties.arabic.md │ │ │ │ ├── make-code-more-reusable-with-the-this-keyword.arabic.md │ │ │ │ ├── override-inherited-methods.arabic.md │ │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.arabic.md │ │ │ │ ├── reset-an-inherited-constructor-property.arabic.md │ │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.arabic.md │ │ │ │ ├── understand-own-properties.arabic.md │ │ │ │ ├── understand-the-constructor-property.arabic.md │ │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.arabic.md │ │ │ │ ├── understand-the-prototype-chain.arabic.md │ │ │ │ ├── understand-where-an-objects-prototype-comes-from.arabic.md │ │ │ │ ├── use-a-constructor-to-create-objects.arabic.md │ │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.arabic.md │ │ │ │ ├── use-an-iife-to-create-a-module.arabic.md │ │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.arabic.md │ │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.arabic.md │ │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.arabic.md │ │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.arabic.md │ │ │ │ └── verify-an-objects-constructor-with-instanceof.arabic.md │ │ │ └── regular-expressions │ │ │ │ ├── check-for-all-or-none.arabic.md │ │ │ │ ├── extract-matches.arabic.md │ │ │ │ ├── find-characters-with-lazy-matching.arabic.md │ │ │ │ ├── find-more-than-the-first-match.arabic.md │ │ │ │ ├── find-one-or-more-criminals-in-a-hunt.arabic.md │ │ │ │ ├── ignore-case-while-matching.arabic.md │ │ │ │ ├── match-a-literal-string-with-different-possibilities.arabic.md │ │ │ │ ├── match-all-letters-and-numbers.arabic.md │ │ │ │ ├── match-all-non-numbers.arabic.md │ │ │ │ ├── match-all-numbers.arabic.md │ │ │ │ ├── match-anything-with-wildcard-period.arabic.md │ │ │ │ ├── match-beginning-string-patterns.arabic.md │ │ │ │ ├── match-characters-that-occur-one-or-more-times.arabic.md │ │ │ │ ├── match-characters-that-occur-zero-or-more-times.arabic.md │ │ │ │ ├── match-ending-string-patterns.arabic.md │ │ │ │ ├── match-everything-but-letters-and-numbers.arabic.md │ │ │ │ ├── match-letters-of-the-alphabet.arabic.md │ │ │ │ ├── match-literal-strings.arabic.md │ │ │ │ ├── match-non-whitespace-characters.arabic.md │ │ │ │ ├── match-numbers-and-letters-of-the-alphabet.arabic.md │ │ │ │ ├── match-single-character-with-multiple-possibilities.arabic.md │ │ │ │ ├── match-single-characters-not-specified.arabic.md │ │ │ │ ├── match-whitespace.arabic.md │ │ │ │ ├── positive-and-negative-lookahead.arabic.md │ │ │ │ ├── remove-whitespace-from-start-and-end.arabic.md │ │ │ │ ├── restrict-possible-usernames.arabic.md │ │ │ │ ├── reuse-patterns-using-capture-groups.arabic.md │ │ │ │ ├── specify-exact-number-of-matches.arabic.md │ │ │ │ ├── specify-only-the-lower-number-of-matches.arabic.md │ │ │ │ ├── specify-upper-and-lower-number-of-matches.arabic.md │ │ │ │ ├── use-capture-groups-to-search-and-replace.arabic.md │ │ │ │ └── using-the-test-method.arabic.md │ │ ├── 03-front-end-libraries │ │ │ ├── bootstrap │ │ │ │ ├── add-elements-within-your-bootstrap-wells.arabic.md │ │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.arabic.md │ │ │ │ ├── add-font-awesome-icons-to-our-buttons.arabic.md │ │ │ │ ├── add-id-attributes-to-bootstrap-elements.arabic.md │ │ │ │ ├── apply-the-default-bootstrap-button-style.arabic.md │ │ │ │ ├── call-out-optional-actions-with-btn-info.arabic.md │ │ │ │ ├── center-text-with-bootstrap.arabic.md │ │ │ │ ├── create-a-block-element-bootstrap-button.arabic.md │ │ │ │ ├── create-a-bootstrap-button.arabic.md │ │ │ │ ├── create-a-bootstrap-headline.arabic.md │ │ │ │ ├── create-a-bootstrap-row.arabic.md │ │ │ │ ├── create-a-class-to-target-with-jquery-selectors.arabic.md │ │ │ │ ├── create-a-custom-heading.arabic.md │ │ │ │ ├── create-bootstrap-wells.arabic.md │ │ │ │ ├── ditch-custom-css-for-bootstrap.arabic.md │ │ │ │ ├── give-each-element-a-unique-id.arabic.md │ │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.arabic.md │ │ │ │ ├── label-bootstrap-buttons.arabic.md │ │ │ │ ├── label-bootstrap-wells.arabic.md │ │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.arabic.md │ │ │ │ ├── make-images-mobile-responsive.arabic.md │ │ │ │ ├── responsively-style-checkboxes.arabic.md │ │ │ │ ├── responsively-style-radio-buttons.arabic.md │ │ │ │ ├── split-your-bootstrap-row.arabic.md │ │ │ │ ├── style-text-inputs-as-form-controls.arabic.md │ │ │ │ ├── taste-the-bootstrap-button-color-rainbow.arabic.md │ │ │ │ ├── use-a-span-to-target-inline-elements.arabic.md │ │ │ │ ├── use-comments-to-clarify-code.arabic.md │ │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.arabic.md │ │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.arabic.md │ │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.arabic.md │ │ │ ├── front-end-libraries-projects │ │ │ │ ├── build-a-drum-machine.arabic.md │ │ │ │ ├── build-a-javascript-calculator.arabic.md │ │ │ │ ├── build-a-markdown-previewer.arabic.md │ │ │ │ ├── build-a-pomodoro-clock.arabic.md │ │ │ │ └── build-a-random-quote-machine.arabic.md │ │ │ ├── jquery │ │ │ │ ├── change-text-inside-an-element-using-jquery.arabic.md │ │ │ │ ├── change-the-css-of-an-element-using-jquery.arabic.md │ │ │ │ ├── clone-an-element-using-jquery.arabic.md │ │ │ │ ├── delete-your-jquery-functions.arabic.md │ │ │ │ ├── disable-an-element-using-jquery.arabic.md │ │ │ │ ├── learn-how-script-tags-and-document-ready-work.arabic.md │ │ │ │ ├── remove-an-element-using-jquery.arabic.md │ │ │ │ ├── remove-classes-from-an-element-with-jquery.arabic.md │ │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.arabic.md │ │ │ │ ├── target-elements-by-class-using-jquery.arabic.md │ │ │ │ ├── target-elements-by-id-using-jquery.arabic.md │ │ │ │ ├── target-even-elements-using-jquery.arabic.md │ │ │ │ ├── target-html-elements-with-selectors-using-jquery.arabic.md │ │ │ │ ├── target-the-children-of-an-element-using-jquery.arabic.md │ │ │ │ ├── target-the-parent-of-an-element-using-jquery.arabic.md │ │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.arabic.md │ │ │ │ ├── use-appendto-to-move-elements-with-jquery.arabic.md │ │ │ │ └── use-jquery-to-modify-the-entire-page.arabic.md │ │ │ ├── react-and-redux │ │ │ │ ├── connect-redux-to-react.arabic.md │ │ │ │ ├── connect-redux-to-the-messages-app.arabic.md │ │ │ │ ├── extract-local-state-into-redux.arabic.md │ │ │ │ ├── extract-state-logic-to-redux.arabic.md │ │ │ │ ├── getting-started-with-react-redux.arabic.md │ │ │ │ ├── manage-state-locally-first.arabic.md │ │ │ │ ├── map-dispatch-to-props.arabic.md │ │ │ │ ├── map-state-to-props.arabic.md │ │ │ │ ├── moving-forward-from-here.arabic.md │ │ │ │ └── use-provider-to-connect-redux-to-react.arabic.md │ │ │ ├── react │ │ │ │ ├── access-props-using-this.props.arabic.md │ │ │ │ ├── add-comments-in-jsx.arabic.md │ │ │ │ ├── add-event-listeners.arabic.md │ │ │ │ ├── add-inline-styles-in-react.arabic.md │ │ │ │ ├── bind-this-to-a-class-method.arabic.md │ │ │ │ ├── change-inline-css-conditionally-based-on-component-state.arabic.md │ │ │ │ ├── compose-react-components.arabic.md │ │ │ │ ├── create-a-complex-jsx-element.arabic.md │ │ │ │ ├── create-a-component-with-composition.arabic.md │ │ │ │ ├── create-a-controlled-form.arabic.md │ │ │ │ ├── create-a-controlled-input.arabic.md │ │ │ │ ├── create-a-react-component.arabic.md │ │ │ │ ├── create-a-simple-jsx-element.arabic.md │ │ │ │ ├── create-a-stateful-component.arabic.md │ │ │ │ ├── create-a-stateless-functional-component.arabic.md │ │ │ │ ├── define-an-html-class-in-jsx.arabic.md │ │ │ │ ├── give-sibling-elements-a-unique-key-attribute.arabic.md │ │ │ │ ├── introducing-inline-styles.arabic.md │ │ │ │ ├── learn-about-self-closing-jsx-tags.arabic.md │ │ │ │ ├── manage-updates-with-lifecycle-methods.arabic.md │ │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.arabic.md │ │ │ │ ├── override-default-props.arabic.md │ │ │ │ ├── pass-a-callback-as-props.arabic.md │ │ │ │ ├── pass-an-array-as-props.arabic.md │ │ │ │ ├── pass-props-to-a-stateless-functional-component.arabic.md │ │ │ │ ├── pass-state-as-props-to-child-components.arabic.md │ │ │ │ ├── render-a-class-component-to-the-dom.arabic.md │ │ │ │ ├── render-conditionally-from-props.arabic.md │ │ │ │ ├── render-html-elements-to-the-dom.arabic.md │ │ │ │ ├── render-react-on-the-server-with-rendertostring.arabic.md │ │ │ │ ├── render-state-in-the-user-interface-another-way.arabic.md │ │ │ │ ├── render-state-in-the-user-interface.arabic.md │ │ │ │ ├── render-with-an-if-else-condition.arabic.md │ │ │ │ ├── review-using-props-with-stateless-functional-components.arabic.md │ │ │ │ ├── set-state-with-this.setstate.arabic.md │ │ │ │ ├── use--for-a-more-concise-conditional.arabic.md │ │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.arabic.md │ │ │ │ ├── use-advanced-javascript-in-react-render-method.arabic.md │ │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.arabic.md │ │ │ │ ├── use-array.map-to-dynamically-render-elements.arabic.md │ │ │ │ ├── use-default-props.arabic.md │ │ │ │ ├── use-proptypes-to-define-the-props-you-expect.arabic.md │ │ │ │ ├── use-react-to-render-nested-components.arabic.md │ │ │ │ ├── use-state-to-toggle-an-element.arabic.md │ │ │ │ ├── use-the-lifecycle-method-componentdidmount.arabic.md │ │ │ │ ├── use-the-lifecycle-method-componentwillmount.arabic.md │ │ │ │ ├── write-a-react-component-from-scratch.arabic.md │ │ │ │ └── write-a-simple-counter.arabic.md │ │ │ ├── redux │ │ │ │ ├── combine-multiple-reducers.arabic.md │ │ │ │ ├── copy-an-object-with-object.assign.arabic.md │ │ │ │ ├── create-a-redux-store.arabic.md │ │ │ │ ├── define-a-redux-action.arabic.md │ │ │ │ ├── define-an-action-creator.arabic.md │ │ │ │ ├── dispatch-an-action-event.arabic.md │ │ │ │ ├── get-state-from-the-redux-store.arabic.md │ │ │ │ ├── handle-an-action-in-the-store.arabic.md │ │ │ │ ├── never-mutate-state.arabic.md │ │ │ │ ├── register-a-store-listener.arabic.md │ │ │ │ ├── remove-an-item-from-an-array.arabic.md │ │ │ │ ├── send-action-data-to-the-store.arabic.md │ │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.arabic.md │ │ │ │ ├── use-const-for-action-types.arabic.md │ │ │ │ ├── use-middleware-to-handle-asynchronous-actions.arabic.md │ │ │ │ ├── use-the-spread-operator-on-arrays.arabic.md │ │ │ │ └── write-a-counter-with-redux.arabic.md │ │ │ └── sass │ │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.arabic.md │ │ │ │ ├── create-reusable-css-with-mixins.arabic.md │ │ │ │ ├── extend-one-set-of-css-styles-to-another-element.arabic.md │ │ │ │ ├── nest-css-with-sass.arabic.md │ │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.arabic.md │ │ │ │ ├── store-data-with-sass-variables.arabic.md │ │ │ │ ├── use-each-to-map-over-items-in-a-list.arabic.md │ │ │ │ ├── use-for-to-create-a-sass-loop.arabic.md │ │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.arabic.md │ │ ├── 04-data-visualization │ │ │ ├── data-visualization-projects │ │ │ │ ├── visualize-data-with-a-bar-chart.arabic.md │ │ │ │ ├── visualize-data-with-a-choropleth-map.arabic.md │ │ │ │ ├── visualize-data-with-a-heat-map.arabic.md │ │ │ │ ├── visualize-data-with-a-scatterplot-graph.arabic.md │ │ │ │ └── visualize-data-with-a-treemap-diagram.arabic.md │ │ │ ├── data-visualization-with-d3 │ │ │ │ ├── add-a-hover-effect-to-a-d3-element.arabic.md │ │ │ │ ├── add-a-tooltip-to-a-d3-element.arabic.md │ │ │ │ ├── add-attributes-to-the-circle-elements.arabic.md │ │ │ │ ├── add-axes-to-a-visualization.arabic.md │ │ │ │ ├── add-classes-with-d3.arabic.md │ │ │ │ ├── add-document-elements-with-d3.arabic.md │ │ │ │ ├── add-inline-styling-to-elements.arabic.md │ │ │ │ ├── add-labels-to-d3-elements.arabic.md │ │ │ │ ├── add-labels-to-scatter-plot-circles.arabic.md │ │ │ │ ├── change-styles-based-on-data.arabic.md │ │ │ │ ├── change-the-color-of-an-svg-element.arabic.md │ │ │ │ ├── change-the-presentation-of-a-bar-chart.arabic.md │ │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.arabic.md │ │ │ │ ├── create-a-linear-scale-with-d3.arabic.md │ │ │ │ ├── create-a-scatterplot-with-svg-circles.arabic.md │ │ │ │ ├── display-shapes-with-svg.arabic.md │ │ │ │ ├── dynamically-change-the-height-of-each-bar.arabic.md │ │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.arabic.md │ │ │ │ ├── invert-svg-elements.arabic.md │ │ │ │ ├── learn-about-svg-in-d3.arabic.md │ │ │ │ ├── select-a-group-of-elements-with-d3.arabic.md │ │ │ │ ├── set-a-domain-and-a-range-on-a-scale.arabic.md │ │ │ │ ├── style-d3-labels.arabic.md │ │ │ │ ├── update-the-height-of-an-element-dynamically.arabic.md │ │ │ │ ├── use-a-pre-defined-scale-to-place-elements.arabic.md │ │ │ │ ├── use-dynamic-scales.arabic.md │ │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.arabic.md │ │ │ │ ├── work-with-data-in-d3.arabic.md │ │ │ │ └── work-with-dynamic-data-in-d3.arabic.md │ │ │ └── json-apis-and-ajax │ │ │ │ ├── access-the-json-data-from-an-api.arabic.md │ │ │ │ ├── change-text-with-click-events.arabic.md │ │ │ │ ├── convert-json-data-to-html.arabic.md │ │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.arabic.md │ │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.arabic.md │ │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.arabic.md │ │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.arabic.md │ │ │ │ ├── pre-filter-json-to-get-the-data-you-need.arabic.md │ │ │ │ └── render-images-from-data-sources.arabic.md │ │ ├── 05-apis-and-microservices │ │ │ ├── apis-and-microservices-projects │ │ │ │ ├── exercise-tracker.arabic.md │ │ │ │ ├── file-metadata-microservice.arabic.md │ │ │ │ ├── request-header-parser-microservice.arabic.md │ │ │ │ ├── timestamp-microservice.arabic.md │ │ │ │ └── url-shortener-microservice.arabic.md │ │ │ ├── basic-node-and-express │ │ │ │ ├── chain-middleware-to-create-a-time-server.arabic.md │ │ │ │ ├── get-data-from-post-requsts.arabic.md │ │ │ │ ├── get-query-parameter-input-from-the-client.arabic.md │ │ │ │ ├── get-route-parameter-input-from-the-client.arabic.md │ │ │ │ ├── implement-a-root-level-request-logger-middleware.arabic.md │ │ │ │ ├── meet-the-node-console.arabic.md │ │ │ │ ├── serve-an-html-file.arabic.md │ │ │ │ ├── serve-json-on-a-specific-route.arabic.md │ │ │ │ ├── serve-static-assets.arabic.md │ │ │ │ ├── start-a-working-express-server.arabic.md │ │ │ │ ├── use-body-parser-to-parse-post-requests.arabic.md │ │ │ │ └── use-the-.env-file.arabic.md │ │ │ ├── managing-packages-with-npm │ │ │ │ ├── add-a-description-to-your-package.json.arabic.md │ │ │ │ ├── add-a-license-to-your-package.json.arabic.md │ │ │ │ ├── add-a-version-to-your-package.json.arabic.md │ │ │ │ ├── add-keywords-to-your-package.json.arabic.md │ │ │ │ ├── expand-your-project-with-external-packages-from-npm.arabic.md │ │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.arabic.md │ │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.arabic.md │ │ │ │ ├── remove-a-package-from-your-dependencies.arabic.md │ │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.arabic.md │ │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.arabic.md │ │ │ └── mongodb-and-mongoose │ │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.arabic.md │ │ │ │ ├── create-a-model.arabic.md │ │ │ │ ├── create-and-save-a-record-of-a-model.arabic.md │ │ │ │ ├── create-many-records-with-model.create.arabic.md │ │ │ │ ├── delete-many-documents-with-model.remove.arabic.md │ │ │ │ ├── delete-one-document-using-model.findbyidandremove.arabic.md │ │ │ │ ├── install-and-set-up-mongoose.arabic.md │ │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.arabic.md │ │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.arabic.md │ │ │ │ ├── use-model.find-to-search-your-dataarabic.md │ │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.arabic.md │ │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.arabic.md │ │ ├── 06-information-security-and-quality-assurance │ │ │ ├── advanced-node-and-express │ │ │ │ ├── announce-new-users.arabic.md │ │ │ │ ├── authentication-strategies.arabic.md │ │ │ │ ├── authentication-with-socket.io.arabic.md │ │ │ │ ├── clean-up-your-project-with-modules.arabic.md │ │ │ │ ├── communicate-by-emitting.arabic.md │ │ │ │ ├── create-new-middleware.arabic.md │ │ │ │ ├── handle-a-disconnect.arabic.md │ │ │ │ ├── hashing-your-passwords.arabic.md │ │ │ │ ├── how-to-put-a-profile-together.arabic.md │ │ │ │ ├── how-to-use-passport-strategies.arabic.md │ │ │ │ ├── implement-the-serialization-of-a-passport-user.arabic.md │ │ │ │ ├── implementation-of-social-authentication-ii.arabic.md │ │ │ │ ├── implementation-of-social-authentication-iii.arabic.md │ │ │ │ ├── implementation-of-social-authentication.arabic.md │ │ │ │ ├── logging-a-user-out.arabic.md │ │ │ │ ├── registration-of-new-users.arabic.md │ │ │ │ ├── send-and-display-chat-messages.arabic.md │ │ │ │ ├── serialization-of-a-user-object.arabic.md │ │ │ │ ├── set-up-a-template-engine.arabic.md │ │ │ │ ├── set-up-passport.arabic.md │ │ │ │ ├── set-up-the-environment.arabic.md │ │ │ │ └── use-a-template-engines-powers.arabic.md │ │ │ ├── information-security-and-quality-assurance-projects │ │ │ │ ├── anonymous-message-board.arabic.md │ │ │ │ ├── issue-tracker.arabic.md │ │ │ │ ├── metric-imperial-converter.arabic.md │ │ │ │ ├── personal-library.arabic.md │ │ │ │ └── stock-price-checker.arabic.md │ │ │ ├── information-security-with-helmetjs │ │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.arabic.md │ │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.arabic.md │ │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.arabic.md │ │ │ │ ├── disable-client-side-caching-with-helmet.nocache.arabic.md │ │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.arabic.md │ │ │ │ ├── hash-and-compare-passwords-asynchronously.arabic.md │ │ │ │ ├── hash-and-compare-passwords-synchronously.arabic.md │ │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.arabic.md │ │ │ │ ├── install-and-require-helmet.arabic.md │ │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.arabic.md │ │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.arabic.md │ │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.arabic.md │ │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.arabic.md │ │ │ │ └── understand-bcrypt-hashes.arabic.md │ │ │ └── quality-assurance-and-testing-with-chai │ │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.arabic.md │ │ │ │ ├── compare-the-properties-of-two-elements.arabic.md │ │ │ │ ├── learn-how-javascript-assertions-work.arabic.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.arabic.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.arabic.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.arabic.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.arabic.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.arabic.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser.arabic.md │ │ │ │ ├── test-for-truthiness.arabic.md │ │ │ │ ├── test-if-a-string-contains-a-substring.arabic.md │ │ │ │ ├── test-if-a-value-falls-within-a-specific-range.arabic.md │ │ │ │ ├── test-if-a-value-is-a-string.arabic.md │ │ │ │ ├── test-if-a-value-is-an-array.arabic.md │ │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.arabic.md │ │ │ │ ├── test-if-a-variable-or-function-is-defined.arabic.md │ │ │ │ ├── test-if-an-array-contains-an-item.arabic.md │ │ │ │ ├── test-if-an-object-has-a-property.arabic.md │ │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.arabic.md │ │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.arabic.md │ │ │ │ ├── use-assert.isok-and-assert.isnotok.arabic.md │ │ │ │ ├── use-regular-expressions-to-test-a-string.arabic.md │ │ │ │ ├── use-the-double-equals-to-assert-equality.arabic.md │ │ │ │ └── use-the-triple-equals-to-assert-strict-equality.arabic.md │ │ ├── 08-coding-interview-prep │ │ │ ├── algorithms │ │ │ │ ├── find-the-symmetric-difference.arabic.md │ │ │ │ ├── implement-bubble-sort.arabic.md │ │ │ │ ├── implement-insertion-sort.arabic.md │ │ │ │ ├── implement-merge-sort.arabic.md │ │ │ │ ├── implement-quick-sort.arabic.md │ │ │ │ ├── implement-selection-sort.arabic.md │ │ │ │ ├── inventory-update.arabic.md │ │ │ │ ├── no-repeats-please.arabic.md │ │ │ │ └── pairwise.arabic.md │ │ │ ├── data-structures │ │ │ │ ├── add-a-new-element-to-a-binary-search-tree.arabic.md │ │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.arabic.md │ │ │ │ ├── adjacency-list.arabic.md │ │ │ │ ├── adjacency-matrix.arabic.md │ │ │ │ ├── breadth-first-search.arabic.md │ │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.arabic.md │ │ │ │ ├── create-a-circular-queue.arabic.md │ │ │ │ ├── create-a-doubly-linked-list.arabic.md │ │ │ │ ├── create-a-hash-table.arabic.md │ │ │ │ ├── create-a-linked-list-class.arabic.md │ │ │ │ ├── create-a-map-data-structure.arabic.md │ │ │ │ ├── create-a-priority-queue-class.arabic.md │ │ │ │ ├── create-a-queue-class.arabic.md │ │ │ │ ├── create-a-set-class.arabic.md │ │ │ │ ├── create-a-stack-class.arabic.md │ │ │ │ ├── create-a-trie-search-tree.arabic.md │ │ │ │ ├── create-an-es6-javascript-map.arabic.md │ │ │ │ ├── create-and-add-to-sets-in-es6.arabic.md │ │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.arabic.md │ │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.arabic.md │ │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.arabic.md │ │ │ │ ├── depth-first-search.arabic.md │ │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.arabic.md │ │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.arabic.md │ │ │ │ ├── implement-heap-sort-with-a-min-heap.arabic.md │ │ │ │ ├── incidence-matrix.arabic.md │ │ │ │ ├── insert-an-element-into-a-max-heap.arabic.md │ │ │ │ ├── invert-a-binary-tree.arabic.md │ │ │ │ ├── learn-how-a-stack-works.arabic.md │ │ │ │ ├── perform-a-difference-on-two-sets-of-data.arabic.md │ │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.arabic.md │ │ │ │ ├── perform-a-union-on-two-sets.arabic.md │ │ │ │ ├── perform-an-intersection-on-two-sets-of-data.arabic.md │ │ │ │ ├── remove-an-element-from-a-max-heap.arabic.md │ │ │ │ ├── remove-elements-from-a-linked-list-by-index.arabic.md │ │ │ │ ├── remove-elements-from-a-linked-list.arabic.md │ │ │ │ ├── remove-from-a-set.arabic.md │ │ │ │ ├── remove-items-from-a-set-in-es6.arabic.md │ │ │ │ ├── reverse-a-doubly-linked-list.arabic.md │ │ │ │ ├── search-within-a-linked-list.arabic.md │ │ │ │ ├── size-of-the-set.arabic.md │ │ │ │ ├── typed-arrays.arabic.md │ │ │ │ ├── use-.has-and-.size-on-an-es6-set.arabic.md │ │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.arabic.md │ │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.arabic.md │ │ │ │ ├── use-spread-and-notes-for-es5-set-integration.arabic.md │ │ │ │ └── work-with-nodes-in-a-linked-list.arabic.md │ │ │ ├── project-euler │ │ │ │ ├── problem-1-multiples-of-3-and-5.arabic.md │ │ │ │ ├── problem-10-summation-of-primes.arabic.md │ │ │ │ ├── problem-100-arranged-probability.arabic.md │ │ │ │ ├── problem-101-optimum-polynomial.arabic.md │ │ │ │ ├── problem-102-triangle-containment.arabic.md │ │ │ │ ├── problem-103-special-subset-sums-optimum.arabic.md │ │ │ │ ├── problem-104-pandigital-fibonacci-ends.arabic.md │ │ │ │ ├── problem-105-special-subset-sums-testing.arabic.md │ │ │ │ ├── problem-106-special-subset-sums-meta-testing.arabic.md │ │ │ │ ├── problem-107-minimal-network.arabic.md │ │ │ │ ├── problem-108-diophantine-reciprocals-i.arabic.md │ │ │ │ ├── problem-109-darts.arabic.md │ │ │ │ ├── problem-11-largest-product-in-a-grid.arabic.md │ │ │ │ ├── problem-110-diophantine-reciprocals-ii.arabic.md │ │ │ │ ├── problem-111-primes-with-runs.arabic.md │ │ │ │ ├── problem-112-bouncy-numbers.arabic.md │ │ │ │ ├── problem-113-non-bouncy-numbers.arabic.md │ │ │ │ ├── problem-114-counting-block-combinations-i.arabic.md │ │ │ │ ├── problem-115-counting-block-combinations-ii.arabic.md │ │ │ │ ├── problem-116-red-green-or-blue-tiles.arabic.md │ │ │ │ ├── problem-117-red-green-and-blue-tiles.arabic.md │ │ │ │ ├── problem-118-pandigital-prime-sets.arabic.md │ │ │ │ ├── problem-119-digit-power-sum.arabic.md │ │ │ │ ├── problem-12-highly-divisible-triangular-number.arabic.md │ │ │ │ ├── problem-120-square-remainders.arabic.md │ │ │ │ ├── problem-121-disc-game-prize-fund.arabic.md │ │ │ │ ├── problem-122-efficient-exponentiation.arabic.md │ │ │ │ ├── problem-123-prime-square-remainders.arabic.md │ │ │ │ ├── problem-124-ordered-radicals.arabic.md │ │ │ │ ├── problem-125-palindromic-sums.arabic.md │ │ │ │ ├── problem-126-cuboid-layers.arabic.md │ │ │ │ ├── problem-127-abc-hits.arabic.md │ │ │ │ ├── problem-128-hexagonal-tile-differences.arabic.md │ │ │ │ ├── problem-129-repunit-divisibility.arabic.md │ │ │ │ ├── problem-13-large-sum.arabic.md │ │ │ │ ├── problem-130-composites-with-prime-repunit-property.arabic.md │ │ │ │ ├── problem-131-prime-cube-partnership.arabic.md │ │ │ │ ├── problem-132-large-repunit-factors.arabic.md │ │ │ │ ├── problem-133-repunit-nonfactors.arabic.md │ │ │ │ ├── problem-134-prime-pair-connection.arabic.md │ │ │ │ ├── problem-135-same-differences.arabic.md │ │ │ │ ├── problem-136-singleton-difference.arabic.md │ │ │ │ ├── problem-137-fibonacci-golden-nuggets.arabic.md │ │ │ │ ├── problem-138-special-isosceles-triangles.arabic.md │ │ │ │ ├── problem-139-pythagorean-tiles.arabic.md │ │ │ │ ├── problem-14-longest-collatz-sequence.arabic.md │ │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.arabic.md │ │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.arabic.md │ │ │ │ ├── problem-142-perfect-square-collection.arabic.md │ │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.arabic.md │ │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.arabic.md │ │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.arabic.md │ │ │ │ ├── problem-146-investigating-a-prime-pattern.arabic.md │ │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.arabic.md │ │ │ │ ├── problem-148-exploring-pascals-triangle.arabic.md │ │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.arabic.md │ │ │ │ ├── problem-15-lattice-paths.arabic.md │ │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.arabic.md │ │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.arabic.md │ │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.arabic.md │ │ │ │ ├── problem-153-investigating-gaussian-integers.arabic.md │ │ │ │ ├── problem-154-exploring-pascals-pyramid.arabic.md │ │ │ │ ├── problem-155-counting-capacitor-circuits.arabic.md │ │ │ │ ├── problem-156-counting-digits.arabic.md │ │ │ │ ├── problem-157-solving-the-diophantine-equation.arabic.md │ │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.arabic.md │ │ │ │ ├── problem-159-digital-root-sums-of-factorisations.arabic.md │ │ │ │ ├── problem-16-power-digit-sum.arabic.md │ │ │ │ ├── problem-160-factorial-trailing-digits.arabic.md │ │ │ │ ├── problem-161-triominoes.arabic.md │ │ │ │ ├── problem-162-hexadecimal-numbers.arabic.md │ │ │ │ ├── problem-163-cross-hatched-triangles.arabic.md │ │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.arabic.md │ │ │ │ ├── problem-165-intersections.arabic.md │ │ │ │ ├── problem-166-criss-cross.arabic.md │ │ │ │ ├── problem-167-investigating-ulam-sequences.arabic.md │ │ │ │ ├── problem-168-number-rotations.arabic.md │ │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.arabic.md │ │ │ │ ├── problem-17-number-letter-counts.arabic.md │ │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.arabic.md │ │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.arabic.md │ │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.arabic.md │ │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.arabic.md │ │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.arabic.md │ │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.arabic.md │ │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.arabic.md │ │ │ │ ├── problem-177-integer-angled-quadrilaterals.arabic.md │ │ │ │ ├── problem-178-step-numbers.arabic.md │ │ │ │ ├── problem-179-consecutive-positive-divisors.arabic.md │ │ │ │ ├── problem-18-maximum-path-sum-i.arabic.md │ │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.arabic.md │ │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.arabic.md │ │ │ │ ├── problem-182-rsa-encryption.arabic.md │ │ │ │ ├── problem-183-maximum-product-of-parts.arabic.md │ │ │ │ ├── problem-184-triangles-containing-the-origin.arabic.md │ │ │ │ ├── problem-185-number-mind.arabic.md │ │ │ │ ├── problem-186-connectedness-of-a-network.arabic.md │ │ │ │ ├── problem-187-semiprimes.arabic.md │ │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.arabic.md │ │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.arabic.md │ │ │ │ ├── problem-19-counting-sundays.arabic.md │ │ │ │ ├── problem-190-maximising-a-weighted-product.arabic.md │ │ │ │ ├── problem-191-prize-strings.arabic.md │ │ │ │ ├── problem-192-best-approximations.arabic.md │ │ │ │ ├── problem-193-squarefree-numbers.arabic.md │ │ │ │ ├── problem-194-coloured-configurations.arabic.md │ │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.arabic.md │ │ │ │ ├── problem-196-prime-triplets.arabic.md │ │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.arabic.md │ │ │ │ ├── problem-198-ambiguous-numbers.arabic.md │ │ │ │ ├── problem-199-iterative-circle-packing.arabic.md │ │ │ │ ├── problem-2-even-fibonacci-numbers.arabic.md │ │ │ │ ├── problem-20-factorial-digit-sum.arabic.md │ │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.arabic.md │ │ │ │ ├── problem-201-subsets-with-a-unique-sum.arabic.md │ │ │ │ ├── problem-202-laserbeam.arabic.md │ │ │ │ ├── problem-203-squarefree-binomial-coefficients.arabic.md │ │ │ │ ├── problem-204-generalised-hamming-numbers.arabic.md │ │ │ │ ├── problem-205-dice-game.arabic.md │ │ │ │ ├── problem-206-concealed-square.arabic.md │ │ │ │ ├── problem-207-integer-partition-equations.arabic.md │ │ │ │ ├── problem-208-robot-walks.arabic.md │ │ │ │ ├── problem-209-circular-logic.arabic.md │ │ │ │ ├── problem-21-amicable-numbers.arabic.md │ │ │ │ ├── problem-210-obtuse-angled-triangles.arabic.md │ │ │ │ ├── problem-211-divisor-square-sum.arabic.md │ │ │ │ ├── problem-212-combined-volume-of-cuboids.arabic.md │ │ │ │ ├── problem-213-flea-circus.arabic.md │ │ │ │ ├── problem-214-totient-chains.arabic.md │ │ │ │ ├── problem-215-crack-free-walls.arabic.md │ │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.arabic.md │ │ │ │ ├── problem-217-balanced-numbers.arabic.md │ │ │ │ ├── problem-218-perfect-right-angled-triangles.arabic.md │ │ │ │ ├── problem-219-skew-cost-coding.arabic.md │ │ │ │ ├── problem-22-names-scores.arabic.md │ │ │ │ ├── problem-220-heighway-dragon.arabic.md │ │ │ │ ├── problem-221-alexandrian-integers.arabic.md │ │ │ │ ├── problem-222-sphere-packing.arabic.md │ │ │ │ ├── problem-223-almost-right-angled-triangles-i.arabic.md │ │ │ │ ├── problem-224-almost-right-angled-triangles-ii.arabic.md │ │ │ │ ├── problem-225-tribonacci-non-divisors.arabic.md │ │ │ │ ├── problem-226-a-scoop-of-blancmange.arabic.md │ │ │ │ ├── problem-227-the-chase.arabic.md │ │ │ │ ├── problem-228-minkowski-sums.arabic.md │ │ │ │ ├── problem-229-four-representations-using-squares.arabic.md │ │ │ │ ├── problem-23-non-abundant-sums.arabic.md │ │ │ │ ├── problem-230-fibonacci-words.arabic.md │ │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.arabic.md │ │ │ │ ├── problem-232-the-race.arabic.md │ │ │ │ ├── problem-233-lattice-points-on-a-circle.arabic.md │ │ │ │ ├── problem-234-semidivisible-numbers.arabic.md │ │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.arabic.md │ │ │ │ ├── problem-236-luxury-hampers.arabic.md │ │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.arabic.md │ │ │ │ ├── problem-238-infinite-string-tour.arabic.md │ │ │ │ ├── problem-239-twenty-two-foolish-primes.arabic.md │ │ │ │ ├── problem-24-lexicographic-permutations.arabic.md │ │ │ │ ├── problem-240-top-dice.arabic.md │ │ │ │ ├── problem-241-perfection-quotients.arabic.md │ │ │ │ ├── problem-242-odd-triplets.arabic.md │ │ │ │ ├── problem-243-resilience.arabic.md │ │ │ │ ├── problem-244-sliders.arabic.md │ │ │ │ ├── problem-245-coresilience.arabic.md │ │ │ │ ├── problem-246-tangents-to-an-ellipse.arabic.md │ │ │ │ ├── problem-247-squares-under-a-hyperbola.arabic.md │ │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.arabic.md │ │ │ │ ├── problem-249-prime-subset-sums.arabic.md │ │ │ │ ├── problem-25-1000-digit-fibonacci-number.arabic.md │ │ │ │ ├── problem-250-250250.arabic.md │ │ │ │ ├── problem-251-cardano-triplets.arabic.md │ │ │ │ ├── problem-252-convex-holes.arabic.md │ │ │ │ ├── problem-253-tidying-up.arabic.md │ │ │ │ ├── problem-254-sums-of-digit-factorials.arabic.md │ │ │ │ ├── problem-255-rounded-square-roots.arabic.md │ │ │ │ ├── problem-256-tatami-free-rooms.arabic.md │ │ │ │ ├── problem-257-angular-bisectors.arabic.md │ │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.arabic.md │ │ │ │ ├── problem-259-reachable-numbers.arabic.md │ │ │ │ ├── problem-26-reciprocal-cycles.arabic.md │ │ │ │ ├── problem-260-stone-game.arabic.md │ │ │ │ ├── problem-261-pivotal-square-sums.arabic.md │ │ │ │ ├── problem-262-mountain-range.arabic.md │ │ │ │ ├── problem-263-an-engineers-dream-come-true.arabic.md │ │ │ │ ├── problem-264-triangle-centres.arabic.md │ │ │ │ ├── problem-265-binary-circles.arabic.md │ │ │ │ ├── problem-266-pseudo-square-root.arabic.md │ │ │ │ ├── problem-267-billionaire.arabic.md │ │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.arabic.md │ │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.arabic.md │ │ │ │ ├── problem-27-quadratic-primes.arabic.md │ │ │ │ ├── problem-270-cutting-squares.arabic.md │ │ │ │ ├── problem-271-modular-cubes-part-1.arabic.md │ │ │ │ ├── problem-272-modular-cubes-part-2.arabic.md │ │ │ │ ├── problem-273-sum-of-squares.arabic.md │ │ │ │ ├── problem-274-divisibility-multipliers.arabic.md │ │ │ │ ├── problem-275-balanced-sculptures.arabic.md │ │ │ │ ├── problem-276-primitive-triangles.arabic.md │ │ │ │ ├── problem-277-a-modified-collatz-sequence.arabic.md │ │ │ │ ├── problem-278-linear-combinations-of-semiprimes.arabic.md │ │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.arabic.md │ │ │ │ ├── problem-28-number-spiral-diagonals.arabic.md │ │ │ │ ├── problem-280-ant-and-seeds.arabic.md │ │ │ │ ├── problem-281-pizza-toppings.arabic.md │ │ │ │ ├── problem-282-the-ackermann-function.arabic.md │ │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.arabic.md │ │ │ │ ├── problem-284-steady-squares.arabic.md │ │ │ │ ├── problem-285-pythagorean-odds.arabic.md │ │ │ │ ├── problem-286-scoring-probabilities.arabic.md │ │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.arabic.md │ │ │ │ ├── problem-288-an-enormous-factorial.arabic.md │ │ │ │ ├── problem-289-eulerian-cycles.arabic.md │ │ │ │ ├── problem-29-distinct-powers.arabic.md │ │ │ │ ├── problem-290-digital-signature.arabic.md │ │ │ │ ├── problem-291-panaitopol-primes.arabic.md │ │ │ │ ├── problem-292-pythagorean-polygons.arabic.md │ │ │ │ ├── problem-293-pseudo-fortunate-numbers.arabic.md │ │ │ │ ├── problem-294-sum-of-digits---experience-23.arabic.md │ │ │ │ ├── problem-295-lenticular-holes.arabic.md │ │ │ │ ├── problem-296-angular-bisector-and-tangent.arabic.md │ │ │ │ ├── problem-297-zeckendorf-representation.arabic.md │ │ │ │ ├── problem-298-selective-amnesia.arabic.md │ │ │ │ ├── problem-299-three-similar-triangles.arabic.md │ │ │ │ ├── problem-3-largest-prime-factor.arabic.md │ │ │ │ ├── problem-30-digit-n-powers.arabic.md │ │ │ │ ├── problem-300-protein-folding.arabic.md │ │ │ │ ├── problem-301-nim.arabic.md │ │ │ │ ├── problem-302-strong-achilles-numbers.arabic.md │ │ │ │ ├── problem-303-multiples-with-small-digits.arabic.md │ │ │ │ ├── problem-304-primonacci.arabic.md │ │ │ │ ├── problem-305-reflexive-position.arabic.md │ │ │ │ ├── problem-306-paper-strip-game.arabic.md │ │ │ │ ├── problem-307-chip-defects.arabic.md │ │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.arabic.md │ │ │ │ ├── problem-309-integer-ladders.arabic.md │ │ │ │ ├── problem-31-coin-sums.arabic.md │ │ │ │ ├── problem-310-nim-square.arabic.md │ │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.arabic.md │ │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.arabic.md │ │ │ │ ├── problem-313-sliding-game.arabic.md │ │ │ │ ├── problem-314-the-mouse-on-the-moon.arabic.md │ │ │ │ ├── problem-315-digital-root-clocks.arabic.md │ │ │ │ ├── problem-316-numbers-in-decimal-expansions.arabic.md │ │ │ │ ├── problem-317-firecracker.arabic.md │ │ │ │ ├── problem-318-2011-nines.arabic.md │ │ │ │ ├── problem-319-bounded-sequences.arabic.md │ │ │ │ ├── problem-32-pandigital-products.arabic.md │ │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.arabic.md │ │ │ │ ├── problem-321-swapping-counters.arabic.md │ │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.arabic.md │ │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.arabic.md │ │ │ │ ├── problem-324-building-a-tower.arabic.md │ │ │ │ ├── problem-325-stone-game-ii.arabic.md │ │ │ │ ├── problem-326-modulo-summations.arabic.md │ │ │ │ ├── problem-327-rooms-of-doom.arabic.md │ │ │ │ ├── problem-328-lowest-cost-search.arabic.md │ │ │ │ ├── problem-329-prime-frog.arabic.md │ │ │ │ ├── problem-33-digit-cancelling-fractions.arabic.md │ │ │ │ ├── problem-330-eulers-number.arabic.md │ │ │ │ ├── problem-331-cross-flips.arabic.md │ │ │ │ ├── problem-332-spherical-triangles.arabic.md │ │ │ │ ├── problem-333-special-partitions.arabic.md │ │ │ │ ├── problem-334-spilling-the-beans.arabic.md │ │ │ │ ├── problem-335-gathering-the-beans.arabic.md │ │ │ │ ├── problem-336-maximix-arrangements.arabic.md │ │ │ │ ├── problem-337-totient-stairstep-sequences.arabic.md │ │ │ │ ├── problem-338-cutting-rectangular-grid-paper.arabic.md │ │ │ │ ├── problem-339-peredur-fab-efrawg.arabic.md │ │ │ │ ├── problem-34-digit-factorials.arabic.md │ │ │ │ ├── problem-340-crazy-function.arabic.md │ │ │ │ ├── problem-341-golombs-self-describing-sequence.arabic.md │ │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.arabic.md │ │ │ │ ├── problem-343-fractional-sequences.arabic.md │ │ │ │ ├── problem-344-silver-dollar-game.arabic.md │ │ │ │ ├── problem-345-matrix-sum.arabic.md │ │ │ │ ├── problem-346-strong-repunits.arabic.md │ │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.arabic.md │ │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.arabic.md │ │ │ │ ├── problem-349-langtons-ant.arabic.md │ │ │ │ ├── problem-35-circular-primes.arabic.md │ │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.arabic.md │ │ │ │ ├── problem-351-hexagonal-orchards.arabic.md │ │ │ │ ├── problem-352-blood-tests.arabic.md │ │ │ │ ├── problem-353-risky-moon.arabic.md │ │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.arabic.md │ │ │ │ ├── problem-355-maximal-coprime-subset.arabic.md │ │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.arabic.md │ │ │ │ ├── problem-357-prime-generating-integers.arabic.md │ │ │ │ ├── problem-358-cyclic-numbers.arabic.md │ │ │ │ ├── problem-359-hilberts-new-hotel.arabic.md │ │ │ │ ├── problem-36-double-base-palindromes.arabic.md │ │ │ │ ├── problem-360-scary-sphere.arabic.md │ │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.arabic.md │ │ │ │ ├── problem-362-squarefree-factors.arabic.md │ │ │ │ ├── problem-363-bzier-curves.arabic.md │ │ │ │ ├── problem-364-comfortable-distance.arabic.md │ │ │ │ ├── problem-365-a-huge-binomial-coefficient.arabic.md │ │ │ │ ├── problem-366-stone-game-iii.arabic.md │ │ │ │ ├── problem-367-bozo-sort.arabic.md │ │ │ │ ├── problem-368-a-kempner-like-series.arabic.md │ │ │ │ ├── problem-369-badugi.arabic.md │ │ │ │ ├── problem-37-truncatable-primes.arabic.md │ │ │ │ ├── problem-370-geometric-triangles.arabic.md │ │ │ │ ├── problem-371-licence-plates.arabic.md │ │ │ │ ├── problem-372-pencils-of-rays.arabic.md │ │ │ │ ├── problem-373-circumscribed-circles.arabic.md │ │ │ │ ├── problem-374-maximum-integer-partition-product.arabic.md │ │ │ │ ├── problem-375-minimum-of-subsequences.arabic.md │ │ │ │ ├── problem-376-nontransitive-sets-of-dice.arabic.md │ │ │ │ ├── problem-377-sum-of-digits-experience-13.arabic.md │ │ │ │ ├── problem-378-triangle-triples.arabic.md │ │ │ │ ├── problem-379-least-common-multiple-count.arabic.md │ │ │ │ ├── problem-38-pandigital-multiples.arabic.md │ │ │ │ ├── problem-380-amazing-mazes.arabic.md │ │ │ │ ├── problem-381-prime-k-factorial.arabic.md │ │ │ │ ├── problem-382-generating-polygons.arabic.md │ │ │ │ ├── problem-383-divisibility-comparison-between-factorials.arabic.md │ │ │ │ ├── problem-384-rudin-shapiro-sequence.arabic.md │ │ │ │ ├── problem-385-ellipses-inside-triangles.arabic.md │ │ │ │ ├── problem-386-maximum-length-of-an-antichain.arabic.md │ │ │ │ ├── problem-387-harshad-numbers.arabic.md │ │ │ │ ├── problem-388-distinct-lines.arabic.md │ │ │ │ ├── problem-389-platonic-dice.arabic.md │ │ │ │ ├── problem-39-integer-right-triangles.arabic.md │ │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.arabic.md │ │ │ │ ├── problem-391-hopping-game.arabic.md │ │ │ │ ├── problem-392-enmeshed-unit-circle.arabic.md │ │ │ │ ├── problem-393-migrating-ants.arabic.md │ │ │ │ ├── problem-394-eating-pie.arabic.md │ │ │ │ ├── problem-395-pythagorean-tree.arabic.md │ │ │ │ ├── problem-396-weak-goodstein-sequence.arabic.md │ │ │ │ ├── problem-397-triangle-on-parabola.arabic.md │ │ │ │ ├── problem-398-cutting-rope.arabic.md │ │ │ │ ├── problem-399-squarefree-fibonacci-numbers.arabic.md │ │ │ │ ├── problem-4-largest-palindrome-product.arabic.md │ │ │ │ ├── problem-40-champernownes-constant.arabic.md │ │ │ │ ├── problem-400-fibonacci-tree-game.arabic.md │ │ │ │ ├── problem-401-sum-of-squares-of-divisors.arabic.md │ │ │ │ ├── problem-402-integer-valued-polynomials.arabic.md │ │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.arabic.md │ │ │ │ ├── problem-404-crisscross-ellipses.arabic.md │ │ │ │ ├── problem-405-a-rectangular-tiling.arabic.md │ │ │ │ ├── problem-406-guessing-game.arabic.md │ │ │ │ ├── problem-407-idempotents.arabic.md │ │ │ │ ├── problem-408-admissible-paths-through-a-grid.arabic.md │ │ │ │ ├── problem-409-nim-extreme.arabic.md │ │ │ │ ├── problem-41-pandigital-prime.arabic.md │ │ │ │ ├── problem-410-circle-and-tangent-line.arabic.md │ │ │ │ ├── problem-411-uphill-paths.arabic.md │ │ │ │ ├── problem-412-gnomon-numbering.arabic.md │ │ │ │ ├── problem-413-one-child-numbers.arabic.md │ │ │ │ ├── problem-414-kaprekar-constant.arabic.md │ │ │ │ ├── problem-415-titanic-sets.arabic.md │ │ │ │ ├── problem-416-a-frogs-trip.arabic.md │ │ │ │ ├── problem-417-reciprocal-cycles-ii.arabic.md │ │ │ │ ├── problem-418-factorisation-triples.arabic.md │ │ │ │ ├── problem-419-look-and-say-sequence.arabic.md │ │ │ │ ├── problem-42-coded-triangle-numbers.arabic.md │ │ │ │ ├── problem-420-2x2-positive-integer-matrix.arabic.md │ │ │ │ ├── problem-421-prime-factors-of-n151.arabic.md │ │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.arabic.md │ │ │ │ ├── problem-423-consecutive-die-throws.arabic.md │ │ │ │ ├── problem-424-kakuro.arabic.md │ │ │ │ ├── problem-425-prime-connection.arabic.md │ │ │ │ ├── problem-426-box-ball-system.arabic.md │ │ │ │ ├── problem-427-n-sequences.arabic.md │ │ │ │ ├── problem-428-necklace-of-circles.arabic.md │ │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.arabic.md │ │ │ │ ├── problem-43-sub-string-divisibility.arabic.md │ │ │ │ ├── problem-430-range-flips.arabic.md │ │ │ │ ├── problem-431-square-space-silo.arabic.md │ │ │ │ ├── problem-432-totient-sum.arabic.md │ │ │ │ ├── problem-433-steps-in-euclids-algorithm.arabic.md │ │ │ │ ├── problem-434-rigid-graphs.arabic.md │ │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.arabic.md │ │ │ │ ├── problem-436-unfair-wager.arabic.md │ │ │ │ ├── problem-437-fibonacci-primitive-roots.arabic.md │ │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.arabic.md │ │ │ │ ├── problem-439-sum-of-sum-of-divisors.arabic.md │ │ │ │ ├── problem-44-pentagon-numbers.arabic.md │ │ │ │ ├── problem-440-gcd-and-tiling.arabic.md │ │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.arabic.md │ │ │ │ ├── problem-442-eleven-free-integers.arabic.md │ │ │ │ ├── problem-443-gcd-sequence.arabic.md │ │ │ │ ├── problem-444-the-roundtable-lottery.arabic.md │ │ │ │ ├── problem-445-retractions-a.arabic.md │ │ │ │ ├── problem-446-retractions-b.arabic.md │ │ │ │ ├── problem-447-retractions-c.arabic.md │ │ │ │ ├── problem-448-average-least-common-multiple.arabic.md │ │ │ │ ├── problem-449-chocolate-covered-candy.arabic.md │ │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.arabic.md │ │ │ │ ├── problem-450-hypocycloid-and-lattice-points.arabic.md │ │ │ │ ├── problem-451-modular-inverses.arabic.md │ │ │ │ ├── problem-452-long-products.arabic.md │ │ │ │ ├── problem-453-lattice-quadrilaterals.arabic.md │ │ │ │ ├── problem-454-diophantine-reciprocals-iii.arabic.md │ │ │ │ ├── problem-455-powers-with-trailing-digits.arabic.md │ │ │ │ ├── problem-456-triangles-containing-the-origin-ii.arabic.md │ │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.arabic.md │ │ │ │ ├── problem-458-permutations-of-project.arabic.md │ │ │ │ ├── problem-459-flipping-game.arabic.md │ │ │ │ ├── problem-46-goldbachs-other-conjecture.arabic.md │ │ │ │ ├── problem-460-an-ant-on-the-move.arabic.md │ │ │ │ ├── problem-461-almost-pi.arabic.md │ │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.arabic.md │ │ │ │ ├── problem-463-a-weird-recurrence-relation.arabic.md │ │ │ │ ├── problem-464-mbius-function-and-intervals.arabic.md │ │ │ │ ├── problem-465-polar-polygons.arabic.md │ │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.arabic.md │ │ │ │ ├── problem-467-superinteger.arabic.md │ │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.arabic.md │ │ │ │ ├── problem-469-empty-chairs.arabic.md │ │ │ │ ├── problem-47-distinct-primes-factors.arabic.md │ │ │ │ ├── problem-470-super-ramvok.arabic.md │ │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.arabic.md │ │ │ │ ├── problem-472-comfortable-distance-ii.arabic.md │ │ │ │ ├── problem-473-phigital-number-base.arabic.md │ │ │ │ ├── problem-474-last-digits-of-divisors.arabic.md │ │ │ │ ├── problem-475-music-festival.arabic.md │ │ │ │ ├── problem-476-circle-packing-ii.arabic.md │ │ │ │ ├── problem-477-number-sequence-game.arabic.md │ │ │ │ ├── problem-478-mixtures.arabic.md │ │ │ │ ├── problem-479-roots-on-the-rise.arabic.md │ │ │ │ ├── problem-48-self-powers.arabic.md │ │ │ │ ├── problem-480-the-last-question.arabic.md │ │ │ │ ├── problem-49-prime-permutations.arabic.md │ │ │ │ ├── problem-5-smallest-multiple.arabic.md │ │ │ │ ├── problem-50-consecutive-prime-sum.arabic.md │ │ │ │ ├── problem-51-prime-digit-replacements.arabic.md │ │ │ │ ├── problem-52-permuted-multiples.arabic.md │ │ │ │ ├── problem-53-combinatoric-selections.arabic.md │ │ │ │ ├── problem-54-poker-hands.arabic.md │ │ │ │ ├── problem-55-lychrel-numbers.arabic.md │ │ │ │ ├── problem-56-powerful-digit-sum.arabic.md │ │ │ │ ├── problem-57-square-root-convergents.arabic.md │ │ │ │ ├── problem-58-spiral-primes.arabic.md │ │ │ │ ├── problem-59-xor-decryption.arabic.md │ │ │ │ ├── problem-6-sum-square-difference.arabic.md │ │ │ │ ├── problem-60-prime-pair-sets.arabic.md │ │ │ │ ├── problem-61-cyclical-figurate-numbers.arabic.md │ │ │ │ ├── problem-62-cubic-permutations.arabic.md │ │ │ │ ├── problem-63-powerful-digit-counts.arabic.md │ │ │ │ ├── problem-64-odd-period-square-roots.arabic.md │ │ │ │ ├── problem-65-convergents-of-e.arabic.md │ │ │ │ ├── problem-66-diophantine-equation.arabic.md │ │ │ │ ├── problem-67-maximum-path-sum-ii.arabic.md │ │ │ │ ├── problem-68-magic-5-gon-ring.arabic.md │ │ │ │ ├── problem-69-totient-maximum.arabic.md │ │ │ │ ├── problem-7-10001st-prime.arabic.md │ │ │ │ ├── problem-70-totient-permutation.arabic.md │ │ │ │ ├── problem-71-ordered-fractions.arabic.md │ │ │ │ ├── problem-72-counting-fractions.arabic.md │ │ │ │ ├── problem-73-counting-fractions-in-a-range.arabic.md │ │ │ │ ├── problem-74-digit-factorial-chains.arabic.md │ │ │ │ ├── problem-75-singular-integer-right-triangles.arabic.md │ │ │ │ ├── problem-76-counting-summations.arabic.md │ │ │ │ ├── problem-77-prime-summations.arabic.md │ │ │ │ ├── problem-78-coin-partitions.arabic.md │ │ │ │ ├── problem-79-passcode-derivation.arabic.md │ │ │ │ ├── problem-8-largest-product-in-a-series.arabic.md │ │ │ │ ├── problem-80-square-root-digital-expansion.arabic.md │ │ │ │ ├── problem-81-path-sum-two-ways.arabic.md │ │ │ │ ├── problem-82-path-sum-three-ways.arabic.md │ │ │ │ ├── problem-83-path-sum-four-ways.arabic.md │ │ │ │ ├── problem-84-monopoly-odds.arabic.md │ │ │ │ ├── problem-85-counting-rectangles.arabic.md │ │ │ │ ├── problem-86-cuboid-route.arabic.md │ │ │ │ ├── problem-87-prime-power-triples.arabic.md │ │ │ │ ├── problem-88-product-sum-numbers.arabic.md │ │ │ │ ├── problem-89-roman-numerals.arabic.md │ │ │ │ ├── problem-9-special-pythagorean-triplet.arabic.md │ │ │ │ ├── problem-90-cube-digit-pairs.arabic.md │ │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.arabic.md │ │ │ │ ├── problem-92-square-digit-chains.arabic.md │ │ │ │ ├── problem-93-arithmetic-expressions.arabic.md │ │ │ │ ├── problem-94-almost-equilateral-triangles.arabic.md │ │ │ │ ├── problem-95-amicable-chains.arabic.md │ │ │ │ ├── problem-96-su-doku.arabic.md │ │ │ │ ├── problem-97-large-non-mersenne-prime.arabic.md │ │ │ │ ├── problem-98-anagramic-squares.arabic.md │ │ │ │ └── problem-99-largest-exponential.arabic.md │ │ │ ├── rosetta-code │ │ │ │ ├── 100-doors.arabic.md │ │ │ │ ├── 24-game.arabic.md │ │ │ │ ├── 9-billion-names-of-god-the-integer.arabic.md │ │ │ │ ├── abc-problem.arabic.md │ │ │ │ ├── abundant-deficient-and-perfect-number-classifications.arabic.md │ │ │ │ ├── accumulator-factory.arabic.md │ │ │ │ ├── ackermann-function.arabic.md │ │ │ │ ├── align-columns.arabic.md │ │ │ │ ├── amicable-pairs.arabic.md │ │ │ │ ├── averages-mode.arabic.md │ │ │ │ ├── averages-pythagorean-means.arabic.md │ │ │ │ ├── averages-root-mean-square.arabic.md │ │ │ │ ├── babbage-problem.arabic.md │ │ │ │ ├── balanced-brackets.arabic.md │ │ │ │ ├── circles-of-given-radius-through-two-points.arabic.md │ │ │ │ ├── closest-pair-problem.arabic.md │ │ │ │ ├── combinations.arabic.md │ │ │ │ ├── comma-quibbling.arabic.md │ │ │ │ ├── compare-a-list-of-strings.arabic.md │ │ │ │ ├── convert-seconds-to-compound-duration.arabic.md │ │ │ │ ├── count-occurrences-of-a-substring.arabic.md │ │ │ │ ├── count-the-coins.arabic.md │ │ │ │ ├── cramers-rule.arabic.md │ │ │ │ ├── date-format.arabic.md │ │ │ │ ├── date-manipulation.arabic.md │ │ │ │ ├── day-of-the-week.arabic.md │ │ │ │ ├── deal-cards-for-freecell.arabic.md │ │ │ │ ├── deepcopy.arabic.md │ │ │ │ ├── define-a-primitive-data-type.arabic.md │ │ │ │ ├── department-numbers.arabic.md │ │ │ │ ├── discordian-date.arabic.md │ │ │ │ ├── element-wise-operations.arabic.md │ │ │ │ ├── emirp-primes.arabic.md │ │ │ │ ├── entropy.arabic.md │ │ │ │ ├── equilibrium-index.arabic.md │ │ │ │ ├── ethiopian-multiplication.arabic.md │ │ │ │ ├── euler-method.arabic.md │ │ │ │ ├── evaluate-binomial-coefficients.arabic.md │ │ │ │ ├── execute-a-markov-algorithm.arabic.md │ │ │ │ ├── execute-brain.arabic.md │ │ │ │ ├── extensible-prime-generator.arabic.md │ │ │ │ ├── factorial.arabic.md │ │ │ │ ├── factors-of-a-mersenne-number.arabic.md │ │ │ │ ├── factors-of-an-integer.arabic.md │ │ │ │ ├── farey-sequence.arabic.md │ │ │ │ ├── fibonacci-n-step-number-sequences.arabic.md │ │ │ │ ├── fibonacci-sequence.arabic.md │ │ │ │ ├── fibonacci-word.arabic.md │ │ │ │ ├── fractran.arabic.md │ │ │ │ ├── gamma-function.arabic.md │ │ │ │ ├── gaussian-elimination.arabic.md │ │ │ │ ├── general-fizzbuzz.arabic.md │ │ │ │ ├── generate-lower-case-ascii-alphabet.arabic.md │ │ │ │ ├── generatorexponential.arabic.md │ │ │ │ ├── gray-code.arabic.md │ │ │ │ ├── greatest-common-divisor.arabic.md │ │ │ │ ├── greatest-subsequential-sum.arabic.md │ │ │ │ ├── hailstone-sequence.arabic.md │ │ │ │ ├── happy-numbers.arabic.md │ │ │ │ ├── harshad-or-niven-series.arabic.md │ │ │ │ ├── hash-from-two-arrays.arabic.md │ │ │ │ ├── hash-join.arabic.md │ │ │ │ ├── heronian-triangles.arabic.md │ │ │ │ ├── hofstadter-figure-figure-sequences.arabic.md │ │ │ │ ├── hofstadter-q-sequence.arabic.md │ │ │ │ ├── i-before-e-except-after-c.arabic.md │ │ │ │ ├── iban.arabic.md │ │ │ │ ├── identity-matrix.arabic.md │ │ │ │ ├── iterated-digits-squaring.arabic.md │ │ │ │ ├── jaro-distance.arabic.md │ │ │ │ ├── jortsort.arabic.md │ │ │ │ ├── josephus-problem.arabic.md │ │ │ │ ├── s-expressions.arabic.md │ │ │ │ ├── sailors-coconuts-and-a-monkey-problem.arabic.md │ │ │ │ ├── sedols.arabic.md │ │ │ │ ├── taxicab-numbers.arabic.md │ │ │ │ ├── tokenize-a-string-with-escaping.arabic.md │ │ │ │ ├── top-rank-per-group.arabic.md │ │ │ │ ├── topological-sort.arabic.md │ │ │ │ ├── towers-of-hanoi.arabic.md │ │ │ │ ├── vector-cross-product.arabic.md │ │ │ │ ├── vector-dot-product.arabic.md │ │ │ │ ├── word-wrap.arabic.md │ │ │ │ ├── y-combinator.arabic.md │ │ │ │ ├── zeckendorf-number-representation.arabic.md │ │ │ │ ├── zhang-suen-thinning-algorithm.arabic.md │ │ │ │ └── zig-zag-matrix.arabic.md │ │ │ └── take-home-projects │ │ │ │ ├── build-a-camper-leaderboard.arabic.md │ │ │ │ ├── build-a-light-bright-app.arabic.md │ │ │ │ ├── build-a-nightlife-coordination-app.arabic.md │ │ │ │ ├── build-a-pinterest-clone.arabic.md │ │ │ │ ├── build-a-pong-game.arabic.md │ │ │ │ ├── build-a-recipe-box.arabic.md │ │ │ │ ├── build-a-roguelike-dungeon-crawler-game.arabic.md │ │ │ │ ├── build-a-simon-game.arabic.md │ │ │ │ ├── build-a-tic-tac-toe-game.arabic.md │ │ │ │ ├── build-a-voting-app.arabic.md │ │ │ │ ├── build-a-wikipedia-viewer.arabic.md │ │ │ │ ├── build-an-image-search-abstraction-layer.arabic.md │ │ │ │ ├── build-the-game-of-life.arabic.md │ │ │ │ ├── chart-the-stock-market.arabic.md │ │ │ │ ├── manage-a-book-trading-club.arabic.md │ │ │ │ ├── map-data-across-the-globe.arabic.md │ │ │ │ ├── p2p-video-chat-application.arabic.md │ │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.arabic.md │ │ │ │ ├── show-the-local-weather.arabic.md │ │ │ │ └── use-the-twitch-json-api.arabic.md │ │ └── 09-certificates │ │ │ ├── apis-and-microservices-certificate │ │ │ └── apis-and-microservices-certificate.arabic.md │ │ │ ├── data-visualization-certificate │ │ │ └── data-visualization-certificate.arabic.md │ │ │ ├── front-end-libraries-certificate │ │ │ └── front-end-libraries-certificate.arabic.md │ │ │ ├── information-securtiy-and-quality-assurance-certificate │ │ │ └── information-securtiy-and-quality-assurance-certificate.arabic.md │ │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── javascript-algorithms-and-data-structures-certificate.arabic.md │ │ │ ├── legacy-back-end-certificate │ │ │ └── legacy-back-end-certificate.arabic.md │ │ │ ├── legacy-data-visualization-certificate │ │ │ └── legacy-data-visualization-certificate.arabic.md │ │ │ ├── legacy-front-end-certificate │ │ │ └── legacy-front-end-certificate.arabic.md │ │ │ └── responsive-web-design-certificate │ │ │ └── responsive-web-design-certificate.arabic.md │ ├── chinese │ │ ├── 01-responsive-web-design │ │ │ ├── applied-accessibility │ │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.chinese.md │ │ │ │ ├── add-an-accessible-date-picker.chinese.md │ │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.chinese.md │ │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.chinese.md │ │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.chinese.md │ │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.chinese.md │ │ │ │ ├── improve-chart-accessibility-with-the-figure-element.chinese.md │ │ │ │ ├── improve-form-field-accessibility-with-the-label-element.chinese.md │ │ │ │ ├── improve-readability-with-high-contrast-text.chinese.md │ │ │ │ ├── jump-straight-to-the-content-using-the-main-element.chinese.md │ │ │ │ ├── know-when-alt-text-should-be-left-blank.chinese.md │ │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.chinese.md │ │ │ │ ├── make-links-navigable-with-html-access-keys.chinese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.chinese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.chinese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.chinese.md │ │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.chinese.md │ │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.chinese.md │ │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.chinese.md │ │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.chinese.md │ │ │ │ ├── wrap-content-in-the-article-element.chinese.md │ │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.chinese.md │ │ │ ├── applied-visual-design │ │ │ │ ├── add-a-box-shadow-to-a-card-like-element.chinese.md │ │ │ │ ├── adjust-the-background-color-property-of-text.chinese.md │ │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.chinese.md │ │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.chinese.md │ │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.chinese.md │ │ │ │ ├── adjust-the-hue-of-a-color.chinese.md │ │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.chinese.md │ │ │ │ ├── adjust-the-tone-of-a-color.chinese.md │ │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.chinese.md │ │ │ │ ├── animate-elements-at-variable-rates.chinese.md │ │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.chinese.md │ │ │ │ ├── animate-multiple-elements-at-variable-rates.chinese.md │ │ │ │ ├── center-an-element-horizontally-using-the-margin-property.chinese.md │ │ │ │ ├── change-an-elements-relative-position.chinese.md │ │ │ │ ├── change-animation-timing-with-keywords.chinese.md │ │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.chinese.md │ │ │ │ ├── create-a-gradual-css-linear-gradient.chinese.md │ │ │ │ ├── create-a-graphic-using-css.chinese.md │ │ │ │ ├── create-a-horizontal-line-using-the-hr-element.chinese.md │ │ │ │ ├── create-a-more-complex-shape-using-css-and-html.chinese.md │ │ │ │ ├── create-movement-using-css-animation.chinese.md │ │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.chinese.md │ │ │ │ ├── create-visual-balance-using-the-text-align-property.chinese.md │ │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.chinese.md │ │ │ │ ├── decrease-the-opacity-of-an-element.chinese.md │ │ │ │ ├── learn-about-complementary-colors.chinese.md │ │ │ │ ├── learn-about-tertiary-colors.chinese.md │ │ │ │ ├── learn-how-bezier-curves-work.chinese.md │ │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.chinese.md │ │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.chinese.md │ │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.chinese.md │ │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.chinese.md │ │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.chinese.md │ │ │ │ ├── modify-fill-mode-of-an-animation.chinese.md │ │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.chinese.md │ │ │ │ ├── push-elements-left-or-right-with-the-float-property.chinese.md │ │ │ │ ├── set-the-font-size-for-multiple-heading-elements.chinese.md │ │ │ │ ├── set-the-font-size-of-paragraph-text.chinese.md │ │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.chinese.md │ │ │ │ ├── set-the-line-height-of-paragraphs.chinese.md │ │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.chinese.md │ │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.chinese.md │ │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.chinese.md │ │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.chinese.md │ │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.chinese.md │ │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.chinese.md │ │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.chinese.md │ │ │ │ ├── use-the-em-tag-to-italicize-text.chinese.md │ │ │ │ ├── use-the-s-tag-to-strikethrough-text.chinese.md │ │ │ │ ├── use-the-strong-tag-to-make-text-bold.chinese.md │ │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.chinese.md │ │ │ │ └── use-the-u-tag-to-underline-text.chinese.md │ │ │ ├── basic-css │ │ │ │ ├── add-a-negative-margin-to-an-element.chinese.md │ │ │ │ ├── add-borders-around-your-elements.chinese.md │ │ │ │ ├── add-different-margins-to-each-side-of-an-element.chinese.md │ │ │ │ ├── add-different-padding-to-each-side-of-an-element.chinese.md │ │ │ │ ├── add-rounded-corners-with-border-radius.chinese.md │ │ │ │ ├── adjust-the-margin-of-an-element.chinese.md │ │ │ │ ├── adjust-the-padding-of-an-element.chinese.md │ │ │ │ ├── attach-a-fallback-value-to-a-css-variable.chinese.md │ │ │ │ ├── change-a-variable-for-a-specific-area.chinese.md │ │ │ │ ├── change-the-color-of-text.chinese.md │ │ │ │ ├── change-the-font-size-of-an-element.chinese.md │ │ │ │ ├── create-a-custom-css-variable.chinese.md │ │ │ │ ├── give-a-background-color-to-a-div-element.chinese.md │ │ │ │ ├── import-a-google-font.chinese.md │ │ │ │ ├── improve-compatibility-with-browser-fallbacks.chinese.md │ │ │ │ ├── inherit-css-variables.chinese.md │ │ │ │ ├── inherit-styles-from-the-body-element.chinese.md │ │ │ │ ├── make-circular-images-with-a-border-radius.chinese.md │ │ │ │ ├── override-all-other-styles-by-using-important.chinese.md │ │ │ │ ├── override-class-declarations-by-styling-id-attributes.chinese.md │ │ │ │ ├── override-class-declarations-with-inline-styles.chinese.md │ │ │ │ ├── override-styles-in-subsequent-css.chinese.md │ │ │ │ ├── prioritize-one-style-over-another.chinese.md │ │ │ │ ├── set-the-font-family-of-an-element.chinese.md │ │ │ │ ├── set-the-id-of-an-element.chinese.md │ │ │ │ ├── size-your-images.chinese.md │ │ │ │ ├── specify-how-fonts-should-degrade.chinese.md │ │ │ │ ├── style-multiple-elements-with-a-css-class.chinese.md │ │ │ │ ├── style-the-html-body-element.chinese.md │ │ │ │ ├── understand-absolute-versus-relative-units.chinese.md │ │ │ │ ├── use-a-css-class-to-style-an-element.chinese.md │ │ │ │ ├── use-a-custom-css-variable.chinese.md │ │ │ │ ├── use-a-media-query-to-change-a-variable.chinese.md │ │ │ │ ├── use-abbreviated-hex-code.chinese.md │ │ │ │ ├── use-an-id-attribute-to-style-an-element.chinese.md │ │ │ │ ├── use-attribute-selectors-to-style-elements.chinese.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.chinese.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.chinese.md │ │ │ │ ├── use-css-selectors-to-style-elements.chinese.md │ │ │ │ ├── use-css-variables-to-change-several-elements-at-once.chinese.md │ │ │ │ ├── use-hex-code-for-specific-colors.chinese.md │ │ │ │ ├── use-hex-code-to-mix-colors.chinese.md │ │ │ │ ├── use-rgb-to-mix-colors.chinese.md │ │ │ │ └── use-rgb-values-to-color-elements.chinese.md │ │ │ ├── basic-html-and-html5 │ │ │ │ ├── add-a-submit-button-to-a-form.chinese.md │ │ │ │ ├── add-images-to-your-website.chinese.md │ │ │ │ ├── add-placeholder-text-to-a-text-field.chinese.md │ │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.chinese.md │ │ │ │ ├── comment-out-html.chinese.md │ │ │ │ ├── create-a-bulleted-unordered-list.chinese.md │ │ │ │ ├── create-a-form-element.chinese.md │ │ │ │ ├── create-a-set-of-checkboxes.chinese.md │ │ │ │ ├── create-a-set-of-radio-buttons.chinese.md │ │ │ │ ├── create-a-text-field.chinese.md │ │ │ │ ├── create-an-ordered-list.chinese.md │ │ │ │ ├── declare-the-doctype-of-an-html-document.chinese.md │ │ │ │ ├── define-the-head-and-body-of-an-html-document.chinese.md │ │ │ │ ├── delete-html-elements.chinese.md │ │ │ │ ├── fill-in-the-blank-with-placeholder-text.chinese.md │ │ │ │ ├── headline-with-the-h2-element.chinese.md │ │ │ │ ├── inform-with-the-paragraph-element.chinese.md │ │ │ │ ├── introduction-to-html5-elements.chinese.md │ │ │ │ ├── link-to-external-pages-with-anchor-elements.chinese.md │ │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.chinese.md │ │ │ │ ├── make-dead-links-using-the-hash-symbol.chinese.md │ │ │ │ ├── nest-an-anchor-element-within-a-paragraph.chinese.md │ │ │ │ ├── nest-many-elements-within-a-single-div-element.chinese.md │ │ │ │ ├── say-hello-to-html-elements.chinese.md │ │ │ │ ├── turn-an-image-into-a-link.chinese.md │ │ │ │ ├── uncomment-html.chinese.md │ │ │ │ ├── use-html5-to-require-a-field.chinese.md │ │ │ │ └── use-the-value-attribute-with-radio-buttons-and-checkboxes.chinese.md │ │ │ ├── css-flexbox │ │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.chinese.md │ │ │ │ ├── align-elements-using-the-align-items-property.chinese.md │ │ │ │ ├── align-elements-using-the-justify-content-property.chinese.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.chinese.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.chinese.md │ │ │ │ ├── use-display-flex-to-position-two-boxes.chinese.md │ │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.chinese.md │ │ │ │ ├── use-the-align-self-property.chinese.md │ │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.chinese.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-column.chinese.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-row.chinese.md │ │ │ │ ├── use-the-flex-grow-property-to-expand-items.chinese.md │ │ │ │ ├── use-the-flex-shorthand-property.chinese.md │ │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.chinese.md │ │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.chinese.md │ │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.chinese.md │ │ │ │ └── use-the-order-property-to-rearrange-items.chinese.md │ │ │ ├── css-grid │ │ │ │ ├── add-columns-with-grid-template-columns.chinese.md │ │ │ │ ├── add-gaps-faster-with-grid-gap.chinese.md │ │ │ │ ├── add-rows-with-grid-template-rows.chinese.md │ │ │ │ ├── align-all-items-horizontally-using-justify-items.chinese.md │ │ │ │ ├── align-all-items-vertically-using-align-items.chinese.md │ │ │ │ ├── align-an-item-horizontally-using-justify-self.chinese.md │ │ │ │ ├── align-an-item-vertically-using-align-self.chinese.md │ │ │ │ ├── create-a-column-gap-using-grid-column-gap.chinese.md │ │ │ │ ├── create-a-row-gap-using-grid-row-gap.chinese.md │ │ │ │ ├── create-flexible-layouts-using-auto-fill.chinese.md │ │ │ │ ├── create-flexible-layouts-using-auto-fit.chinese.md │ │ │ │ ├── create-grids-within-grids.chinese.md │ │ │ │ ├── create-your-first-css-grid.chinese.md │ │ │ │ ├── divide-the-grid-into-an-area-template.chinese.md │ │ │ │ ├── limit-item-size-using-the-minmax-function.chinese.md │ │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.chinese.md │ │ │ │ ├── reduce-repetition-using-the-repeat-function.chinese.md │ │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.chinese.md │ │ │ │ ├── use-grid-area-without-creating-an-areas-template.chinese.md │ │ │ │ ├── use-grid-column-to-control-spacing.chinese.md │ │ │ │ ├── use-grid-row-to-control-spacing.chinese.md │ │ │ │ └── use-media-queries-to-create-responsive-layouts.chinese.md │ │ │ ├── responsive-web-design-principles │ │ │ │ ├── create-a-media-query.chinese.md │ │ │ │ ├── make-an-image-responsive.chinese.md │ │ │ │ ├── make-typography-responsive.chinese.md │ │ │ │ └── use-a-retina-image-for-higher-resolution-displays.chinese.md │ │ │ └── responsive-web-design-projects │ │ │ │ ├── build-a-personal-portfolio-webpage.chinese.md │ │ │ │ ├── build-a-product-landing-page.chinese.md │ │ │ │ ├── build-a-survey-form.chinese.md │ │ │ │ ├── build-a-technical-documentation-page.chinese.md │ │ │ │ └── build-a-tribute-page.chinese.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ │ ├── basic-algorithm-scripting │ │ │ │ ├── boo-who.chinese.md │ │ │ │ ├── chunky-monkey.chinese.md │ │ │ │ ├── confirm-the-ending.chinese.md │ │ │ │ ├── convert-celsius-to-fahrenheit.chinese.md │ │ │ │ ├── factorialize-a-number.chinese.md │ │ │ │ ├── falsy-bouncer.chinese.md │ │ │ │ ├── find-the-longest-word-in-a-string.chinese.md │ │ │ │ ├── finders-keepers.chinese.md │ │ │ │ ├── mutations.chinese.md │ │ │ │ ├── repeat-a-string-repeat-a-string.chinese.md │ │ │ │ ├── return-largest-numbers-in-arrays.chinese.md │ │ │ │ ├── reverse-a-string.chinese.md │ │ │ │ ├── slice-and-splice.chinese.md │ │ │ │ ├── title-case-a-sentence.chinese.md │ │ │ │ ├── truncate-a-string.chinese.md │ │ │ │ └── where-do-i-belong.chinese.md │ │ │ ├── basic-data-structures │ │ │ │ ├── access-an-arrays-contents-using-bracket-notation.chinese.md │ │ │ │ ├── access-property-names-with-bracket-notation.chinese.md │ │ │ │ ├── add-items-to-an-array-with-push-and-unshift.chinese.md │ │ │ │ ├── add-items-using-splice.chinese.md │ │ │ │ ├── add-key-value-pairs-to-javascript-objects.chinese.md │ │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.chinese.md │ │ │ │ ├── check-if-an-object-has-a-property.chinese.md │ │ │ │ ├── combine-arrays-with-the-spread-operator.chinese.md │ │ │ │ ├── copy-an-array-with-the-spread-operator.chinese.md │ │ │ │ ├── copy-array-items-using-slice.chinese.md │ │ │ │ ├── create-complex-multi-dimensional-arrays.chinese.md │ │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.chinese.md │ │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.chinese.md │ │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.chinese.md │ │ │ │ ├── modify-an-array-stored-in-an-object.chinese.md │ │ │ │ ├── modify-an-object-nested-within-an-object.chinese.md │ │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.chinese.md │ │ │ │ ├── remove-items-using-splice.chinese.md │ │ │ │ ├── use-an-array-to-store-a-collection-of-data.chinese.md │ │ │ │ └── use-the-delete-keyword-to-remove-object-properties.chinese.md │ │ │ ├── basic-javascript │ │ │ │ ├── access-array-data-with-indexes.chinese.md │ │ │ │ ├── access-multi-dimensional-arrays-with-indexes.chinese.md │ │ │ │ ├── accessing-nested-arrays.chinese.md │ │ │ │ ├── accessing-nested-objects.chinese.md │ │ │ │ ├── accessing-object-properties-with-bracket-notation.chinese.md │ │ │ │ ├── accessing-object-properties-with-dot-notation.chinese.md │ │ │ │ ├── accessing-object-properties-with-variables.chinese.md │ │ │ │ ├── add-new-properties-to-a-javascript-object.chinese.md │ │ │ │ ├── add-two-numbers-with-javascript.chinese.md │ │ │ │ ├── adding-a-default-option-in-switch-statements.chinese.md │ │ │ │ ├── appending-variables-to-strings.chinese.md │ │ │ │ ├── assignment-with-a-returned-value.chinese.md │ │ │ │ ├── build-javascript-objects.chinese.md │ │ │ │ ├── chaining-if-else-statements.chinese.md │ │ │ │ ├── comment-your-javascript-code.chinese.md │ │ │ │ ├── comparison-with-the-equality-operator.chinese.md │ │ │ │ ├── comparison-with-the-greater-than-operator.chinese.md │ │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.chinese.md │ │ │ │ ├── comparison-with-the-inequality-operator.chinese.md │ │ │ │ ├── comparison-with-the-less-than-operator.chinese.md │ │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.chinese.md │ │ │ │ ├── comparison-with-the-strict-equality-operator.chinese.md │ │ │ │ ├── comparison-with-the-strict-inequality-operator.chinese.md │ │ │ │ ├── comparisons-with-the-logical-and-operator.chinese.md │ │ │ │ ├── comparisons-with-the-logical-or-operator.chinese.md │ │ │ │ ├── compound-assignment-with-augmented-addition.chinese.md │ │ │ │ ├── compound-assignment-with-augmented-division.chinese.md │ │ │ │ ├── compound-assignment-with-augmented-multiplication.chinese.md │ │ │ │ ├── compound-assignment-with-augmented-subtraction.chinese.md │ │ │ │ ├── concatenating-strings-with-plus-operator.chinese.md │ │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.chinese.md │ │ │ │ ├── constructing-strings-with-variables.chinese.md │ │ │ │ ├── count-backwards-with-a-for-loop.chinese.md │ │ │ │ ├── counting-cards.chinese.md │ │ │ │ ├── create-decimal-numbers-with-javascript.chinese.md │ │ │ │ ├── declare-javascript-variables.chinese.md │ │ │ │ ├── declare-string-variables.chinese.md │ │ │ │ ├── decrement-a-number-with-javascript.chinese.md │ │ │ │ ├── delete-properties-from-a-javascript-object.chinese.md │ │ │ │ ├── divide-one-decimal-by-another-with-javascript.chinese.md │ │ │ │ ├── divide-one-number-by-another-with-javascript.chinese.md │ │ │ │ ├── escape-sequences-in-strings.chinese.md │ │ │ │ ├── escaping-literal-quotes-in-strings.chinese.md │ │ │ │ ├── find-the-length-of-a-string.chinese.md │ │ │ │ ├── finding-a-remainder-in-javascript.chinese.md │ │ │ │ ├── generate-random-fractions-with-javascript.chinese.md │ │ │ │ ├── generate-random-whole-numbers-with-javascript.chinese.md │ │ │ │ ├── generate-random-whole-numbers-within-a-range.chinese.md │ │ │ │ ├── global-scope-and-functions.chinese.md │ │ │ │ ├── global-vs.-local-scope-in-functions.chinese.md │ │ │ │ ├── golf-code.chinese.md │ │ │ │ ├── increment-a-number-with-javascript.chinese.md │ │ │ │ ├── initializing-variables-with-the-assignment-operator.chinese.md │ │ │ │ ├── introducing-else-if-statements.chinese.md │ │ │ │ ├── introducing-else-statements.chinese.md │ │ │ │ ├── iterate-odd-numbers-with-a-for-loop.chinese.md │ │ │ │ ├── iterate-through-an-array-with-a-for-loop.chinese.md │ │ │ │ ├── iterate-with-javascript-do...while-loops.chinese.md │ │ │ │ ├── iterate-with-javascript-for-loops.chinese.md │ │ │ │ ├── iterate-with-javascript-while-loops.chinese.md │ │ │ │ ├── local-scope-and-functions.chinese.md │ │ │ │ ├── logical-order-in-if-else-statements.chinese.md │ │ │ │ ├── manipulate-arrays-with-pop.chinese.md │ │ │ │ ├── manipulate-arrays-with-push.chinese.md │ │ │ │ ├── manipulate-arrays-with-shift.chinese.md │ │ │ │ ├── manipulate-arrays-with-unshift.chinese.md │ │ │ │ ├── manipulating-complex-objects.chinese.md │ │ │ │ ├── modify-array-data-with-indexes.chinese.md │ │ │ │ ├── multiple-identical-options-in-switch-statements.chinese.md │ │ │ │ ├── multiply-two-decimals-with-javascript.chinese.md │ │ │ │ ├── multiply-two-numbers-with-javascript.chinese.md │ │ │ │ ├── nest-one-array-within-another-array.chinese.md │ │ │ │ ├── nesting-for-loops.chinese.md │ │ │ │ ├── passing-values-to-functions-with-arguments.chinese.md │ │ │ │ ├── practice-comparing-different-values.chinese.md │ │ │ │ ├── profile-lookup.chinese.md │ │ │ │ ├── quoting-strings-with-single-quotes.chinese.md │ │ │ │ ├── record-collection.chinese.md │ │ │ │ ├── replace-loops-using-recursion.chinese.md │ │ │ │ ├── replacing-if-else-chains-with-switch.chinese.md │ │ │ │ ├── return-a-value-from-a-function-with-return.chinese.md │ │ │ │ ├── return-early-pattern-for-functions.chinese.md │ │ │ │ ├── returning-boolean-values-from-functions.chinese.md │ │ │ │ ├── selecting-from-many-options-with-switch-statements.chinese.md │ │ │ │ ├── shopping-list.chinese.md │ │ │ │ ├── stand-in-line.chinese.md │ │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.chinese.md │ │ │ │ ├── storing-values-with-the-assignment-operator.chinese.md │ │ │ │ ├── subtract-one-number-from-another-with-javascript.chinese.md │ │ │ │ ├── testing-objects-for-properties.chinese.md │ │ │ │ ├── understand-string-immutability.chinese.md │ │ │ │ ├── understanding-boolean-values.chinese.md │ │ │ │ ├── understanding-case-sensitivity-in-variables.chinese.md │ │ │ │ ├── understanding-undefined-value-returned-from-a-function.chinese.md │ │ │ │ ├── understanding-uninitialized-variables.chinese.md │ │ │ │ ├── updating-object-properties.chinese.md │ │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.chinese.md │ │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.chinese.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.chinese.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.chinese.md │ │ │ │ ├── use-conditional-logic-with-if-statements.chinese.md │ │ │ │ ├── use-multiple-conditional-ternary-operators.chinese.md │ │ │ │ ├── use-recursion-to-create-a-countdown.chinese.md │ │ │ │ ├── use-recursion-to-create-a-range-of-numbers.chinese.md │ │ │ │ ├── use-the-conditional-ternary-operator.chinese.md │ │ │ │ ├── use-the-parseint-function-with-a-radix.chinese.md │ │ │ │ ├── use-the-parseint-function.chinese.md │ │ │ │ ├── using-objects-for-lookups.chinese.md │ │ │ │ ├── word-blanks.chinese.md │ │ │ │ └── write-reusable-javascript-with-functions.chinese.md │ │ │ ├── debugging │ │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.chinese.md │ │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.chinese.md │ │ │ │ ├── catch-misspelled-variable-and-function-names.chinese.md │ │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.chinese.md │ │ │ │ ├── catch-off-by-one-errors-when-using-indexing.chinese.md │ │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.chinese.md │ │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.chinese.md │ │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.chinese.md │ │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.chinese.md │ │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.chinese.md │ │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.chinese.md │ │ │ │ └── use-typeof-to-check-the-type-of-a-variable.chinese.md │ │ │ ├── es6 │ │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.chinese.md │ │ │ │ ├── complete-a-promise-with-resolve-and-reject.chinese.md │ │ │ │ ├── create-a-javascript-promise.chinese.md │ │ │ │ ├── create-a-module-script.chinese.md │ │ │ │ ├── create-an-export-fallback-with-export-default.chinese.md │ │ │ │ ├── create-strings-using-template-literals.chinese.md │ │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.chinese.md │ │ │ │ ├── explore-differences-between-the-var-and-let-keywords.chinese.md │ │ │ │ ├── handle-a-fulfilled-promise-with-then.chinese.md │ │ │ │ ├── handle-a-rejected-promise-with-catch.chinese.md │ │ │ │ ├── import-a-default-export.chinese.md │ │ │ │ ├── mutate-an-array-declared-with-const.chinese.md │ │ │ │ ├── prevent-object-mutation.chinese.md │ │ │ │ ├── reuse-javascript-code-using-import.chinese.md │ │ │ │ ├── set-default-parameters-for-your-functions.chinese.md │ │ │ │ ├── use--to-import-everything-from-a-file.chinese.md │ │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.chinese.md │ │ │ │ ├── use-class-syntax-to-define-a-constructor-function.chinese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.chinese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.chinese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.chinese.md │ │ │ │ ├── use-destructuring-assignment-to-extract-values-from-objects.chinese.md │ │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.chinese.md │ │ │ │ ├── use-destructuring-assignment-with-the-rest-parameter-to-reassign-array-elements.chinese.md │ │ │ │ ├── use-export-to-share-a-code-block.chinese.md │ │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.chinese.md │ │ │ │ ├── use-the-rest-parameter-with-function-parameters.chinese.md │ │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.chinese.md │ │ │ │ ├── write-arrow-functions-with-parameters.chinese.md │ │ │ │ ├── write-concise-declarative-functions-with-es6.chinese.md │ │ │ │ └── write-concise-object-literal-declarations-using-object-property-shorthand.chinese.md │ │ │ ├── functional-programming │ │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.chinese.md │ │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.chinese.md │ │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.chinese.md │ │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.chinese.md │ │ │ │ ├── combine-two-arrays-using-the-concat-method.chinese.md │ │ │ │ ├── implement-map-on-a-prototype.chinese.md │ │ │ │ ├── implement-the-filter-method-on-a-prototype.chinese.md │ │ │ │ ├── introduction-to-currying-and-partial-application.chinese.md │ │ │ │ ├── learn-about-functional-programming.chinese.md │ │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.chinese.md │ │ │ │ ├── refactor-global-variables-out-of-functions.chinese.md │ │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.chinese.md │ │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.chinese.md │ │ │ │ ├── return-part-of-an-array-using-the-slice-method.chinese.md │ │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.chinese.md │ │ │ │ ├── split-a-string-into-an-array-using-the-split-method.chinese.md │ │ │ │ ├── understand-functional-programming-terminology.chinese.md │ │ │ │ ├── understand-the-hazards-of-using-imperative-code.chinese.md │ │ │ │ ├── use-higher-order-functions-map-filter-or-reduce-to-solve-a-complex-problem.chinese.md │ │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.chinese.md │ │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.chinese.md │ │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.chinese.md │ │ │ │ ├── use-the-reduce-method-to-analyze-data.chinese.md │ │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.chinese.md │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ ├── arguments-optional.chinese.md │ │ │ │ ├── binary-agents.chinese.md │ │ │ │ ├── convert-html-entities.chinese.md │ │ │ │ ├── diff-two-arrays.chinese.md │ │ │ │ ├── dna-pairing.chinese.md │ │ │ │ ├── drop-it.chinese.md │ │ │ │ ├── everything-be-true.chinese.md │ │ │ │ ├── make-a-person.chinese.md │ │ │ │ ├── map-the-debris.chinese.md │ │ │ │ ├── missing-letters.chinese.md │ │ │ │ ├── pig-latin.chinese.md │ │ │ │ ├── search-and-replace.chinese.md │ │ │ │ ├── seek-and-destroy.chinese.md │ │ │ │ ├── smallest-common-multiple.chinese.md │ │ │ │ ├── sorted-union.chinese.md │ │ │ │ ├── spinal-tap-case.chinese.md │ │ │ │ ├── steamroller.chinese.md │ │ │ │ ├── sum-all-numbers-in-a-range.chinese.md │ │ │ │ ├── sum-all-odd-fibonacci-numbers.chinese.md │ │ │ │ ├── sum-all-primes.chinese.md │ │ │ │ └── wherefore-art-thou.chinese.md │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ ├── caesars-cipher.chinese.md │ │ │ │ ├── cash-register.chinese.md │ │ │ │ ├── palindrome-checker.chinese.md │ │ │ │ ├── roman-numeral-converter.chinese.md │ │ │ │ └── telephone-number-validator.chinese.md │ │ │ ├── object-oriented-programming │ │ │ │ ├── add-methods-after-inheritance.chinese.md │ │ │ │ ├── change-the-prototype-to-a-new-object.chinese.md │ │ │ │ ├── create-a-basic-javascript-object.chinese.md │ │ │ │ ├── create-a-method-on-an-object.chinese.md │ │ │ │ ├── define-a-constructor-function.chinese.md │ │ │ │ ├── extend-constructors-to-receive-arguments.chinese.md │ │ │ │ ├── inherit-behaviors-from-a-supertype.chinese.md │ │ │ │ ├── iterate-over-all-properties.chinese.md │ │ │ │ ├── make-code-more-reusable-with-the-this-keyword.chinese.md │ │ │ │ ├── override-inherited-methods.chinese.md │ │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.chinese.md │ │ │ │ ├── reset-an-inherited-constructor-property.chinese.md │ │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.chinese.md │ │ │ │ ├── understand-own-properties.chinese.md │ │ │ │ ├── understand-the-constructor-property.chinese.md │ │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.chinese.md │ │ │ │ ├── understand-the-prototype-chain.chinese.md │ │ │ │ ├── understand-where-an-objects-prototype-comes-from.chinese.md │ │ │ │ ├── use-a-constructor-to-create-objects.chinese.md │ │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.chinese.md │ │ │ │ ├── use-an-iife-to-create-a-module.chinese.md │ │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.chinese.md │ │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.chinese.md │ │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.chinese.md │ │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.chinese.md │ │ │ │ └── verify-an-objects-constructor-with-instanceof.chinese.md │ │ │ └── regular-expressions │ │ │ │ ├── check-for-all-or-none.chinese.md │ │ │ │ ├── check-for-mixed-grouping-of-characters.chinese.md │ │ │ │ ├── extract-matches.chinese.md │ │ │ │ ├── find-characters-with-lazy-matching.chinese.md │ │ │ │ ├── find-more-than-the-first-match.chinese.md │ │ │ │ ├── find-one-or-more-criminals-in-a-hunt.chinese.md │ │ │ │ ├── ignore-case-while-matching.chinese.md │ │ │ │ ├── match-a-literal-string-with-different-possibilities.chinese.md │ │ │ │ ├── match-all-letters-and-numbers.chinese.md │ │ │ │ ├── match-all-non-numbers.chinese.md │ │ │ │ ├── match-all-numbers.chinese.md │ │ │ │ ├── match-anything-with-wildcard-period.chinese.md │ │ │ │ ├── match-beginning-string-patterns.chinese.md │ │ │ │ ├── match-characters-that-occur-one-or-more-times.chinese.md │ │ │ │ ├── match-characters-that-occur-zero-or-more-times.chinese.md │ │ │ │ ├── match-ending-string-patterns.chinese.md │ │ │ │ ├── match-everything-but-letters-and-numbers.chinese.md │ │ │ │ ├── match-letters-of-the-alphabet.chinese.md │ │ │ │ ├── match-literal-strings.chinese.md │ │ │ │ ├── match-non-whitespace-characters.chinese.md │ │ │ │ ├── match-numbers-and-letters-of-the-alphabet.chinese.md │ │ │ │ ├── match-single-character-with-multiple-possibilities.chinese.md │ │ │ │ ├── match-single-characters-not-specified.chinese.md │ │ │ │ ├── match-whitespace.chinese.md │ │ │ │ ├── positive-and-negative-lookahead.chinese.md │ │ │ │ ├── remove-whitespace-from-start-and-end.chinese.md │ │ │ │ ├── restrict-possible-usernames.chinese.md │ │ │ │ ├── reuse-patterns-using-capture-groups.chinese.md │ │ │ │ ├── specify-exact-number-of-matches.chinese.md │ │ │ │ ├── specify-only-the-lower-number-of-matches.chinese.md │ │ │ │ ├── specify-upper-and-lower-number-of-matches.chinese.md │ │ │ │ ├── use-capture-groups-to-search-and-replace.chinese.md │ │ │ │ └── using-the-test-method.chinese.md │ │ ├── 03-front-end-libraries │ │ │ ├── bootstrap │ │ │ │ ├── add-elements-within-your-bootstrap-wells.chinese.md │ │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.chinese.md │ │ │ │ ├── add-font-awesome-icons-to-our-buttons.chinese.md │ │ │ │ ├── add-id-attributes-to-bootstrap-elements.chinese.md │ │ │ │ ├── apply-the-default-bootstrap-button-style.chinese.md │ │ │ │ ├── call-out-optional-actions-with-btn-info.chinese.md │ │ │ │ ├── center-text-with-bootstrap.chinese.md │ │ │ │ ├── create-a-block-element-bootstrap-button.chinese.md │ │ │ │ ├── create-a-bootstrap-button.chinese.md │ │ │ │ ├── create-a-bootstrap-headline.chinese.md │ │ │ │ ├── create-a-bootstrap-row.chinese.md │ │ │ │ ├── create-a-class-to-target-with-jquery-selectors.chinese.md │ │ │ │ ├── create-a-custom-heading.chinese.md │ │ │ │ ├── create-bootstrap-wells.chinese.md │ │ │ │ ├── ditch-custom-css-for-bootstrap.chinese.md │ │ │ │ ├── give-each-element-a-unique-id.chinese.md │ │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.chinese.md │ │ │ │ ├── label-bootstrap-buttons.chinese.md │ │ │ │ ├── label-bootstrap-wells.chinese.md │ │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.chinese.md │ │ │ │ ├── make-images-mobile-responsive.chinese.md │ │ │ │ ├── responsively-style-checkboxes.chinese.md │ │ │ │ ├── responsively-style-radio-buttons.chinese.md │ │ │ │ ├── split-your-bootstrap-row.chinese.md │ │ │ │ ├── style-text-inputs-as-form-controls.chinese.md │ │ │ │ ├── taste-the-bootstrap-button-color-rainbow.chinese.md │ │ │ │ ├── use-a-span-to-target-inline-elements.chinese.md │ │ │ │ ├── use-comments-to-clarify-code.chinese.md │ │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.chinese.md │ │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.chinese.md │ │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.chinese.md │ │ │ ├── front-end-libraries-projects │ │ │ │ ├── build-a-drum-machine.chinese.md │ │ │ │ ├── build-a-javascript-calculator.chinese.md │ │ │ │ ├── build-a-markdown-previewer.chinese.md │ │ │ │ ├── build-a-pomodoro-clock.chinese.md │ │ │ │ └── build-a-random-quote-machine.chinese.md │ │ │ ├── jquery │ │ │ │ ├── change-text-inside-an-element-using-jquery.chinese.md │ │ │ │ ├── change-the-css-of-an-element-using-jquery.chinese.md │ │ │ │ ├── clone-an-element-using-jquery.chinese.md │ │ │ │ ├── delete-your-jquery-functions.chinese.md │ │ │ │ ├── disable-an-element-using-jquery.chinese.md │ │ │ │ ├── learn-how-script-tags-and-document-ready-work.chinese.md │ │ │ │ ├── remove-an-element-using-jquery.chinese.md │ │ │ │ ├── remove-classes-from-an-element-with-jquery.chinese.md │ │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.chinese.md │ │ │ │ ├── target-elements-by-class-using-jquery.chinese.md │ │ │ │ ├── target-elements-by-id-using-jquery.chinese.md │ │ │ │ ├── target-even-elements-using-jquery.chinese.md │ │ │ │ ├── target-html-elements-with-selectors-using-jquery.chinese.md │ │ │ │ ├── target-the-children-of-an-element-using-jquery.chinese.md │ │ │ │ ├── target-the-parent-of-an-element-using-jquery.chinese.md │ │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.chinese.md │ │ │ │ ├── use-appendto-to-move-elements-with-jquery.chinese.md │ │ │ │ └── use-jquery-to-modify-the-entire-page.chinese.md │ │ │ ├── react-and-redux │ │ │ │ ├── connect-redux-to-react.chinese.md │ │ │ │ ├── connect-redux-to-the-messages-app.chinese.md │ │ │ │ ├── extract-local-state-into-redux.chinese.md │ │ │ │ ├── extract-state-logic-to-redux.chinese.md │ │ │ │ ├── getting-started-with-react-redux.chinese.md │ │ │ │ ├── manage-state-locally-first.chinese.md │ │ │ │ ├── map-dispatch-to-props.chinese.md │ │ │ │ ├── map-state-to-props.chinese.md │ │ │ │ ├── moving-forward-from-here.chinese.md │ │ │ │ └── use-provider-to-connect-redux-to-react.chinese.md │ │ │ ├── react │ │ │ │ ├── access-props-using-this.props.chinese.md │ │ │ │ ├── add-comments-in-jsx.chinese.md │ │ │ │ ├── add-event-listeners.chinese.md │ │ │ │ ├── add-inline-styles-in-react.chinese.md │ │ │ │ ├── bind-this-to-a-class-method.chinese.md │ │ │ │ ├── change-inline-css-conditionally-based-on-component-state.chinese.md │ │ │ │ ├── compose-react-components.chinese.md │ │ │ │ ├── create-a-complex-jsx-element.chinese.md │ │ │ │ ├── create-a-component-with-composition.chinese.md │ │ │ │ ├── create-a-controlled-form.chinese.md │ │ │ │ ├── create-a-controlled-input.chinese.md │ │ │ │ ├── create-a-react-component.chinese.md │ │ │ │ ├── create-a-simple-jsx-element.chinese.md │ │ │ │ ├── create-a-stateful-component.chinese.md │ │ │ │ ├── create-a-stateless-functional-component.chinese.md │ │ │ │ ├── define-an-html-class-in-jsx.chinese.md │ │ │ │ ├── give-sibling-elements-a-unique-key-attribute.chinese.md │ │ │ │ ├── introducing-inline-styles.chinese.md │ │ │ │ ├── learn-about-self-closing-jsx-tags.chinese.md │ │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.chinese.md │ │ │ │ ├── override-default-props.chinese.md │ │ │ │ ├── pass-a-callback-as-props.chinese.md │ │ │ │ ├── pass-an-array-as-props.chinese.md │ │ │ │ ├── pass-props-to-a-stateless-functional-component.chinese.md │ │ │ │ ├── pass-state-as-props-to-child-components.chinese.md │ │ │ │ ├── render-a-class-component-to-the-dom.chinese.md │ │ │ │ ├── render-conditionally-from-props.chinese.md │ │ │ │ ├── render-html-elements-to-the-dom.chinese.md │ │ │ │ ├── render-react-on-the-server-with-rendertostring.chinese.md │ │ │ │ ├── render-state-in-the-user-interface-another-way.chinese.md │ │ │ │ ├── render-state-in-the-user-interface.chinese.md │ │ │ │ ├── render-with-an-if-else-condition.chinese.md │ │ │ │ ├── review-using-props-with-stateless-functional-components.chinese.md │ │ │ │ ├── set-state-with-this.setstate.chinese.md │ │ │ │ ├── use--for-a-more-concise-conditional.chinese.md │ │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.chinese.md │ │ │ │ ├── use-advanced-javascript-in-react-render-method.chinese.md │ │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.chinese.md │ │ │ │ ├── use-array.map-to-dynamically-render-elements.chinese.md │ │ │ │ ├── use-default-props.chinese.md │ │ │ │ ├── use-proptypes-to-define-the-props-you-expect.chinese.md │ │ │ │ ├── use-react-to-render-nested-components.chinese.md │ │ │ │ ├── use-state-to-toggle-an-element.chinese.md │ │ │ │ ├── use-the-lifecycle-method-componentdidmount.chinese.md │ │ │ │ ├── use-the-lifecycle-method-componentwillmount.chinese.md │ │ │ │ ├── write-a-react-component-from-scratch.chinese.md │ │ │ │ └── write-a-simple-counter.chinese.md │ │ │ ├── redux │ │ │ │ ├── combine-multiple-reducers.chinese.md │ │ │ │ ├── copy-an-object-with-object.assign.chinese.md │ │ │ │ ├── create-a-redux-store.chinese.md │ │ │ │ ├── define-a-redux-action.chinese.md │ │ │ │ ├── define-an-action-creator.chinese.md │ │ │ │ ├── dispatch-an-action-event.chinese.md │ │ │ │ ├── get-state-from-the-redux-store.chinese.md │ │ │ │ ├── handle-an-action-in-the-store.chinese.md │ │ │ │ ├── never-mutate-state.chinese.md │ │ │ │ ├── register-a-store-listener.chinese.md │ │ │ │ ├── remove-an-item-from-an-array.chinese.md │ │ │ │ ├── send-action-data-to-the-store.chinese.md │ │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.chinese.md │ │ │ │ ├── use-const-for-action-types.chinese.md │ │ │ │ ├── use-middleware-to-handle-asynchronous-actions.chinese.md │ │ │ │ ├── use-the-spread-operator-on-arrays.chinese.md │ │ │ │ └── write-a-counter-with-redux.chinese.md │ │ │ └── sass │ │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.chinese.md │ │ │ │ ├── create-reusable-css-with-mixins.chinese.md │ │ │ │ ├── extend-one-set-of-css-styles-to-another-element.chinese.md │ │ │ │ ├── nest-css-with-sass.chinese.md │ │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.chinese.md │ │ │ │ ├── store-data-with-sass-variables.chinese.md │ │ │ │ ├── use-each-to-map-over-items-in-a-list.chinese.md │ │ │ │ ├── use-for-to-create-a-sass-loop.chinese.md │ │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.chinese.md │ │ ├── 04-data-visualization │ │ │ ├── data-visualization-projects │ │ │ │ ├── visualize-data-with-a-bar-chart.chinese.md │ │ │ │ ├── visualize-data-with-a-choropleth-map.chinese.md │ │ │ │ ├── visualize-data-with-a-heat-map.chinese.md │ │ │ │ ├── visualize-data-with-a-scatterplot-graph.chinese.md │ │ │ │ └── visualize-data-with-a-treemap-diagram.chinese.md │ │ │ ├── data-visualization-with-d3 │ │ │ │ ├── add-a-hover-effect-to-a-d3-element.chinese.md │ │ │ │ ├── add-a-tooltip-to-a-d3-element.chinese.md │ │ │ │ ├── add-attributes-to-the-circle-elements.chinese.md │ │ │ │ ├── add-axes-to-a-visualization.chinese.md │ │ │ │ ├── add-classes-with-d3.chinese.md │ │ │ │ ├── add-document-elements-with-d3.chinese.md │ │ │ │ ├── add-inline-styling-to-elements.chinese.md │ │ │ │ ├── add-labels-to-d3-elements.chinese.md │ │ │ │ ├── add-labels-to-scatter-plot-circles.chinese.md │ │ │ │ ├── change-styles-based-on-data.chinese.md │ │ │ │ ├── change-the-color-of-an-svg-element.chinese.md │ │ │ │ ├── change-the-presentation-of-a-bar-chart.chinese.md │ │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.chinese.md │ │ │ │ ├── create-a-linear-scale-with-d3.chinese.md │ │ │ │ ├── create-a-scatterplot-with-svg-circles.chinese.md │ │ │ │ ├── display-shapes-with-svg.chinese.md │ │ │ │ ├── dynamically-change-the-height-of-each-bar.chinese.md │ │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.chinese.md │ │ │ │ ├── invert-svg-elements.chinese.md │ │ │ │ ├── learn-about-svg-in-d3.chinese.md │ │ │ │ ├── select-a-group-of-elements-with-d3.chinese.md │ │ │ │ ├── set-a-domain-and-a-range-on-a-scale.chinese.md │ │ │ │ ├── style-d3-labels.chinese.md │ │ │ │ ├── update-the-height-of-an-element-dynamically.chinese.md │ │ │ │ ├── use-a-pre-defined-scale-to-place-elements.chinese.md │ │ │ │ ├── use-dynamic-scales.chinese.md │ │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.chinese.md │ │ │ │ ├── work-with-data-in-d3.chinese.md │ │ │ │ └── work-with-dynamic-data-in-d3.chinese.md │ │ │ └── json-apis-and-ajax │ │ │ │ ├── access-the-json-data-from-an-api.chinese.md │ │ │ │ ├── change-text-with-click-events.chinese.md │ │ │ │ ├── convert-json-data-to-html.chinese.md │ │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.chinese.md │ │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.chinese.md │ │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.chinese.md │ │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.chinese.md │ │ │ │ ├── pre-filter-json-to-get-the-data-you-need.chinese.md │ │ │ │ └── render-images-from-data-sources.chinese.md │ │ ├── 05-apis-and-microservices │ │ │ ├── apis-and-microservices-projects │ │ │ │ ├── exercise-tracker.chinese.md │ │ │ │ ├── file-metadata-microservice.chinese.md │ │ │ │ ├── request-header-parser-microservice.chinese.md │ │ │ │ ├── timestamp-microservice.chinese.md │ │ │ │ └── url-shortener-microservice.chinese.md │ │ │ ├── basic-node-and-express │ │ │ │ ├── chain-middleware-to-create-a-time-server.chinese.md │ │ │ │ ├── get-data-from-post-requests.chinese.md │ │ │ │ ├── get-query-parameter-input-from-the-client.chinese.md │ │ │ │ ├── get-route-parameter-input-from-the-client.chinese.md │ │ │ │ ├── implement-a-root-level-request-logger-middleware.chinese.md │ │ │ │ ├── meet-the-node-console.chinese.md │ │ │ │ ├── serve-an-html-file.chinese.md │ │ │ │ ├── serve-json-on-a-specific-route.chinese.md │ │ │ │ ├── serve-static-assets.chinese.md │ │ │ │ ├── start-a-working-express-server.chinese.md │ │ │ │ ├── use-body-parser-to-parse-post-requests.chinese.md │ │ │ │ └── use-the-.env-file.chinese.md │ │ │ ├── managing-packages-with-npm │ │ │ │ ├── add-a-description-to-your-package.json.chinese.md │ │ │ │ ├── add-a-license-to-your-package.json.chinese.md │ │ │ │ ├── add-a-version-to-your-package.json.chinese.md │ │ │ │ ├── add-keywords-to-your-package.json.chinese.md │ │ │ │ ├── expand-your-project-with-external-packages-from-npm.chinese.md │ │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.chinese.md │ │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.chinese.md │ │ │ │ ├── remove-a-package-from-your-dependencies.chinese.md │ │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.chinese.md │ │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.chinese.md │ │ │ └── mongodb-and-mongoose │ │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.chinese.md │ │ │ │ ├── create-a-model.chinese.md │ │ │ │ ├── create-and-save-a-record-of-a-model.chinese.md │ │ │ │ ├── create-many-records-with-model.create.chinese.md │ │ │ │ ├── delete-many-documents-with-model.remove.chinese.md │ │ │ │ ├── delete-one-document-using-model.findbyidandremove.chinese.md │ │ │ │ ├── install-and-set-up-mongoose.chinese.md │ │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.chinese.md │ │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.chinese.md │ │ │ │ ├── use-model.find-to-search-your-database.chinese.md │ │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.chinese.md │ │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.chinese.md │ │ ├── 06-quality-assurance │ │ │ ├── advanced-node-and-express │ │ │ │ ├── announce-new-users.chinese.md │ │ │ │ ├── authentication-strategies.chinese.md │ │ │ │ ├── authentication-with-socket.io.chinese.md │ │ │ │ ├── clean-up-your-project-with-modules.chinese.md │ │ │ │ ├── communicate-by-emitting.chinese.md │ │ │ │ ├── create-new-middleware.chinese.md │ │ │ │ ├── handle-a-disconnect.chinese.md │ │ │ │ ├── hashing-your-passwords.chinese.md │ │ │ │ ├── how-to-put-a-profile-together.chinese.md │ │ │ │ ├── how-to-use-passport-strategies.chinese.md │ │ │ │ ├── implement-the-serialization-of-a-passport-user.chinese.md │ │ │ │ ├── implementation-of-social-authentication-ii.chinese.md │ │ │ │ ├── implementation-of-social-authentication-iii.chinese.md │ │ │ │ ├── implementation-of-social-authentication.chinese.md │ │ │ │ ├── logging-a-user-out.chinese.md │ │ │ │ ├── registration-of-new-users.chinese.md │ │ │ │ ├── send-and-display-chat-messages.chinese.md │ │ │ │ ├── serialization-of-a-user-object.chinese.md │ │ │ │ ├── set-up-a-template-engine.chinese.md │ │ │ │ ├── set-up-passport.chinese.md │ │ │ │ ├── set-up-the-environment.chinese.md │ │ │ │ └── use-a-template-engines-powers.chinese.md │ │ │ ├── quality-assurance-and-testing-with-chai │ │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.chinese.md │ │ │ │ ├── compare-the-properties-of-two-elements.chinese.md │ │ │ │ ├── learn-how-javascript-assertions-work.chinese.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.chinese.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.chinese.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.chinese.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.chinese.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.chinese.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser.chinese.md │ │ │ │ ├── test-for-truthiness.chinese.md │ │ │ │ ├── test-if-a-string-contains-a-substring.chinese.md │ │ │ │ ├── test-if-a-value-falls-within-a-specific-range.chinese.md │ │ │ │ ├── test-if-a-value-is-a-string.chinese.md │ │ │ │ ├── test-if-a-value-is-an-array.chinese.md │ │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.chinese.md │ │ │ │ ├── test-if-a-variable-or-function-is-defined.chinese.md │ │ │ │ ├── test-if-an-array-contains-an-item.chinese.md │ │ │ │ ├── test-if-an-object-has-a-property.chinese.md │ │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.chinese.md │ │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.chinese.md │ │ │ │ ├── use-assert.isok-and-assert.isnotok.chinese.md │ │ │ │ ├── use-regular-expressions-to-test-a-string.chinese.md │ │ │ │ ├── use-the-double-equals-to-assert-equality.chinese.md │ │ │ │ └── use-the-triple-equals-to-assert-strict-equality.chinese.md │ │ │ └── quality-assurance-projects │ │ │ │ ├── american-british-translator.chinese.md │ │ │ │ ├── issue-tracker.chinese.md │ │ │ │ ├── metric-imperial-converter.chinese.md │ │ │ │ ├── personal-library.chinese.md │ │ │ │ └── sudoku-solver.chinese.md │ │ ├── 07-scientific-computing-with-python │ │ │ ├── python-for-everybody │ │ │ │ ├── build-your-own-functions.chinese.md │ │ │ │ ├── comparing-and-sorting-tuples.chinese.md │ │ │ │ ├── conditional-execution.chinese.md │ │ │ │ ├── data-visualization-mailing-lists.chinese.md │ │ │ │ ├── data-visualization-page-rank.chinese.md │ │ │ │ ├── dictionaries-and-loops.chinese.md │ │ │ │ ├── dictionaries-common-applications.chinese.md │ │ │ │ ├── files-as-a-sequence.chinese.md │ │ │ │ ├── intermediate-expressions.chinese.md │ │ │ │ ├── intermediate-strings.chinese.md │ │ │ │ ├── introduction-elements-of-python.chinese.md │ │ │ │ ├── introduction-hardware-achitecture.chinese.md │ │ │ │ ├── introduction-python-as-a-language.chinese.md │ │ │ │ ├── introduction-why-program.chinese.md │ │ │ │ ├── iterations-definite-loops.chinese.md │ │ │ │ ├── iterations-loop-idioms.chinese.md │ │ │ │ ├── iterations-more-patterns.chinese.md │ │ │ │ ├── loops-and-iterations.chinese.md │ │ │ │ ├── make-a-relational-database.chinese.md │ │ │ │ ├── more-conditional-structures.chinese.md │ │ │ │ ├── networking-protocol.chinese.md │ │ │ │ ├── networking-text-processing.chinese.md │ │ │ │ ├── networking-using-urllib-in-python.chinese.md │ │ │ │ ├── networking-web-scraping-with-python.chinese.md │ │ │ │ ├── networking-with-python.chinese.md │ │ │ │ ├── networking-write-a-web-browser.chinese.md │ │ │ │ ├── object-lifecycle.chinese.md │ │ │ │ ├── objects-a-sample-class.chinese.md │ │ │ │ ├── objects-inheritance.chinese.md │ │ │ │ ├── python-dictionaries.chinese.md │ │ │ │ ├── python-functions.chinese.md │ │ │ │ ├── python-lists.chinese.md │ │ │ │ ├── python-objects.chinese.md │ │ │ │ ├── reading-files.chinese.md │ │ │ │ ├── regular-expressions-matching-and-extracting-data.chinese.md │ │ │ │ ├── regular-expressions-practical-applications.chinese.md │ │ │ │ ├── regular-expressions.chinese.md │ │ │ │ ├── relational-database-design.chinese.md │ │ │ │ ├── relational-databases-and-sqlite.chinese.md │ │ │ │ ├── relational-databases-join-operation.chinese.md │ │ │ │ ├── relational-databases-many-to-many-relationships.chinese.md │ │ │ │ ├── relational-databases-relationship-building.chinese.md │ │ │ │ ├── representing-relationships-in-a-relational-database.chinese.md │ │ │ │ ├── strings-and-lists.chinese.md │ │ │ │ ├── strings-in-python.chinese.md │ │ │ │ ├── the-tuples-collection.chinese.md │ │ │ │ ├── using-web-services.chinese.md │ │ │ │ ├── variables-expressions-and-statements.chinese.md │ │ │ │ ├── visualizing-data-with-python.chinese.md │ │ │ │ ├── web-services-api-rate-limiting-and-security.chinese.md │ │ │ │ ├── web-services-apis.chinese.md │ │ │ │ ├── web-services-json.chinese.md │ │ │ │ ├── web-services-service-oriented-approach.chinese.md │ │ │ │ ├── web-services-xml-schema.chinese.md │ │ │ │ ├── web-services-xml.chinese.md │ │ │ │ └── working-with-lists.chinese.md │ │ │ └── scientific-computing-with-python-projects │ │ │ │ ├── arithmetic-formatter.chinese.md │ │ │ │ ├── budget-app.chinese.md │ │ │ │ ├── polygon-area-calculator.chinese.md │ │ │ │ ├── probability-calculator.chinese.md │ │ │ │ └── time-calculator.chinese.md │ │ ├── 08-data-analysis-with-python │ │ │ ├── data-analysis-with-python-course │ │ │ │ ├── data-analysis-example-a.chinese.md │ │ │ │ ├── data-analysis-example-b.chinese.md │ │ │ │ ├── data-cleaning-and-visualizations.chinese.md │ │ │ │ ├── data-cleaning-duplicates.chinese.md │ │ │ │ ├── data-cleaning-introduction.chinese.md │ │ │ │ ├── data-cleaning-with-dataframes.chinese.md │ │ │ │ ├── how-to-use-jupyter-notebooks-intro.chinese.md │ │ │ │ ├── introduction-to-data-analysis.chinese.md │ │ │ │ ├── jupyter-notebooks-cells.chinese.md │ │ │ │ ├── jupyter-notebooks-importing-and-exporting-data.chinese.md │ │ │ │ ├── numpy-algebra-and-size.chinese.md │ │ │ │ ├── numpy-arrays.chinese.md │ │ │ │ ├── numpy-boolean-arrays.chinese.md │ │ │ │ ├── numpy-introduction-a.chinese.md │ │ │ │ ├── numpy-introduction-b.chinese.md │ │ │ │ ├── numpy-operations.chinese.md │ │ │ │ ├── pandas-condtitional-selection-and-modifying-dataframes.chinese.md │ │ │ │ ├── pandas-creating-columns.chinese.md │ │ │ │ ├── pandas-dataframes.chinese.md │ │ │ │ ├── pandas-indexing-and-conditional-selection.chinese.md │ │ │ │ ├── pandas-introduction.chinese.md │ │ │ │ ├── parsing-html-and-saving-data.chinese.md │ │ │ │ ├── python-functions-and-collections.chinese.md │ │ │ │ ├── python-introduction.chinese.md │ │ │ │ ├── python-iteration-and-modules.chinese.md │ │ │ │ ├── reading-data-csv-and-txt.chinese.md │ │ │ │ ├── reading-data-from-databases.chinese.md │ │ │ │ └── reading-data-introduction.chinese.md │ │ │ ├── data-analysis-with-python-projects │ │ │ │ ├── demographic-data-analyzer.chinese.md │ │ │ │ ├── mean-variance-standard-deviation-calculator.chinese.md │ │ │ │ ├── medical-data-visualizer.chinese.md │ │ │ │ ├── page-view-time-series-visualizer.chinese.md │ │ │ │ └── sea-level-predictor.chinese.md │ │ │ └── numpy │ │ │ │ ├── accessing-and-changing-elements,-rows,-columns.chinese.md │ │ │ │ ├── basics-of-numpy.chinese.md │ │ │ │ ├── copying-arrays-warning.chinese.md │ │ │ │ ├── initialize-array-problem.chinese.md │ │ │ │ ├── initializing-different-arrays.chinese.md │ │ │ │ ├── loading-data-and-advanced-indexing.chinese.md │ │ │ │ ├── mathematics.chinese.md │ │ │ │ ├── reorganizing-arrays.chinese.md │ │ │ │ └── what-is-numpy.chinese.md │ │ ├── 09-information-security │ │ │ ├── information-security-projects │ │ │ │ ├── anonymous-message-board.chinese.md │ │ │ │ ├── port-scanner.chinese.md │ │ │ │ ├── secure-real-time-multiplayer-game.chinese.md │ │ │ │ ├── sha-1-password-cracker.chinese.md │ │ │ │ └── stock-price-checker.chinese.md │ │ │ ├── information-security-with-helmetjs │ │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.chinese.md │ │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.chinese.md │ │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.chinese.md │ │ │ │ ├── disable-client-side-caching-with-helmet.nocache.chinese.md │ │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.chinese.md │ │ │ │ ├── hash-and-compare-passwords-asynchronously.chinese.md │ │ │ │ ├── hash-and-compare-passwords-synchronously.chinese.md │ │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.chinese.md │ │ │ │ ├── install-and-require-helmet.chinese.md │ │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.chinese.md │ │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.chinese.md │ │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.chinese.md │ │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.chinese.md │ │ │ │ └── understand-bcrypt-hashes.chinese.md │ │ │ └── python-for-penetration-testing │ │ │ │ ├── creating-a-tcp-client.chinese.md │ │ │ │ ├── developing-a-banner-grabber.chinese.md │ │ │ │ ├── developing-a-port-scanner.chinese.md │ │ │ │ ├── developing-an-nmap-scanner-part-1.chinese.md │ │ │ │ ├── developing-an-nmap-scanner-part-2.chinese.md │ │ │ │ ├── introduction-and-setup.chinese.md │ │ │ │ └── understanding-sockets-and-creating-a-tcp-server.chinese.md │ │ ├── 10-coding-interview-prep │ │ │ ├── algorithms │ │ │ │ ├── find-the-symmetric-difference.chinese.md │ │ │ │ ├── implement-bubble-sort.chinese.md │ │ │ │ ├── implement-insertion-sort.chinese.md │ │ │ │ ├── implement-merge-sort.chinese.md │ │ │ │ ├── implement-quick-sort.chinese.md │ │ │ │ ├── implement-selection-sort.chinese.md │ │ │ │ ├── inventory-update.chinese.md │ │ │ │ ├── no-repeats-please.chinese.md │ │ │ │ └── pairwise.chinese.md │ │ │ ├── data-structures │ │ │ │ ├── add-a-new-element-to-a-binary-search-tree.chinese.md │ │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.chinese.md │ │ │ │ ├── adjacency-list.chinese.md │ │ │ │ ├── adjacency-matrix.chinese.md │ │ │ │ ├── breadth-first-search.chinese.md │ │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.chinese.md │ │ │ │ ├── create-a-circular-queue.chinese.md │ │ │ │ ├── create-a-doubly-linked-list.chinese.md │ │ │ │ ├── create-a-hash-table.chinese.md │ │ │ │ ├── create-a-linked-list-class.chinese.md │ │ │ │ ├── create-a-map-data-structure.chinese.md │ │ │ │ ├── create-a-priority-queue-class.chinese.md │ │ │ │ ├── create-a-queue-class.chinese.md │ │ │ │ ├── create-a-set-class.chinese.md │ │ │ │ ├── create-a-stack-class.chinese.md │ │ │ │ ├── create-a-trie-search-tree.chinese.md │ │ │ │ ├── create-an-es6-javascript-map.chinese.md │ │ │ │ ├── create-and-add-to-sets-in-es6.chinese.md │ │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.chinese.md │ │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.chinese.md │ │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.chinese.md │ │ │ │ ├── depth-first-search.chinese.md │ │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.chinese.md │ │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.chinese.md │ │ │ │ ├── implement-heap-sort-with-a-min-heap.chinese.md │ │ │ │ ├── incidence-matrix.chinese.md │ │ │ │ ├── insert-an-element-into-a-max-heap.chinese.md │ │ │ │ ├── invert-a-binary-tree.chinese.md │ │ │ │ ├── learn-how-a-stack-works.chinese.md │ │ │ │ ├── perform-a-difference-on-two-sets-of-data.chinese.md │ │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.chinese.md │ │ │ │ ├── perform-a-union-on-two-sets.chinese.md │ │ │ │ ├── perform-an-intersection-on-two-sets-of-data.chinese.md │ │ │ │ ├── remove-an-element-from-a-max-heap.chinese.md │ │ │ │ ├── remove-elements-from-a-linked-list-by-index.chinese.md │ │ │ │ ├── remove-elements-from-a-linked-list.chinese.md │ │ │ │ ├── remove-items-from-a-set-in-es6.chinese.md │ │ │ │ ├── reverse-a-doubly-linked-list.chinese.md │ │ │ │ ├── search-within-a-linked-list.chinese.md │ │ │ │ ├── typed-arrays.chinese.md │ │ │ │ ├── use-.has-and-.size-on-an-es6-set.chinese.md │ │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.chinese.md │ │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.chinese.md │ │ │ │ ├── use-spread-and-notes-for-es5-set-integration.chinese.md │ │ │ │ └── work-with-nodes-in-a-linked-list.chinese.md │ │ │ ├── project-euler │ │ │ │ ├── problem-1-multiples-of-3-and-5.chinese.md │ │ │ │ ├── problem-10-summation-of-primes.chinese.md │ │ │ │ ├── problem-100-arranged-probability.chinese.md │ │ │ │ ├── problem-101-optimum-polynomial.chinese.md │ │ │ │ ├── problem-102-triangle-containment.chinese.md │ │ │ │ ├── problem-103-special-subset-sums-optimum.chinese.md │ │ │ │ ├── problem-104-pandigital-fibonacci-ends.chinese.md │ │ │ │ ├── problem-105-special-subset-sums-testing.chinese.md │ │ │ │ ├── problem-106-special-subset-sums-meta-testing.chinese.md │ │ │ │ ├── problem-107-minimal-network.chinese.md │ │ │ │ ├── problem-108-diophantine-reciprocals-i.chinese.md │ │ │ │ ├── problem-109-darts.chinese.md │ │ │ │ ├── problem-11-largest-product-in-a-grid.chinese.md │ │ │ │ ├── problem-110-diophantine-reciprocals-ii.chinese.md │ │ │ │ ├── problem-111-primes-with-runs.chinese.md │ │ │ │ ├── problem-112-bouncy-numbers.chinese.md │ │ │ │ ├── problem-113-non-bouncy-numbers.chinese.md │ │ │ │ ├── problem-114-counting-block-combinations-i.chinese.md │ │ │ │ ├── problem-115-counting-block-combinations-ii.chinese.md │ │ │ │ ├── problem-116-red-green-or-blue-tiles.chinese.md │ │ │ │ ├── problem-117-red-green-and-blue-tiles.chinese.md │ │ │ │ ├── problem-118-pandigital-prime-sets.chinese.md │ │ │ │ ├── problem-119-digit-power-sum.chinese.md │ │ │ │ ├── problem-12-highly-divisible-triangular-number.chinese.md │ │ │ │ ├── problem-120-square-remainders.chinese.md │ │ │ │ ├── problem-121-disc-game-prize-fund.chinese.md │ │ │ │ ├── problem-122-efficient-exponentiation.chinese.md │ │ │ │ ├── problem-123-prime-square-remainders.chinese.md │ │ │ │ ├── problem-124-ordered-radicals.chinese.md │ │ │ │ ├── problem-125-palindromic-sums.chinese.md │ │ │ │ ├── problem-126-cuboid-layers.chinese.md │ │ │ │ ├── problem-127-abc-hits.chinese.md │ │ │ │ ├── problem-128-hexagonal-tile-differences.chinese.md │ │ │ │ ├── problem-129-repunit-divisibility.chinese.md │ │ │ │ ├── problem-13-large-sum.chinese.md │ │ │ │ ├── problem-130-composites-with-prime-repunit-property.chinese.md │ │ │ │ ├── problem-131-prime-cube-partnership.chinese.md │ │ │ │ ├── problem-132-large-repunit-factors.chinese.md │ │ │ │ ├── problem-133-repunit-nonfactors.chinese.md │ │ │ │ ├── problem-134-prime-pair-connection.chinese.md │ │ │ │ ├── problem-135-same-differences.chinese.md │ │ │ │ ├── problem-136-singleton-difference.chinese.md │ │ │ │ ├── problem-137-fibonacci-golden-nuggets.chinese.md │ │ │ │ ├── problem-138-special-isosceles-triangles.chinese.md │ │ │ │ ├── problem-139-pythagorean-tiles.chinese.md │ │ │ │ ├── problem-14-longest-collatz-sequence.chinese.md │ │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.chinese.md │ │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.chinese.md │ │ │ │ ├── problem-142-perfect-square-collection.chinese.md │ │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.chinese.md │ │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.chinese.md │ │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.chinese.md │ │ │ │ ├── problem-146-investigating-a-prime-pattern.chinese.md │ │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.chinese.md │ │ │ │ ├── problem-148-exploring-pascals-triangle.chinese.md │ │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.chinese.md │ │ │ │ ├── problem-15-lattice-paths.chinese.md │ │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.chinese.md │ │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.chinese.md │ │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.chinese.md │ │ │ │ ├── problem-153-investigating-gaussian-integers.chinese.md │ │ │ │ ├── problem-154-exploring-pascals-pyramid.chinese.md │ │ │ │ ├── problem-155-counting-capacitor-circuits.chinese.md │ │ │ │ ├── problem-156-counting-digits.chinese.md │ │ │ │ ├── problem-157-solving-the-diophantine-equation.chinese.md │ │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.chinese.md │ │ │ │ ├── problem-159-digital-root-sums-of-factorisations.chinese.md │ │ │ │ ├── problem-16-power-digit-sum.chinese.md │ │ │ │ ├── problem-160-factorial-trailing-digits.chinese.md │ │ │ │ ├── problem-161-triominoes.chinese.md │ │ │ │ ├── problem-162-hexadecimal-numbers.chinese.md │ │ │ │ ├── problem-163-cross-hatched-triangles.chinese.md │ │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.chinese.md │ │ │ │ ├── problem-165-intersections.chinese.md │ │ │ │ ├── problem-166-criss-cross.chinese.md │ │ │ │ ├── problem-167-investigating-ulam-sequences.chinese.md │ │ │ │ ├── problem-168-number-rotations.chinese.md │ │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.chinese.md │ │ │ │ ├── problem-17-number-letter-counts.chinese.md │ │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.chinese.md │ │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.chinese.md │ │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.chinese.md │ │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.chinese.md │ │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.chinese.md │ │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.chinese.md │ │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.chinese.md │ │ │ │ ├── problem-177-integer-angled-quadrilaterals.chinese.md │ │ │ │ ├── problem-178-step-numbers.chinese.md │ │ │ │ ├── problem-179-consecutive-positive-divisors.chinese.md │ │ │ │ ├── problem-18-maximum-path-sum-i.chinese.md │ │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.chinese.md │ │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.chinese.md │ │ │ │ ├── problem-182-rsa-encryption.chinese.md │ │ │ │ ├── problem-183-maximum-product-of-parts.chinese.md │ │ │ │ ├── problem-184-triangles-containing-the-origin.chinese.md │ │ │ │ ├── problem-185-number-mind.chinese.md │ │ │ │ ├── problem-186-connectedness-of-a-network.chinese.md │ │ │ │ ├── problem-187-semiprimes.chinese.md │ │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.chinese.md │ │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.chinese.md │ │ │ │ ├── problem-19-counting-sundays.chinese.md │ │ │ │ ├── problem-190-maximising-a-weighted-product.chinese.md │ │ │ │ ├── problem-191-prize-strings.chinese.md │ │ │ │ ├── problem-192-best-approximations.chinese.md │ │ │ │ ├── problem-193-squarefree-numbers.chinese.md │ │ │ │ ├── problem-194-coloured-configurations.chinese.md │ │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.chinese.md │ │ │ │ ├── problem-196-prime-triplets.chinese.md │ │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.chinese.md │ │ │ │ ├── problem-198-ambiguous-numbers.chinese.md │ │ │ │ ├── problem-199-iterative-circle-packing.chinese.md │ │ │ │ ├── problem-2-even-fibonacci-numbers.chinese.md │ │ │ │ ├── problem-20-factorial-digit-sum.chinese.md │ │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.chinese.md │ │ │ │ ├── problem-201-subsets-with-a-unique-sum.chinese.md │ │ │ │ ├── problem-202-laserbeam.chinese.md │ │ │ │ ├── problem-203-squarefree-binomial-coefficients.chinese.md │ │ │ │ ├── problem-204-generalised-hamming-numbers.chinese.md │ │ │ │ ├── problem-205-dice-game.chinese.md │ │ │ │ ├── problem-206-concealed-square.chinese.md │ │ │ │ ├── problem-207-integer-partition-equations.chinese.md │ │ │ │ ├── problem-208-robot-walks.chinese.md │ │ │ │ ├── problem-209-circular-logic.chinese.md │ │ │ │ ├── problem-21-amicable-numbers.chinese.md │ │ │ │ ├── problem-210-obtuse-angled-triangles.chinese.md │ │ │ │ ├── problem-211-divisor-square-sum.chinese.md │ │ │ │ ├── problem-212-combined-volume-of-cuboids.chinese.md │ │ │ │ ├── problem-213-flea-circus.chinese.md │ │ │ │ ├── problem-214-totient-chains.chinese.md │ │ │ │ ├── problem-215-crack-free-walls.chinese.md │ │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.chinese.md │ │ │ │ ├── problem-217-balanced-numbers.chinese.md │ │ │ │ ├── problem-218-perfect-right-angled-triangles.chinese.md │ │ │ │ ├── problem-219-skew-cost-coding.chinese.md │ │ │ │ ├── problem-22-names-scores.chinese.md │ │ │ │ ├── problem-220-heighway-dragon.chinese.md │ │ │ │ ├── problem-221-alexandrian-integers.chinese.md │ │ │ │ ├── problem-222-sphere-packing.chinese.md │ │ │ │ ├── problem-223-almost-right-angled-triangles-i.chinese.md │ │ │ │ ├── problem-224-almost-right-angled-triangles-ii.chinese.md │ │ │ │ ├── problem-225-tribonacci-non-divisors.chinese.md │ │ │ │ ├── problem-226-a-scoop-of-blancmange.chinese.md │ │ │ │ ├── problem-227-the-chase.chinese.md │ │ │ │ ├── problem-228-minkowski-sums.chinese.md │ │ │ │ ├── problem-229-four-representations-using-squares.chinese.md │ │ │ │ ├── problem-23-non-abundant-sums.chinese.md │ │ │ │ ├── problem-230-fibonacci-words.chinese.md │ │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.chinese.md │ │ │ │ ├── problem-232-the-race.chinese.md │ │ │ │ ├── problem-233-lattice-points-on-a-circle.chinese.md │ │ │ │ ├── problem-234-semidivisible-numbers.chinese.md │ │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.chinese.md │ │ │ │ ├── problem-236-luxury-hampers.chinese.md │ │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.chinese.md │ │ │ │ ├── problem-238-infinite-string-tour.chinese.md │ │ │ │ ├── problem-239-twenty-two-foolish-primes.chinese.md │ │ │ │ ├── problem-24-lexicographic-permutations.chinese.md │ │ │ │ ├── problem-240-top-dice.chinese.md │ │ │ │ ├── problem-241-perfection-quotients.chinese.md │ │ │ │ ├── problem-242-odd-triplets.chinese.md │ │ │ │ ├── problem-243-resilience.chinese.md │ │ │ │ ├── problem-244-sliders.chinese.md │ │ │ │ ├── problem-245-coresilience.chinese.md │ │ │ │ ├── problem-246-tangents-to-an-ellipse.chinese.md │ │ │ │ ├── problem-247-squares-under-a-hyperbola.chinese.md │ │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.chinese.md │ │ │ │ ├── problem-249-prime-subset-sums.chinese.md │ │ │ │ ├── problem-25-1000-digit-fibonacci-number.chinese.md │ │ │ │ ├── problem-250-250250.chinese.md │ │ │ │ ├── problem-251-cardano-triplets.chinese.md │ │ │ │ ├── problem-252-convex-holes.chinese.md │ │ │ │ ├── problem-253-tidying-up.chinese.md │ │ │ │ ├── problem-254-sums-of-digit-factorials.chinese.md │ │ │ │ ├── problem-255-rounded-square-roots.chinese.md │ │ │ │ ├── problem-256-tatami-free-rooms.chinese.md │ │ │ │ ├── problem-257-angular-bisectors.chinese.md │ │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.chinese.md │ │ │ │ ├── problem-259-reachable-numbers.chinese.md │ │ │ │ ├── problem-26-reciprocal-cycles.chinese.md │ │ │ │ ├── problem-260-stone-game.chinese.md │ │ │ │ ├── problem-261-pivotal-square-sums.chinese.md │ │ │ │ ├── problem-262-mountain-range.chinese.md │ │ │ │ ├── problem-263-an-engineers-dream-come-true.chinese.md │ │ │ │ ├── problem-264-triangle-centres.chinese.md │ │ │ │ ├── problem-265-binary-circles.chinese.md │ │ │ │ ├── problem-266-pseudo-square-root.chinese.md │ │ │ │ ├── problem-267-billionaire.chinese.md │ │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.chinese.md │ │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.chinese.md │ │ │ │ ├── problem-27-quadratic-primes.chinese.md │ │ │ │ ├── problem-270-cutting-squares.chinese.md │ │ │ │ ├── problem-271-modular-cubes-part-1.chinese.md │ │ │ │ ├── problem-272-modular-cubes-part-2.chinese.md │ │ │ │ ├── problem-273-sum-of-squares.chinese.md │ │ │ │ ├── problem-274-divisibility-multipliers.chinese.md │ │ │ │ ├── problem-275-balanced-sculptures.chinese.md │ │ │ │ ├── problem-276-primitive-triangles.chinese.md │ │ │ │ ├── problem-277-a-modified-collatz-sequence.chinese.md │ │ │ │ ├── problem-278-linear-combinations-of-semiprimes.chinese.md │ │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.chinese.md │ │ │ │ ├── problem-28-number-spiral-diagonals.chinese.md │ │ │ │ ├── problem-280-ant-and-seeds.chinese.md │ │ │ │ ├── problem-281-pizza-toppings.chinese.md │ │ │ │ ├── problem-282-the-ackermann-function.chinese.md │ │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.chinese.md │ │ │ │ ├── problem-284-steady-squares.chinese.md │ │ │ │ ├── problem-285-pythagorean-odds.chinese.md │ │ │ │ ├── problem-286-scoring-probabilities.chinese.md │ │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.chinese.md │ │ │ │ ├── problem-288-an-enormous-factorial.chinese.md │ │ │ │ ├── problem-289-eulerian-cycles.chinese.md │ │ │ │ ├── problem-29-distinct-powers.chinese.md │ │ │ │ ├── problem-290-digital-signature.chinese.md │ │ │ │ ├── problem-291-panaitopol-primes.chinese.md │ │ │ │ ├── problem-292-pythagorean-polygons.chinese.md │ │ │ │ ├── problem-293-pseudo-fortunate-numbers.chinese.md │ │ │ │ ├── problem-294-sum-of-digits---experience-23.chinese.md │ │ │ │ ├── problem-295-lenticular-holes.chinese.md │ │ │ │ ├── problem-296-angular-bisector-and-tangent.chinese.md │ │ │ │ ├── problem-297-zeckendorf-representation.chinese.md │ │ │ │ ├── problem-298-selective-amnesia.chinese.md │ │ │ │ ├── problem-299-three-similar-triangles.chinese.md │ │ │ │ ├── problem-3-largest-prime-factor.chinese.md │ │ │ │ ├── problem-30-digit-n-powers.chinese.md │ │ │ │ ├── problem-300-protein-folding.chinese.md │ │ │ │ ├── problem-301-nim.chinese.md │ │ │ │ ├── problem-302-strong-achilles-numbers.chinese.md │ │ │ │ ├── problem-303-multiples-with-small-digits.chinese.md │ │ │ │ ├── problem-304-primonacci.chinese.md │ │ │ │ ├── problem-305-reflexive-position.chinese.md │ │ │ │ ├── problem-306-paper-strip-game.chinese.md │ │ │ │ ├── problem-307-chip-defects.chinese.md │ │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.chinese.md │ │ │ │ ├── problem-309-integer-ladders.chinese.md │ │ │ │ ├── problem-31-coin-sums.chinese.md │ │ │ │ ├── problem-310-nim-square.chinese.md │ │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.chinese.md │ │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.chinese.md │ │ │ │ ├── problem-313-sliding-game.chinese.md │ │ │ │ ├── problem-314-the-mouse-on-the-moon.chinese.md │ │ │ │ ├── problem-315-digital-root-clocks.chinese.md │ │ │ │ ├── problem-316-numbers-in-decimal-expansions.chinese.md │ │ │ │ ├── problem-317-firecracker.chinese.md │ │ │ │ ├── problem-318-2011-nines.chinese.md │ │ │ │ ├── problem-319-bounded-sequences.chinese.md │ │ │ │ ├── problem-32-pandigital-products.chinese.md │ │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.chinese.md │ │ │ │ ├── problem-321-swapping-counters.chinese.md │ │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.chinese.md │ │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.chinese.md │ │ │ │ ├── problem-324-building-a-tower.chinese.md │ │ │ │ ├── problem-325-stone-game-ii.chinese.md │ │ │ │ ├── problem-326-modulo-summations.chinese.md │ │ │ │ ├── problem-327-rooms-of-doom.chinese.md │ │ │ │ ├── problem-328-lowest-cost-search.chinese.md │ │ │ │ ├── problem-329-prime-frog.chinese.md │ │ │ │ ├── problem-33-digit-cancelling-fractions.chinese.md │ │ │ │ ├── problem-330-eulers-number.chinese.md │ │ │ │ ├── problem-331-cross-flips.chinese.md │ │ │ │ ├── problem-332-spherical-triangles.chinese.md │ │ │ │ ├── problem-333-special-partitions.chinese.md │ │ │ │ ├── problem-334-spilling-the-beans.chinese.md │ │ │ │ ├── problem-335-gathering-the-beans.chinese.md │ │ │ │ ├── problem-336-maximix-arrangements.chinese.md │ │ │ │ ├── problem-337-totient-stairstep-sequences.chinese.md │ │ │ │ ├── problem-338-cutting-rectangular-grid-paper.chinese.md │ │ │ │ ├── problem-339-peredur-fab-efrawg.chinese.md │ │ │ │ ├── problem-34-digit-factorials.chinese.md │ │ │ │ ├── problem-340-crazy-function.chinese.md │ │ │ │ ├── problem-341-golombs-self-describing-sequence.chinese.md │ │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.chinese.md │ │ │ │ ├── problem-343-fractional-sequences.chinese.md │ │ │ │ ├── problem-344-silver-dollar-game.chinese.md │ │ │ │ ├── problem-345-matrix-sum.chinese.md │ │ │ │ ├── problem-346-strong-repunits.chinese.md │ │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.chinese.md │ │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.chinese.md │ │ │ │ ├── problem-349-langtons-ant.chinese.md │ │ │ │ ├── problem-35-circular-primes.chinese.md │ │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.chinese.md │ │ │ │ ├── problem-351-hexagonal-orchards.chinese.md │ │ │ │ ├── problem-352-blood-tests.chinese.md │ │ │ │ ├── problem-353-risky-moon.chinese.md │ │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.chinese.md │ │ │ │ ├── problem-355-maximal-coprime-subset.chinese.md │ │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.chinese.md │ │ │ │ ├── problem-357-prime-generating-integers.chinese.md │ │ │ │ ├── problem-358-cyclic-numbers.chinese.md │ │ │ │ ├── problem-359-hilberts-new-hotel.chinese.md │ │ │ │ ├── problem-36-double-base-palindromes.chinese.md │ │ │ │ ├── problem-360-scary-sphere.chinese.md │ │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.chinese.md │ │ │ │ ├── problem-362-squarefree-factors.chinese.md │ │ │ │ ├── problem-363-bzier-curves.chinese.md │ │ │ │ ├── problem-364-comfortable-distance.chinese.md │ │ │ │ ├── problem-365-a-huge-binomial-coefficient.chinese.md │ │ │ │ ├── problem-366-stone-game-iii.chinese.md │ │ │ │ ├── problem-367-bozo-sort.chinese.md │ │ │ │ ├── problem-368-a-kempner-like-series.chinese.md │ │ │ │ ├── problem-369-badugi.chinese.md │ │ │ │ ├── problem-37-truncatable-primes.chinese.md │ │ │ │ ├── problem-370-geometric-triangles.chinese.md │ │ │ │ ├── problem-371-licence-plates.chinese.md │ │ │ │ ├── problem-372-pencils-of-rays.chinese.md │ │ │ │ ├── problem-373-circumscribed-circles.chinese.md │ │ │ │ ├── problem-374-maximum-integer-partition-product.chinese.md │ │ │ │ ├── problem-375-minimum-of-subsequences.chinese.md │ │ │ │ ├── problem-376-nontransitive-sets-of-dice.chinese.md │ │ │ │ ├── problem-377-sum-of-digits-experience-13.chinese.md │ │ │ │ ├── problem-378-triangle-triples.chinese.md │ │ │ │ ├── problem-379-least-common-multiple-count.chinese.md │ │ │ │ ├── problem-38-pandigital-multiples.chinese.md │ │ │ │ ├── problem-380-amazing-mazes.chinese.md │ │ │ │ ├── problem-381-prime-k-factorial.chinese.md │ │ │ │ ├── problem-382-generating-polygons.chinese.md │ │ │ │ ├── problem-383-divisibility-comparison-between-factorials.chinese.md │ │ │ │ ├── problem-384-rudin-shapiro-sequence.chinese.md │ │ │ │ ├── problem-385-ellipses-inside-triangles.chinese.md │ │ │ │ ├── problem-386-maximum-length-of-an-antichain.chinese.md │ │ │ │ ├── problem-387-harshad-numbers.chinese.md │ │ │ │ ├── problem-388-distinct-lines.chinese.md │ │ │ │ ├── problem-389-platonic-dice.chinese.md │ │ │ │ ├── problem-39-integer-right-triangles.chinese.md │ │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.chinese.md │ │ │ │ ├── problem-391-hopping-game.chinese.md │ │ │ │ ├── problem-392-enmeshed-unit-circle.chinese.md │ │ │ │ ├── problem-393-migrating-ants.chinese.md │ │ │ │ ├── problem-394-eating-pie.chinese.md │ │ │ │ ├── problem-395-pythagorean-tree.chinese.md │ │ │ │ ├── problem-396-weak-goodstein-sequence.chinese.md │ │ │ │ ├── problem-397-triangle-on-parabola.chinese.md │ │ │ │ ├── problem-398-cutting-rope.chinese.md │ │ │ │ ├── problem-399-squarefree-fibonacci-numbers.chinese.md │ │ │ │ ├── problem-4-largest-palindrome-product.chinese.md │ │ │ │ ├── problem-40-champernownes-constant.chinese.md │ │ │ │ ├── problem-400-fibonacci-tree-game.chinese.md │ │ │ │ ├── problem-401-sum-of-squares-of-divisors.chinese.md │ │ │ │ ├── problem-402-integer-valued-polynomials.chinese.md │ │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.chinese.md │ │ │ │ ├── problem-404-crisscross-ellipses.chinese.md │ │ │ │ ├── problem-405-a-rectangular-tiling.chinese.md │ │ │ │ ├── problem-406-guessing-game.chinese.md │ │ │ │ ├── problem-407-idempotents.chinese.md │ │ │ │ ├── problem-408-admissible-paths-through-a-grid.chinese.md │ │ │ │ ├── problem-409-nim-extreme.chinese.md │ │ │ │ ├── problem-41-pandigital-prime.chinese.md │ │ │ │ ├── problem-410-circle-and-tangent-line.chinese.md │ │ │ │ ├── problem-411-uphill-paths.chinese.md │ │ │ │ ├── problem-412-gnomon-numbering.chinese.md │ │ │ │ ├── problem-413-one-child-numbers.chinese.md │ │ │ │ ├── problem-414-kaprekar-constant.chinese.md │ │ │ │ ├── problem-415-titanic-sets.chinese.md │ │ │ │ ├── problem-416-a-frogs-trip.chinese.md │ │ │ │ ├── problem-417-reciprocal-cycles-ii.chinese.md │ │ │ │ ├── problem-418-factorisation-triples.chinese.md │ │ │ │ ├── problem-419-look-and-say-sequence.chinese.md │ │ │ │ ├── problem-42-coded-triangle-numbers.chinese.md │ │ │ │ ├── problem-420-2x2-positive-integer-matrix.chinese.md │ │ │ │ ├── problem-421-prime-factors-of-n151.chinese.md │ │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.chinese.md │ │ │ │ ├── problem-423-consecutive-die-throws.chinese.md │ │ │ │ ├── problem-424-kakuro.chinese.md │ │ │ │ ├── problem-425-prime-connection.chinese.md │ │ │ │ ├── problem-426-box-ball-system.chinese.md │ │ │ │ ├── problem-427-n-sequences.chinese.md │ │ │ │ ├── problem-428-necklace-of-circles.chinese.md │ │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.chinese.md │ │ │ │ ├── problem-43-sub-string-divisibility.chinese.md │ │ │ │ ├── problem-430-range-flips.chinese.md │ │ │ │ ├── problem-431-square-space-silo.chinese.md │ │ │ │ ├── problem-432-totient-sum.chinese.md │ │ │ │ ├── problem-433-steps-in-euclids-algorithm.chinese.md │ │ │ │ ├── problem-434-rigid-graphs.chinese.md │ │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.chinese.md │ │ │ │ ├── problem-436-unfair-wager.chinese.md │ │ │ │ ├── problem-437-fibonacci-primitive-roots.chinese.md │ │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.chinese.md │ │ │ │ ├── problem-439-sum-of-sum-of-divisors.chinese.md │ │ │ │ ├── problem-44-pentagon-numbers.chinese.md │ │ │ │ ├── problem-440-gcd-and-tiling.chinese.md │ │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.chinese.md │ │ │ │ ├── problem-442-eleven-free-integers.chinese.md │ │ │ │ ├── problem-443-gcd-sequence.chinese.md │ │ │ │ ├── problem-444-the-roundtable-lottery.chinese.md │ │ │ │ ├── problem-445-retractions-a.chinese.md │ │ │ │ ├── problem-446-retractions-b.chinese.md │ │ │ │ ├── problem-447-retractions-c.chinese.md │ │ │ │ ├── problem-448-average-least-common-multiple.chinese.md │ │ │ │ ├── problem-449-chocolate-covered-candy.chinese.md │ │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.chinese.md │ │ │ │ ├── problem-450-hypocycloid-and-lattice-points.chinese.md │ │ │ │ ├── problem-451-modular-inverses.chinese.md │ │ │ │ ├── problem-452-long-products.chinese.md │ │ │ │ ├── problem-453-lattice-quadrilaterals.chinese.md │ │ │ │ ├── problem-454-diophantine-reciprocals-iii.chinese.md │ │ │ │ ├── problem-455-powers-with-trailing-digits.chinese.md │ │ │ │ ├── problem-456-triangles-containing-the-origin-ii.chinese.md │ │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.chinese.md │ │ │ │ ├── problem-458-permutations-of-project.chinese.md │ │ │ │ ├── problem-459-flipping-game.chinese.md │ │ │ │ ├── problem-46-goldbachs-other-conjecture.chinese.md │ │ │ │ ├── problem-460-an-ant-on-the-move.chinese.md │ │ │ │ ├── problem-461-almost-pi.chinese.md │ │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.chinese.md │ │ │ │ ├── problem-463-a-weird-recurrence-relation.chinese.md │ │ │ │ ├── problem-464-mbius-function-and-intervals.chinese.md │ │ │ │ ├── problem-465-polar-polygons.chinese.md │ │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.chinese.md │ │ │ │ ├── problem-467-superinteger.chinese.md │ │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.chinese.md │ │ │ │ ├── problem-469-empty-chairs.chinese.md │ │ │ │ ├── problem-47-distinct-primes-factors.chinese.md │ │ │ │ ├── problem-470-super-ramvok.chinese.md │ │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.chinese.md │ │ │ │ ├── problem-472-comfortable-distance-ii.chinese.md │ │ │ │ ├── problem-473-phigital-number-base.chinese.md │ │ │ │ ├── problem-474-last-digits-of-divisors.chinese.md │ │ │ │ ├── problem-475-music-festival.chinese.md │ │ │ │ ├── problem-476-circle-packing-ii.chinese.md │ │ │ │ ├── problem-477-number-sequence-game.chinese.md │ │ │ │ ├── problem-478-mixtures.chinese.md │ │ │ │ ├── problem-479-roots-on-the-rise.chinese.md │ │ │ │ ├── problem-48-self-powers.chinese.md │ │ │ │ ├── problem-480-the-last-question.chinese.md │ │ │ │ ├── problem-49-prime-permutations.chinese.md │ │ │ │ ├── problem-5-smallest-multiple.chinese.md │ │ │ │ ├── problem-50-consecutive-prime-sum.chinese.md │ │ │ │ ├── problem-51-prime-digit-replacements.chinese.md │ │ │ │ ├── problem-52-permuted-multiples.chinese.md │ │ │ │ ├── problem-53-combinatoric-selections.chinese.md │ │ │ │ ├── problem-54-poker-hands.chinese.md │ │ │ │ ├── problem-55-lychrel-numbers.chinese.md │ │ │ │ ├── problem-56-powerful-digit-sum.chinese.md │ │ │ │ ├── problem-57-square-root-convergents.chinese.md │ │ │ │ ├── problem-58-spiral-primes.chinese.md │ │ │ │ ├── problem-59-xor-decryption.chinese.md │ │ │ │ ├── problem-6-sum-square-difference.chinese.md │ │ │ │ ├── problem-60-prime-pair-sets.chinese.md │ │ │ │ ├── problem-61-cyclical-figurate-numbers.chinese.md │ │ │ │ ├── problem-62-cubic-permutations.chinese.md │ │ │ │ ├── problem-63-powerful-digit-counts.chinese.md │ │ │ │ ├── problem-64-odd-period-square-roots.chinese.md │ │ │ │ ├── problem-65-convergents-of-e.chinese.md │ │ │ │ ├── problem-66-diophantine-equation.chinese.md │ │ │ │ ├── problem-67-maximum-path-sum-ii.chinese.md │ │ │ │ ├── problem-68-magic-5-gon-ring.chinese.md │ │ │ │ ├── problem-69-totient-maximum.chinese.md │ │ │ │ ├── problem-7-10001st-prime.chinese.md │ │ │ │ ├── problem-70-totient-permutation.chinese.md │ │ │ │ ├── problem-71-ordered-fractions.chinese.md │ │ │ │ ├── problem-72-counting-fractions.chinese.md │ │ │ │ ├── problem-73-counting-fractions-in-a-range.chinese.md │ │ │ │ ├── problem-74-digit-factorial-chains.chinese.md │ │ │ │ ├── problem-75-singular-integer-right-triangles.chinese.md │ │ │ │ ├── problem-76-counting-summations.chinese.md │ │ │ │ ├── problem-77-prime-summations.chinese.md │ │ │ │ ├── problem-78-coin-partitions.chinese.md │ │ │ │ ├── problem-79-passcode-derivation.chinese.md │ │ │ │ ├── problem-8-largest-product-in-a-series.chinese.md │ │ │ │ ├── problem-80-square-root-digital-expansion.chinese.md │ │ │ │ ├── problem-81-path-sum-two-ways.chinese.md │ │ │ │ ├── problem-82-path-sum-three-ways.chinese.md │ │ │ │ ├── problem-83-path-sum-four-ways.chinese.md │ │ │ │ ├── problem-84-monopoly-odds.chinese.md │ │ │ │ ├── problem-85-counting-rectangles.chinese.md │ │ │ │ ├── problem-86-cuboid-route.chinese.md │ │ │ │ ├── problem-87-prime-power-triples.chinese.md │ │ │ │ ├── problem-88-product-sum-numbers.chinese.md │ │ │ │ ├── problem-89-roman-numerals.chinese.md │ │ │ │ ├── problem-9-special-pythagorean-triplet.chinese.md │ │ │ │ ├── problem-90-cube-digit-pairs.chinese.md │ │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.chinese.md │ │ │ │ ├── problem-92-square-digit-chains.chinese.md │ │ │ │ ├── problem-93-arithmetic-expressions.chinese.md │ │ │ │ ├── problem-94-almost-equilateral-triangles.chinese.md │ │ │ │ ├── problem-95-amicable-chains.chinese.md │ │ │ │ ├── problem-96-su-doku.chinese.md │ │ │ │ ├── problem-97-large-non-mersenne-prime.chinese.md │ │ │ │ ├── problem-98-anagramic-squares.chinese.md │ │ │ │ └── problem-99-largest-exponential.chinese.md │ │ │ ├── rosetta-code │ │ │ │ ├── 100-doors.chinese.md │ │ │ │ ├── 24-game.chinese.md │ │ │ │ ├── 9-billion-names-of-god-the-integer.chinese.md │ │ │ │ ├── abc-problem.chinese.md │ │ │ │ ├── abundant-deficient-and-perfect-number-classifications.chinese.md │ │ │ │ ├── accumulator-factory.chinese.md │ │ │ │ ├── ackermann-function.chinese.md │ │ │ │ ├── align-columns.chinese.md │ │ │ │ ├── amicable-pairs.chinese.md │ │ │ │ ├── averages-mode.chinese.md │ │ │ │ ├── averages-pythagorean-means.chinese.md │ │ │ │ ├── averages-root-mean-square.chinese.md │ │ │ │ ├── babbage-problem.chinese.md │ │ │ │ ├── balanced-brackets.chinese.md │ │ │ │ ├── circles-of-given-radius-through-two-points.chinese.md │ │ │ │ ├── closest-pair-problem.chinese.md │ │ │ │ ├── combinations.chinese.md │ │ │ │ ├── comma-quibbling.chinese.md │ │ │ │ ├── compare-a-list-of-strings.chinese.md │ │ │ │ ├── convert-seconds-to-compound-duration.chinese.md │ │ │ │ ├── count-occurrences-of-a-substring.chinese.md │ │ │ │ ├── count-the-coins.chinese.md │ │ │ │ ├── cramers-rule.chinese.md │ │ │ │ ├── date-format.chinese.md │ │ │ │ ├── date-manipulation.chinese.md │ │ │ │ ├── day-of-the-week.chinese.md │ │ │ │ ├── deal-cards-for-freecell.chinese.md │ │ │ │ ├── deepcopy.chinese.md │ │ │ │ ├── define-a-primitive-data-type.chinese.md │ │ │ │ ├── department-numbers.chinese.md │ │ │ │ ├── discordian-date.chinese.md │ │ │ │ ├── element-wise-operations.chinese.md │ │ │ │ ├── emirp-primes.chinese.md │ │ │ │ ├── entropy.chinese.md │ │ │ │ ├── equilibrium-index.chinese.md │ │ │ │ ├── ethiopian-multiplication.chinese.md │ │ │ │ ├── euler-method.chinese.md │ │ │ │ ├── evaluate-binomial-coefficients.chinese.md │ │ │ │ ├── execute-a-markov-algorithm.chinese.md │ │ │ │ ├── execute-brain.chinese.md │ │ │ │ ├── extensible-prime-generator.chinese.md │ │ │ │ ├── factorial.chinese.md │ │ │ │ ├── factors-of-a-mersenne-number.chinese.md │ │ │ │ ├── factors-of-an-integer.chinese.md │ │ │ │ ├── farey-sequence.chinese.md │ │ │ │ ├── fibonacci-n-step-number-sequences.chinese.md │ │ │ │ ├── fibonacci-sequence.chinese.md │ │ │ │ ├── fibonacci-word.chinese.md │ │ │ │ ├── fractran.chinese.md │ │ │ │ ├── gamma-function.chinese.md │ │ │ │ ├── gaussian-elimination.chinese.md │ │ │ │ ├── general-fizzbuzz.chinese.md │ │ │ │ ├── generate-lower-case-ascii-alphabet.chinese.md │ │ │ │ ├── gray-code.chinese.md │ │ │ │ ├── greatest-common-divisor.chinese.md │ │ │ │ ├── greatest-subsequential-sum.chinese.md │ │ │ │ ├── hailstone-sequence.chinese.md │ │ │ │ ├── happy-numbers.chinese.md │ │ │ │ ├── harshad-or-niven-series.chinese.md │ │ │ │ ├── hash-from-two-arrays.chinese.md │ │ │ │ ├── hash-join.chinese.md │ │ │ │ ├── heronian-triangles.chinese.md │ │ │ │ ├── hofstadter-figure-figure-sequences.chinese.md │ │ │ │ ├── hofstadter-q-sequence.chinese.md │ │ │ │ ├── i-before-e-except-after-c.chinese.md │ │ │ │ ├── iban.chinese.md │ │ │ │ ├── identity-matrix.chinese.md │ │ │ │ ├── iterated-digits-squaring.chinese.md │ │ │ │ ├── jaro-distance.chinese.md │ │ │ │ ├── jortsort.chinese.md │ │ │ │ ├── josephus-problem.chinese.md │ │ │ │ ├── s-expressions.chinese.md │ │ │ │ ├── sailors-coconuts-and-a-monkey-problem.chinese.md │ │ │ │ ├── sedols.chinese.md │ │ │ │ ├── taxicab-numbers.chinese.md │ │ │ │ ├── tokenize-a-string-with-escaping.chinese.md │ │ │ │ ├── top-rank-per-group.chinese.md │ │ │ │ ├── topological-sort.chinese.md │ │ │ │ ├── towers-of-hanoi.chinese.md │ │ │ │ ├── vector-cross-product.chinese.md │ │ │ │ ├── vector-dot-product.chinese.md │ │ │ │ ├── word-wrap.chinese.md │ │ │ │ ├── y-combinator.chinese.md │ │ │ │ ├── zeckendorf-number-representation.chinese.md │ │ │ │ ├── zhang-suen-thinning-algorithm.chinese.md │ │ │ │ └── zig-zag-matrix.chinese.md │ │ │ └── take-home-projects │ │ │ │ ├── build-a-camper-leaderboard.chinese.md │ │ │ │ ├── build-a-light-bright-app.chinese.md │ │ │ │ ├── build-a-nightlife-coordination-app.chinese.md │ │ │ │ ├── build-a-pinterest-clone.chinese.md │ │ │ │ ├── build-a-pong-game.chinese.md │ │ │ │ ├── build-a-recipe-box.chinese.md │ │ │ │ ├── build-a-roguelike-dungeon-crawler-game.chinese.md │ │ │ │ ├── build-a-simon-game.chinese.md │ │ │ │ ├── build-a-tic-tac-toe-game.chinese.md │ │ │ │ ├── build-a-voting-app.chinese.md │ │ │ │ ├── build-a-wikipedia-viewer.chinese.md │ │ │ │ ├── build-an-image-search-abstraction-layer.chinese.md │ │ │ │ ├── build-the-game-of-life.chinese.md │ │ │ │ ├── chart-the-stock-market.chinese.md │ │ │ │ ├── manage-a-book-trading-club.chinese.md │ │ │ │ ├── map-data-across-the-globe.chinese.md │ │ │ │ ├── p2p-video-chat-application.chinese.md │ │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.chinese.md │ │ │ │ ├── show-the-local-weather.chinese.md │ │ │ │ └── use-the-twitch-json-api.chinese.md │ │ ├── 11-machine-learning-with-python │ │ │ ├── how-neural-networks-work │ │ │ │ ├── deep-learning-demystified.chinese.md │ │ │ │ ├── how-convolutional-neural-networks-work.chinese.md │ │ │ │ ├── how-deep-neural-networks-work.chinese.md │ │ │ │ └── recurrent-neural-networks-rnn-and-long-short-term-memory-lstm.chinese.md │ │ │ ├── machine-learning-with-python-projects │ │ │ │ ├── book-recommendation-engine-using-knn.chinese.md │ │ │ │ ├── cat-and-dog-image-classifier.chinese.md │ │ │ │ ├── linear-regression-health-costs-calculator.chinese.md │ │ │ │ ├── neural-network-sms-text-classifier.chinese.md │ │ │ │ └── rock-paper-scissors.chinese.md │ │ │ └── tensorflow │ │ │ │ ├── conclusion.chinese.md │ │ │ │ ├── convolutional-neural-networks-evaluating-the-model.chinese.md │ │ │ │ ├── convolutional-neural-networks-picking-a-pretrained-model.chinese.md │ │ │ │ ├── convolutional-neural-networks-the-convolutional-layer.chinese.md │ │ │ │ ├── convolutional-neural-networks.chinese.md │ │ │ │ ├── core-learning-algorithms-building-the-model.chinese.md │ │ │ │ ├── core-learning-algorithms-classification.chinese.md │ │ │ │ ├── core-learning-algorithms-clustering.chinese.md │ │ │ │ ├── core-learning-algorithms-hidden-markov-models.chinese.md │ │ │ │ ├── core-learning-algorithms-the-training-process.chinese.md │ │ │ │ ├── core-learning-algorithms-training-and-testing-data.chinese.md │ │ │ │ ├── core-learning-algorithms-using-probabilities-to-make-predictions.chinese.md │ │ │ │ ├── core-learning-algorithms-working-with-data.chinese.md │ │ │ │ ├── core-learning-algorithms.chinese.md │ │ │ │ ├── creating-a-convolutional-neural-network.chinese.md │ │ │ │ ├── introduction-machine-learning-fundamentals.chinese.md │ │ │ │ ├── introduction-to-tensorflow.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-building-the-model.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-create-a-play-generator.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-making-predictions.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-part-2.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-recurring-neural-networks.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-sentimental-analysis.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns-training-the-model.chinese.md │ │ │ │ ├── natural-language-processing-with-rnns.chinese.md │ │ │ │ ├── neural-networks-activation-functions.chinese.md │ │ │ │ ├── neural-networks-creating-a-model.chinese.md │ │ │ │ ├── neural-networks-optimizers.chinese.md │ │ │ │ ├── neural-networks-with-tensorflow.chinese.md │ │ │ │ ├── reinforcement-learning-with-q-learning-example.chinese.md │ │ │ │ ├── reinforcement-learning-with-q-learning-part-2.chinese.md │ │ │ │ └── reinforcement-learning-with-q-learning.chinese.md │ │ └── 12-certificates │ │ │ ├── apis-and-microservices-certificate │ │ │ └── apis-and-microservices-certificate.chinese.md │ │ │ ├── data-analysis-with-python-certificate │ │ │ └── data-analysis-with-python-certificate.chinese.md │ │ │ ├── data-visualization-certificate │ │ │ └── data-visualization-certificate.chinese.md │ │ │ ├── front-end-libraries-certificate │ │ │ └── front-end-libraries-certificate.chinese.md │ │ │ ├── information-security-certificate │ │ │ └── information-security-certificate.chinese.md │ │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── javascript-algorithms-and-data-structures-certificate.chinese.md │ │ │ ├── legacy-back-end-certificate │ │ │ └── legacy-back-end-certificate.chinese.md │ │ │ ├── legacy-data-visualization-certificate │ │ │ └── legacy-data-visualization-certificate.chinese.md │ │ │ ├── legacy-front-end-certificate │ │ │ └── legacy-front-end-certificate.chinese.md │ │ │ ├── legacy-full-stack-certificate │ │ │ └── legacy-full-stack-certificate.chinese.md │ │ │ ├── legacy-information-security-and-quality-assurance-certificate │ │ │ └── legacy-information-security-and-quality-assurance-certificate.chinese.md │ │ │ ├── machine-learning-with-python-certificate │ │ │ └── machine-learning-with-python-certificate.chinese.md │ │ │ ├── quality-assurance-certificate │ │ │ └── quality-assurance-certificate.chinese.md │ │ │ ├── responsive-web-design-certificate │ │ │ └── responsive-web-design-certificate.chinese.md │ │ │ └── scientific-computing-with-python-certificate │ │ │ └── scientific-computing-with-python-certificate.chinese.md │ ├── english │ │ ├── 01-responsive-web-design │ │ │ ├── applied-accessibility │ │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.english.md │ │ │ │ ├── add-an-accessible-date-picker.english.md │ │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.english.md │ │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.english.md │ │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.english.md │ │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.english.md │ │ │ │ ├── improve-chart-accessibility-with-the-figure-element.english.md │ │ │ │ ├── improve-form-field-accessibility-with-the-label-element.english.md │ │ │ │ ├── improve-readability-with-high-contrast-text.english.md │ │ │ │ ├── jump-straight-to-the-content-using-the-main-element.english.md │ │ │ │ ├── know-when-alt-text-should-be-left-blank.english.md │ │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.english.md │ │ │ │ ├── make-links-navigable-with-html-access-keys.english.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.english.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.english.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.english.md │ │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.english.md │ │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.english.md │ │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.english.md │ │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.english.md │ │ │ │ ├── wrap-content-in-the-article-element.english.md │ │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.english.md │ │ │ ├── applied-visual-design │ │ │ │ ├── add-a-box-shadow-to-a-card-like-element.english.md │ │ │ │ ├── adjust-the-background-color-property-of-text.english.md │ │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.english.md │ │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.english.md │ │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.english.md │ │ │ │ ├── adjust-the-hue-of-a-color.english.md │ │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.english.md │ │ │ │ ├── adjust-the-tone-of-a-color.english.md │ │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.english.md │ │ │ │ ├── animate-elements-at-variable-rates.english.md │ │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.english.md │ │ │ │ ├── animate-multiple-elements-at-variable-rates.english.md │ │ │ │ ├── center-an-element-horizontally-using-the-margin-property.english.md │ │ │ │ ├── change-an-elements-relative-position.english.md │ │ │ │ ├── change-animation-timing-with-keywords.english.md │ │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.english.md │ │ │ │ ├── create-a-gradual-css-linear-gradient.english.md │ │ │ │ ├── create-a-graphic-using-css.english.md │ │ │ │ ├── create-a-horizontal-line-using-the-hr-element.english.md │ │ │ │ ├── create-a-more-complex-shape-using-css-and-html.english.md │ │ │ │ ├── create-movement-using-css-animation.english.md │ │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.english.md │ │ │ │ ├── create-visual-balance-using-the-text-align-property.english.md │ │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.english.md │ │ │ │ ├── decrease-the-opacity-of-an-element.english.md │ │ │ │ ├── learn-about-complementary-colors.english.md │ │ │ │ ├── learn-about-tertiary-colors.english.md │ │ │ │ ├── learn-how-bezier-curves-work.english.md │ │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.english.md │ │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.english.md │ │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.english.md │ │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.english.md │ │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.english.md │ │ │ │ ├── modify-fill-mode-of-an-animation.english.md │ │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.english.md │ │ │ │ ├── push-elements-left-or-right-with-the-float-property.english.md │ │ │ │ ├── set-the-font-size-for-multiple-heading-elements.english.md │ │ │ │ ├── set-the-font-size-of-paragraph-text.english.md │ │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.english.md │ │ │ │ ├── set-the-line-height-of-paragraphs.english.md │ │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.english.md │ │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.english.md │ │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.english.md │ │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.english.md │ │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.english.md │ │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.english.md │ │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.english.md │ │ │ │ ├── use-the-em-tag-to-italicize-text.english.md │ │ │ │ ├── use-the-s-tag-to-strikethrough-text.english.md │ │ │ │ ├── use-the-strong-tag-to-make-text-bold.english.md │ │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.english.md │ │ │ │ └── use-the-u-tag-to-underline-text.english.md │ │ │ ├── basic-css │ │ │ │ ├── add-a-negative-margin-to-an-element.english.md │ │ │ │ ├── add-borders-around-your-elements.english.md │ │ │ │ ├── add-different-margins-to-each-side-of-an-element.english.md │ │ │ │ ├── add-different-padding-to-each-side-of-an-element.english.md │ │ │ │ ├── add-rounded-corners-with-border-radius.english.md │ │ │ │ ├── adjust-the-margin-of-an-element.english.md │ │ │ │ ├── adjust-the-padding-of-an-element.english.md │ │ │ │ ├── attach-a-fallback-value-to-a-css-variable.english.md │ │ │ │ ├── change-a-variable-for-a-specific-area.english.md │ │ │ │ ├── change-the-color-of-text.english.md │ │ │ │ ├── change-the-font-size-of-an-element.english.md │ │ │ │ ├── create-a-custom-css-variable.english.md │ │ │ │ ├── give-a-background-color-to-a-div-element.english.md │ │ │ │ ├── import-a-google-font.english.md │ │ │ │ ├── improve-compatibility-with-browser-fallbacks.english.md │ │ │ │ ├── inherit-css-variables.english.md │ │ │ │ ├── inherit-styles-from-the-body-element.english.md │ │ │ │ ├── make-circular-images-with-a-border-radius.english.md │ │ │ │ ├── override-all-other-styles-by-using-important.english.md │ │ │ │ ├── override-class-declarations-by-styling-id-attributes.english.md │ │ │ │ ├── override-class-declarations-with-inline-styles.english.md │ │ │ │ ├── override-styles-in-subsequent-css.english.md │ │ │ │ ├── prioritize-one-style-over-another.english.md │ │ │ │ ├── set-the-font-family-of-an-element.english.md │ │ │ │ ├── set-the-id-of-an-element.english.md │ │ │ │ ├── size-your-images.english.md │ │ │ │ ├── specify-how-fonts-should-degrade.english.md │ │ │ │ ├── style-multiple-elements-with-a-css-class.english.md │ │ │ │ ├── style-the-html-body-element.english.md │ │ │ │ ├── understand-absolute-versus-relative-units.english.md │ │ │ │ ├── use-a-css-class-to-style-an-element.english.md │ │ │ │ ├── use-a-custom-css-variable.english.md │ │ │ │ ├── use-a-media-query-to-change-a-variable.english.md │ │ │ │ ├── use-abbreviated-hex-code.english.md │ │ │ │ ├── use-an-id-attribute-to-style-an-element.english.md │ │ │ │ ├── use-attribute-selectors-to-style-elements.english.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.english.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.english.md │ │ │ │ ├── use-css-selectors-to-style-elements.english.md │ │ │ │ ├── use-css-variables-to-change-several-elements-at-once.english.md │ │ │ │ ├── use-hex-code-for-specific-colors.english.md │ │ │ │ ├── use-hex-code-to-mix-colors.english.md │ │ │ │ ├── use-rgb-to-mix-colors.english.md │ │ │ │ └── use-rgb-values-to-color-elements.english.md │ │ │ ├── basic-html-and-html5 │ │ │ │ ├── add-a-submit-button-to-a-form.english.md │ │ │ │ ├── add-images-to-your-website.english.md │ │ │ │ ├── add-placeholder-text-to-a-text-field.english.md │ │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.english.md │ │ │ │ ├── comment-out-html.english.md │ │ │ │ ├── create-a-bulleted-unordered-list.english.md │ │ │ │ ├── create-a-form-element.english.md │ │ │ │ ├── create-a-set-of-checkboxes.english.md │ │ │ │ ├── create-a-set-of-radio-buttons.english.md │ │ │ │ ├── create-a-text-field.english.md │ │ │ │ ├── create-an-ordered-list.english.md │ │ │ │ ├── declare-the-doctype-of-an-html-document.english.md │ │ │ │ ├── define-the-head-and-body-of-an-html-document.english.md │ │ │ │ ├── delete-html-elements.english.md │ │ │ │ ├── fill-in-the-blank-with-placeholder-text.english.md │ │ │ │ ├── headline-with-the-h2-element.english.md │ │ │ │ ├── inform-with-the-paragraph-element.english.md │ │ │ │ ├── introduction-to-html5-elements.english.md │ │ │ │ ├── link-to-external-pages-with-anchor-elements.english.md │ │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.english.md │ │ │ │ ├── make-dead-links-using-the-hash-symbol.english.md │ │ │ │ ├── nest-an-anchor-element-within-a-paragraph.english.md │ │ │ │ ├── nest-many-elements-within-a-single-div-element.english.md │ │ │ │ ├── say-hello-to-html-elements.english.md │ │ │ │ ├── turn-an-image-into-a-link.english.md │ │ │ │ ├── uncomment-html.english.md │ │ │ │ ├── use-html5-to-require-a-field.english.md │ │ │ │ └── use-the-value-attribute-with-radio-buttons-and-checkboxes.english.md │ │ │ ├── css-flexbox │ │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.english.md │ │ │ │ ├── align-elements-using-the-align-items-property.english.md │ │ │ │ ├── align-elements-using-the-justify-content-property.english.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.english.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.english.md │ │ │ │ ├── use-display-flex-to-position-two-boxes.english.md │ │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.english.md │ │ │ │ ├── use-the-align-self-property.english.md │ │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.english.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-column.english.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-row.english.md │ │ │ │ ├── use-the-flex-grow-property-to-expand-items.english.md │ │ │ │ ├── use-the-flex-shorthand-property.english.md │ │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.english.md │ │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.english.md │ │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.english.md │ │ │ │ └── use-the-order-property-to-rearrange-items.english.md │ │ │ ├── css-grid │ │ │ │ ├── add-columns-with-grid-template-columns.english.md │ │ │ │ ├── add-gaps-faster-with-grid-gap.english.md │ │ │ │ ├── add-rows-with-grid-template-rows.english.md │ │ │ │ ├── align-all-items-horizontally-using-justify-items.english.md │ │ │ │ ├── align-all-items-vertically-using-align-items.english.md │ │ │ │ ├── align-an-item-horizontally-using-justify-self.english.md │ │ │ │ ├── align-an-item-vertically-using-align-self.english.md │ │ │ │ ├── create-a-column-gap-using-grid-column-gap.english.md │ │ │ │ ├── create-a-row-gap-using-grid-row-gap.english.md │ │ │ │ ├── create-flexible-layouts-using-auto-fill.english.md │ │ │ │ ├── create-flexible-layouts-using-auto-fit.english.md │ │ │ │ ├── create-grids-within-grids.english.md │ │ │ │ ├── create-your-first-css-grid.english.md │ │ │ │ ├── divide-the-grid-into-an-area-template.english.md │ │ │ │ ├── limit-item-size-using-the-minmax-function.english.md │ │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.english.md │ │ │ │ ├── reduce-repetition-using-the-repeat-function.english.md │ │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.english.md │ │ │ │ ├── use-grid-area-without-creating-an-areas-template.english.md │ │ │ │ ├── use-grid-column-to-control-spacing.english.md │ │ │ │ ├── use-grid-row-to-control-spacing.english.md │ │ │ │ └── use-media-queries-to-create-responsive-layouts.english.md │ │ │ ├── responsive-web-design-principles │ │ │ │ ├── create-a-media-query.english.md │ │ │ │ ├── make-an-image-responsive.english.md │ │ │ │ ├── make-typography-responsive.english.md │ │ │ │ └── use-a-retina-image-for-higher-resolution-displays.english.md │ │ │ └── responsive-web-design-projects │ │ │ │ ├── build-a-personal-portfolio-webpage.english.md │ │ │ │ ├── build-a-product-landing-page.english.md │ │ │ │ ├── build-a-survey-form.english.md │ │ │ │ ├── build-a-technical-documentation-page.english.md │ │ │ │ └── build-a-tribute-page.english.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ │ ├── basic-algorithm-scripting │ │ │ │ ├── boo-who.english.md │ │ │ │ ├── chunky-monkey.english.md │ │ │ │ ├── confirm-the-ending.english.md │ │ │ │ ├── convert-celsius-to-fahrenheit.english.md │ │ │ │ ├── factorialize-a-number.english.md │ │ │ │ ├── falsy-bouncer.english.md │ │ │ │ ├── find-the-longest-word-in-a-string.english.md │ │ │ │ ├── finders-keepers.english.md │ │ │ │ ├── mutations.english.md │ │ │ │ ├── repeat-a-string-repeat-a-string.english.md │ │ │ │ ├── return-largest-numbers-in-arrays.english.md │ │ │ │ ├── reverse-a-string.english.md │ │ │ │ ├── slice-and-splice.english.md │ │ │ │ ├── title-case-a-sentence.english.md │ │ │ │ ├── truncate-a-string.english.md │ │ │ │ └── where-do-i-belong.english.md │ │ │ ├── basic-data-structures │ │ │ │ ├── access-an-arrays-contents-using-bracket-notation.english.md │ │ │ │ ├── access-property-names-with-bracket-notation.english.md │ │ │ │ ├── add-items-to-an-array-with-push-and-unshift.english.md │ │ │ │ ├── add-items-using-splice.english.md │ │ │ │ ├── add-key-value-pairs-to-javascript-objects.english.md │ │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.english.md │ │ │ │ ├── check-if-an-object-has-a-property.english.md │ │ │ │ ├── combine-arrays-with-the-spread-operator.english.md │ │ │ │ ├── copy-an-array-with-the-spread-operator.english.md │ │ │ │ ├── copy-array-items-using-slice.english.md │ │ │ │ ├── create-complex-multi-dimensional-arrays.english.md │ │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.english.md │ │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.english.md │ │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.english.md │ │ │ │ ├── modify-an-array-stored-in-an-object.english.md │ │ │ │ ├── modify-an-object-nested-within-an-object.english.md │ │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.english.md │ │ │ │ ├── remove-items-using-splice.english.md │ │ │ │ ├── use-an-array-to-store-a-collection-of-data.english.md │ │ │ │ └── use-the-delete-keyword-to-remove-object-properties.english.md │ │ │ ├── basic-javascript │ │ │ │ ├── access-array-data-with-indexes.english.md │ │ │ │ ├── access-multi-dimensional-arrays-with-indexes.english.md │ │ │ │ ├── accessing-nested-arrays.english.md │ │ │ │ ├── accessing-nested-objects.english.md │ │ │ │ ├── accessing-object-properties-with-bracket-notation.english.md │ │ │ │ ├── accessing-object-properties-with-dot-notation.english.md │ │ │ │ ├── accessing-object-properties-with-variables.english.md │ │ │ │ ├── add-new-properties-to-a-javascript-object.english.md │ │ │ │ ├── add-two-numbers-with-javascript.english.md │ │ │ │ ├── adding-a-default-option-in-switch-statements.english.md │ │ │ │ ├── appending-variables-to-strings.english.md │ │ │ │ ├── assignment-with-a-returned-value.english.md │ │ │ │ ├── build-javascript-objects.english.md │ │ │ │ ├── chaining-if-else-statements.english.md │ │ │ │ ├── comment-your-javascript-code.english.md │ │ │ │ ├── comparison-with-the-equality-operator.english.md │ │ │ │ ├── comparison-with-the-greater-than-operator.english.md │ │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.english.md │ │ │ │ ├── comparison-with-the-inequality-operator.english.md │ │ │ │ ├── comparison-with-the-less-than-operator.english.md │ │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.english.md │ │ │ │ ├── comparison-with-the-strict-equality-operator.english.md │ │ │ │ ├── comparison-with-the-strict-inequality-operator.english.md │ │ │ │ ├── comparisons-with-the-logical-and-operator.english.md │ │ │ │ ├── comparisons-with-the-logical-or-operator.english.md │ │ │ │ ├── compound-assignment-with-augmented-addition.english.md │ │ │ │ ├── compound-assignment-with-augmented-division.english.md │ │ │ │ ├── compound-assignment-with-augmented-multiplication.english.md │ │ │ │ ├── compound-assignment-with-augmented-subtraction.english.md │ │ │ │ ├── concatenating-strings-with-plus-operator.english.md │ │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.english.md │ │ │ │ ├── constructing-strings-with-variables.english.md │ │ │ │ ├── count-backwards-with-a-for-loop.english.md │ │ │ │ ├── counting-cards.english.md │ │ │ │ ├── create-decimal-numbers-with-javascript.english.md │ │ │ │ ├── declare-javascript-variables.english.md │ │ │ │ ├── declare-string-variables.english.md │ │ │ │ ├── decrement-a-number-with-javascript.english.md │ │ │ │ ├── delete-properties-from-a-javascript-object.english.md │ │ │ │ ├── divide-one-decimal-by-another-with-javascript.english.md │ │ │ │ ├── divide-one-number-by-another-with-javascript.english.md │ │ │ │ ├── escape-sequences-in-strings.english.md │ │ │ │ ├── escaping-literal-quotes-in-strings.english.md │ │ │ │ ├── find-the-length-of-a-string.english.md │ │ │ │ ├── finding-a-remainder-in-javascript.english.md │ │ │ │ ├── generate-random-fractions-with-javascript.english.md │ │ │ │ ├── generate-random-whole-numbers-with-javascript.english.md │ │ │ │ ├── generate-random-whole-numbers-within-a-range.english.md │ │ │ │ ├── global-scope-and-functions.english.md │ │ │ │ ├── global-vs.-local-scope-in-functions.english.md │ │ │ │ ├── golf-code.english.md │ │ │ │ ├── increment-a-number-with-javascript.english.md │ │ │ │ ├── initializing-variables-with-the-assignment-operator.english.md │ │ │ │ ├── introducing-else-if-statements.english.md │ │ │ │ ├── introducing-else-statements.english.md │ │ │ │ ├── iterate-odd-numbers-with-a-for-loop.english.md │ │ │ │ ├── iterate-through-an-array-with-a-for-loop.english.md │ │ │ │ ├── iterate-with-javascript-do...while-loops.english.md │ │ │ │ ├── iterate-with-javascript-for-loops.english.md │ │ │ │ ├── iterate-with-javascript-while-loops.english.md │ │ │ │ ├── local-scope-and-functions.english.md │ │ │ │ ├── logical-order-in-if-else-statements.english.md │ │ │ │ ├── manipulate-arrays-with-pop.english.md │ │ │ │ ├── manipulate-arrays-with-push.english.md │ │ │ │ ├── manipulate-arrays-with-shift.english.md │ │ │ │ ├── manipulate-arrays-with-unshift.english.md │ │ │ │ ├── manipulating-complex-objects.english.md │ │ │ │ ├── modify-array-data-with-indexes.english.md │ │ │ │ ├── multiple-identical-options-in-switch-statements.english.md │ │ │ │ ├── multiply-two-decimals-with-javascript.english.md │ │ │ │ ├── multiply-two-numbers-with-javascript.english.md │ │ │ │ ├── nest-one-array-within-another-array.english.md │ │ │ │ ├── nesting-for-loops.english.md │ │ │ │ ├── passing-values-to-functions-with-arguments.english.md │ │ │ │ ├── practice-comparing-different-values.english.md │ │ │ │ ├── profile-lookup.english.md │ │ │ │ ├── quoting-strings-with-single-quotes.english.md │ │ │ │ ├── record-collection.english.md │ │ │ │ ├── replace-loops-using-recursion.english.md │ │ │ │ ├── replacing-if-else-chains-with-switch.english.md │ │ │ │ ├── return-a-value-from-a-function-with-return.english.md │ │ │ │ ├── return-early-pattern-for-functions.english.md │ │ │ │ ├── returning-boolean-values-from-functions.english.md │ │ │ │ ├── selecting-from-many-options-with-switch-statements.english.md │ │ │ │ ├── shopping-list.english.md │ │ │ │ ├── stand-in-line.english.md │ │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.english.md │ │ │ │ ├── storing-values-with-the-assignment-operator.english.md │ │ │ │ ├── subtract-one-number-from-another-with-javascript.english.md │ │ │ │ ├── testing-objects-for-properties.english.md │ │ │ │ ├── understand-string-immutability.english.md │ │ │ │ ├── understanding-boolean-values.english.md │ │ │ │ ├── understanding-case-sensitivity-in-variables.english.md │ │ │ │ ├── understanding-undefined-value-returned-from-a-function.english.md │ │ │ │ ├── understanding-uninitialized-variables.english.md │ │ │ │ ├── updating-object-properties.english.md │ │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.english.md │ │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.english.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.english.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.english.md │ │ │ │ ├── use-conditional-logic-with-if-statements.english.md │ │ │ │ ├── use-multiple-conditional-ternary-operators.english.md │ │ │ │ ├── use-recursion-to-create-a-countdown.english.md │ │ │ │ ├── use-recursion-to-create-a-range-of-numbers.english.md │ │ │ │ ├── use-the-conditional-ternary-operator.english.md │ │ │ │ ├── use-the-parseint-function-with-a-radix.english.md │ │ │ │ ├── use-the-parseint-function.english.md │ │ │ │ ├── using-objects-for-lookups.english.md │ │ │ │ ├── word-blanks.english.md │ │ │ │ └── write-reusable-javascript-with-functions.english.md │ │ │ ├── debugging │ │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.english.md │ │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.english.md │ │ │ │ ├── catch-misspelled-variable-and-function-names.english.md │ │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.english.md │ │ │ │ ├── catch-off-by-one-errors-when-using-indexing.english.md │ │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.english.md │ │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.english.md │ │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.english.md │ │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.english.md │ │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.english.md │ │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.english.md │ │ │ │ └── use-typeof-to-check-the-type-of-a-variable.english.md │ │ │ ├── es6 │ │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.english.md │ │ │ │ ├── complete-a-promise-with-resolve-and-reject.english.md │ │ │ │ ├── create-a-javascript-promise.english.md │ │ │ │ ├── create-a-module-script.english.md │ │ │ │ ├── create-an-export-fallback-with-export-default.english.md │ │ │ │ ├── create-strings-using-template-literals.english.md │ │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.english.md │ │ │ │ ├── explore-differences-between-the-var-and-let-keywords.english.md │ │ │ │ ├── handle-a-fulfilled-promise-with-then.english.md │ │ │ │ ├── handle-a-rejected-promise-with-catch.english.md │ │ │ │ ├── import-a-default-export.english.md │ │ │ │ ├── mutate-an-array-declared-with-const.english.md │ │ │ │ ├── prevent-object-mutation.english.md │ │ │ │ ├── reuse-javascript-code-using-import.english.md │ │ │ │ ├── set-default-parameters-for-your-functions.english.md │ │ │ │ ├── use--to-import-everything-from-a-file.english.md │ │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.english.md │ │ │ │ ├── use-class-syntax-to-define-a-constructor-function.english.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.english.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.english.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.english.md │ │ │ │ ├── use-destructuring-assignment-to-extract-values-from-objects.english.md │ │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.english.md │ │ │ │ ├── use-destructuring-assignment-with-the-rest-parameter-to-reassign-array-elements.english.md │ │ │ │ ├── use-export-to-share-a-code-block.english.md │ │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.english.md │ │ │ │ ├── use-the-rest-parameter-with-function-parameters.english.md │ │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.english.md │ │ │ │ ├── write-arrow-functions-with-parameters.english.md │ │ │ │ ├── write-concise-declarative-functions-with-es6.english.md │ │ │ │ └── write-concise-object-literal-declarations-using-object-property-shorthand.english.md │ │ │ ├── functional-programming │ │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.english.md │ │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.english.md │ │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.english.md │ │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.english.md │ │ │ │ ├── combine-two-arrays-using-the-concat-method.english.md │ │ │ │ ├── implement-map-on-a-prototype.english.md │ │ │ │ ├── implement-the-filter-method-on-a-prototype.english.md │ │ │ │ ├── introduction-to-currying-and-partial-application.english.md │ │ │ │ ├── learn-about-functional-programming.english.md │ │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.english.md │ │ │ │ ├── refactor-global-variables-out-of-functions.english.md │ │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.english.md │ │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.english.md │ │ │ │ ├── return-part-of-an-array-using-the-slice-method.english.md │ │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.english.md │ │ │ │ ├── split-a-string-into-an-array-using-the-split-method.english.md │ │ │ │ ├── understand-functional-programming-terminology.english.md │ │ │ │ ├── understand-the-hazards-of-using-imperative-code.english.md │ │ │ │ ├── use-higher-order-functions-map-filter-or-reduce-to-solve-a-complex-problem.english.md │ │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.english.md │ │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.english.md │ │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.english.md │ │ │ │ ├── use-the-reduce-method-to-analyze-data.english.md │ │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.english.md │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ ├── arguments-optional.english.md │ │ │ │ ├── binary-agents.english.md │ │ │ │ ├── convert-html-entities.english.md │ │ │ │ ├── diff-two-arrays.english.md │ │ │ │ ├── dna-pairing.english.md │ │ │ │ ├── drop-it.english.md │ │ │ │ ├── everything-be-true.english.md │ │ │ │ ├── make-a-person.english.md │ │ │ │ ├── map-the-debris.english.md │ │ │ │ ├── missing-letters.english.md │ │ │ │ ├── pig-latin.english.md │ │ │ │ ├── search-and-replace.english.md │ │ │ │ ├── seek-and-destroy.english.md │ │ │ │ ├── smallest-common-multiple.english.md │ │ │ │ ├── sorted-union.english.md │ │ │ │ ├── spinal-tap-case.english.md │ │ │ │ ├── steamroller.english.md │ │ │ │ ├── sum-all-numbers-in-a-range.english.md │ │ │ │ ├── sum-all-odd-fibonacci-numbers.english.md │ │ │ │ ├── sum-all-primes.english.md │ │ │ │ └── wherefore-art-thou.english.md │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ ├── caesars-cipher.english.md │ │ │ │ ├── cash-register.english.md │ │ │ │ ├── palindrome-checker.english.md │ │ │ │ ├── roman-numeral-converter.english.md │ │ │ │ └── telephone-number-validator.english.md │ │ │ ├── object-oriented-programming │ │ │ │ ├── add-methods-after-inheritance.english.md │ │ │ │ ├── change-the-prototype-to-a-new-object.english.md │ │ │ │ ├── create-a-basic-javascript-object.english.md │ │ │ │ ├── create-a-method-on-an-object.english.md │ │ │ │ ├── define-a-constructor-function.english.md │ │ │ │ ├── extend-constructors-to-receive-arguments.english.md │ │ │ │ ├── inherit-behaviors-from-a-supertype.english.md │ │ │ │ ├── iterate-over-all-properties.english.md │ │ │ │ ├── make-code-more-reusable-with-the-this-keyword.english.md │ │ │ │ ├── override-inherited-methods.english.md │ │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.english.md │ │ │ │ ├── reset-an-inherited-constructor-property.english.md │ │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.english.md │ │ │ │ ├── understand-own-properties.english.md │ │ │ │ ├── understand-the-constructor-property.english.md │ │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.english.md │ │ │ │ ├── understand-the-prototype-chain.english.md │ │ │ │ ├── understand-where-an-objects-prototype-comes-from.english.md │ │ │ │ ├── use-a-constructor-to-create-objects.english.md │ │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.english.md │ │ │ │ ├── use-an-iife-to-create-a-module.english.md │ │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.english.md │ │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.english.md │ │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.english.md │ │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.english.md │ │ │ │ └── verify-an-objects-constructor-with-instanceof.english.md │ │ │ └── regular-expressions │ │ │ │ ├── check-for-all-or-none.english.md │ │ │ │ ├── check-for-mixed-grouping-of-characters.english.md │ │ │ │ ├── extract-matches.english.md │ │ │ │ ├── find-characters-with-lazy-matching.english.md │ │ │ │ ├── find-more-than-the-first-match.english.md │ │ │ │ ├── find-one-or-more-criminals-in-a-hunt.english.md │ │ │ │ ├── ignore-case-while-matching.english.md │ │ │ │ ├── match-a-literal-string-with-different-possibilities.english.md │ │ │ │ ├── match-all-letters-and-numbers.english.md │ │ │ │ ├── match-all-non-numbers.english.md │ │ │ │ ├── match-all-numbers.english.md │ │ │ │ ├── match-anything-with-wildcard-period.english.md │ │ │ │ ├── match-beginning-string-patterns.english.md │ │ │ │ ├── match-characters-that-occur-one-or-more-times.english.md │ │ │ │ ├── match-characters-that-occur-zero-or-more-times.english.md │ │ │ │ ├── match-ending-string-patterns.english.md │ │ │ │ ├── match-everything-but-letters-and-numbers.english.md │ │ │ │ ├── match-letters-of-the-alphabet.english.md │ │ │ │ ├── match-literal-strings.english.md │ │ │ │ ├── match-non-whitespace-characters.english.md │ │ │ │ ├── match-numbers-and-letters-of-the-alphabet.english.md │ │ │ │ ├── match-single-character-with-multiple-possibilities.english.md │ │ │ │ ├── match-single-characters-not-specified.english.md │ │ │ │ ├── match-whitespace.english.md │ │ │ │ ├── positive-and-negative-lookahead.english.md │ │ │ │ ├── remove-whitespace-from-start-and-end.english.md │ │ │ │ ├── restrict-possible-usernames.english.md │ │ │ │ ├── reuse-patterns-using-capture-groups.english.md │ │ │ │ ├── specify-exact-number-of-matches.english.md │ │ │ │ ├── specify-only-the-lower-number-of-matches.english.md │ │ │ │ ├── specify-upper-and-lower-number-of-matches.english.md │ │ │ │ ├── use-capture-groups-to-search-and-replace.english.md │ │ │ │ └── using-the-test-method.english.md │ │ ├── 03-front-end-libraries │ │ │ ├── bootstrap │ │ │ │ ├── add-elements-within-your-bootstrap-wells.english.md │ │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.english.md │ │ │ │ ├── add-font-awesome-icons-to-our-buttons.english.md │ │ │ │ ├── add-id-attributes-to-bootstrap-elements.english.md │ │ │ │ ├── apply-the-default-bootstrap-button-style.english.md │ │ │ │ ├── call-out-optional-actions-with-btn-info.english.md │ │ │ │ ├── center-text-with-bootstrap.english.md │ │ │ │ ├── create-a-block-element-bootstrap-button.english.md │ │ │ │ ├── create-a-bootstrap-button.english.md │ │ │ │ ├── create-a-bootstrap-headline.english.md │ │ │ │ ├── create-a-bootstrap-row.english.md │ │ │ │ ├── create-a-class-to-target-with-jquery-selectors.english.md │ │ │ │ ├── create-a-custom-heading.english.md │ │ │ │ ├── create-bootstrap-wells.english.md │ │ │ │ ├── ditch-custom-css-for-bootstrap.english.md │ │ │ │ ├── give-each-element-a-unique-id.english.md │ │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.english.md │ │ │ │ ├── label-bootstrap-buttons.english.md │ │ │ │ ├── label-bootstrap-wells.english.md │ │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.english.md │ │ │ │ ├── make-images-mobile-responsive.english.md │ │ │ │ ├── responsively-style-checkboxes.english.md │ │ │ │ ├── responsively-style-radio-buttons.english.md │ │ │ │ ├── split-your-bootstrap-row.english.md │ │ │ │ ├── style-text-inputs-as-form-controls.english.md │ │ │ │ ├── taste-the-bootstrap-button-color-rainbow.english.md │ │ │ │ ├── use-a-span-to-target-inline-elements.english.md │ │ │ │ ├── use-comments-to-clarify-code.english.md │ │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.english.md │ │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.english.md │ │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.english.md │ │ │ ├── front-end-libraries-projects │ │ │ │ ├── build-a-drum-machine.english.md │ │ │ │ ├── build-a-javascript-calculator.english.md │ │ │ │ ├── build-a-markdown-previewer.english.md │ │ │ │ ├── build-a-pomodoro-clock.english.md │ │ │ │ └── build-a-random-quote-machine.english.md │ │ │ ├── jquery │ │ │ │ ├── change-text-inside-an-element-using-jquery.english.md │ │ │ │ ├── change-the-css-of-an-element-using-jquery.english.md │ │ │ │ ├── clone-an-element-using-jquery.english.md │ │ │ │ ├── delete-your-jquery-functions.english.md │ │ │ │ ├── disable-an-element-using-jquery.english.md │ │ │ │ ├── learn-how-script-tags-and-document-ready-work.english.md │ │ │ │ ├── remove-an-element-using-jquery.english.md │ │ │ │ ├── remove-classes-from-an-element-with-jquery.english.md │ │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.english.md │ │ │ │ ├── target-elements-by-class-using-jquery.english.md │ │ │ │ ├── target-elements-by-id-using-jquery.english.md │ │ │ │ ├── target-even-elements-using-jquery.english.md │ │ │ │ ├── target-html-elements-with-selectors-using-jquery.english.md │ │ │ │ ├── target-the-children-of-an-element-using-jquery.english.md │ │ │ │ ├── target-the-parent-of-an-element-using-jquery.english.md │ │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.english.md │ │ │ │ ├── use-appendto-to-move-elements-with-jquery.english.md │ │ │ │ └── use-jquery-to-modify-the-entire-page.english.md │ │ │ ├── react-and-redux │ │ │ │ ├── connect-redux-to-react.english.md │ │ │ │ ├── connect-redux-to-the-messages-app.english.md │ │ │ │ ├── extract-local-state-into-redux.english.md │ │ │ │ ├── extract-state-logic-to-redux.english.md │ │ │ │ ├── getting-started-with-react-redux.english.md │ │ │ │ ├── manage-state-locally-first.english.md │ │ │ │ ├── map-dispatch-to-props.english.md │ │ │ │ ├── map-state-to-props.english.md │ │ │ │ ├── moving-forward-from-here.english.md │ │ │ │ └── use-provider-to-connect-redux-to-react.english.md │ │ │ ├── react │ │ │ │ ├── access-props-using-this.props.english.md │ │ │ │ ├── add-comments-in-jsx.english.md │ │ │ │ ├── add-event-listeners.english.md │ │ │ │ ├── add-inline-styles-in-react.english.md │ │ │ │ ├── bind-this-to-a-class-method.english.md │ │ │ │ ├── change-inline-css-conditionally-based-on-component-state.english.md │ │ │ │ ├── compose-react-components.english.md │ │ │ │ ├── create-a-complex-jsx-element.english.md │ │ │ │ ├── create-a-component-with-composition.english.md │ │ │ │ ├── create-a-controlled-form.english.md │ │ │ │ ├── create-a-controlled-input.english.md │ │ │ │ ├── create-a-react-component.english.md │ │ │ │ ├── create-a-simple-jsx-element.english.md │ │ │ │ ├── create-a-stateful-component.english.md │ │ │ │ ├── create-a-stateless-functional-component.english.md │ │ │ │ ├── define-an-html-class-in-jsx.english.md │ │ │ │ ├── give-sibling-elements-a-unique-key-attribute.english.md │ │ │ │ ├── introducing-inline-styles.english.md │ │ │ │ ├── learn-about-self-closing-jsx-tags.english.md │ │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.english.md │ │ │ │ ├── override-default-props.english.md │ │ │ │ ├── pass-a-callback-as-props.english.md │ │ │ │ ├── pass-an-array-as-props.english.md │ │ │ │ ├── pass-props-to-a-stateless-functional-component.english.md │ │ │ │ ├── pass-state-as-props-to-child-components.english.md │ │ │ │ ├── render-a-class-component-to-the-dom.english.md │ │ │ │ ├── render-conditionally-from-props.english.md │ │ │ │ ├── render-html-elements-to-the-dom.english.md │ │ │ │ ├── render-react-on-the-server-with-rendertostring.english.md │ │ │ │ ├── render-state-in-the-user-interface-another-way.english.md │ │ │ │ ├── render-state-in-the-user-interface.english.md │ │ │ │ ├── render-with-an-if-else-condition.english.md │ │ │ │ ├── review-using-props-with-stateless-functional-components.english.md │ │ │ │ ├── set-state-with-this.setstate.english.md │ │ │ │ ├── use--for-a-more-concise-conditional.english.md │ │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.english.md │ │ │ │ ├── use-advanced-javascript-in-react-render-method.english.md │ │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.english.md │ │ │ │ ├── use-array.map-to-dynamically-render-elements.english.md │ │ │ │ ├── use-default-props.english.md │ │ │ │ ├── use-proptypes-to-define-the-props-you-expect.english.md │ │ │ │ ├── use-react-to-render-nested-components.english.md │ │ │ │ ├── use-state-to-toggle-an-element.english.md │ │ │ │ ├── use-the-lifecycle-method-componentdidmount.english.md │ │ │ │ ├── use-the-lifecycle-method-componentwillmount.english.md │ │ │ │ ├── write-a-react-component-from-scratch.english.md │ │ │ │ └── write-a-simple-counter.english.md │ │ │ ├── redux │ │ │ │ ├── combine-multiple-reducers.english.md │ │ │ │ ├── copy-an-object-with-object.assign.english.md │ │ │ │ ├── create-a-redux-store.english.md │ │ │ │ ├── define-a-redux-action.english.md │ │ │ │ ├── define-an-action-creator.english.md │ │ │ │ ├── dispatch-an-action-event.english.md │ │ │ │ ├── get-state-from-the-redux-store.english.md │ │ │ │ ├── handle-an-action-in-the-store.english.md │ │ │ │ ├── never-mutate-state.english.md │ │ │ │ ├── register-a-store-listener.english.md │ │ │ │ ├── remove-an-item-from-an-array.english.md │ │ │ │ ├── send-action-data-to-the-store.english.md │ │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.english.md │ │ │ │ ├── use-const-for-action-types.english.md │ │ │ │ ├── use-middleware-to-handle-asynchronous-actions.english.md │ │ │ │ ├── use-the-spread-operator-on-arrays.english.md │ │ │ │ └── write-a-counter-with-redux.english.md │ │ │ └── sass │ │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.english.md │ │ │ │ ├── create-reusable-css-with-mixins.english.md │ │ │ │ ├── extend-one-set-of-css-styles-to-another-element.english.md │ │ │ │ ├── nest-css-with-sass.english.md │ │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.english.md │ │ │ │ ├── store-data-with-sass-variables.english.md │ │ │ │ ├── use-each-to-map-over-items-in-a-list.english.md │ │ │ │ ├── use-for-to-create-a-sass-loop.english.md │ │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.english.md │ │ ├── 04-data-visualization │ │ │ ├── data-visualization-projects │ │ │ │ ├── visualize-data-with-a-bar-chart.english.md │ │ │ │ ├── visualize-data-with-a-choropleth-map.english.md │ │ │ │ ├── visualize-data-with-a-heat-map.english.md │ │ │ │ ├── visualize-data-with-a-scatterplot-graph.english.md │ │ │ │ └── visualize-data-with-a-treemap-diagram.english.md │ │ │ ├── data-visualization-with-d3 │ │ │ │ ├── add-a-hover-effect-to-a-d3-element.english.md │ │ │ │ ├── add-a-tooltip-to-a-d3-element.english.md │ │ │ │ ├── add-attributes-to-the-circle-elements.english.md │ │ │ │ ├── add-axes-to-a-visualization.english.md │ │ │ │ ├── add-classes-with-d3.english.md │ │ │ │ ├── add-document-elements-with-d3.english.md │ │ │ │ ├── add-inline-styling-to-elements.english.md │ │ │ │ ├── add-labels-to-d3-elements.english.md │ │ │ │ ├── add-labels-to-scatter-plot-circles.english.md │ │ │ │ ├── change-styles-based-on-data.english.md │ │ │ │ ├── change-the-color-of-an-svg-element.english.md │ │ │ │ ├── change-the-presentation-of-a-bar-chart.english.md │ │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.english.md │ │ │ │ ├── create-a-linear-scale-with-d3.english.md │ │ │ │ ├── create-a-scatterplot-with-svg-circles.english.md │ │ │ │ ├── display-shapes-with-svg.english.md │ │ │ │ ├── dynamically-change-the-height-of-each-bar.english.md │ │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.english.md │ │ │ │ ├── invert-svg-elements.english.md │ │ │ │ ├── learn-about-svg-in-d3.english.md │ │ │ │ ├── select-a-group-of-elements-with-d3.english.md │ │ │ │ ├── set-a-domain-and-a-range-on-a-scale.english.md │ │ │ │ ├── style-d3-labels.english.md │ │ │ │ ├── update-the-height-of-an-element-dynamically.english.md │ │ │ │ ├── use-a-pre-defined-scale-to-place-elements.english.md │ │ │ │ ├── use-dynamic-scales.english.md │ │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.english.md │ │ │ │ ├── work-with-data-in-d3.english.md │ │ │ │ └── work-with-dynamic-data-in-d3.english.md │ │ │ └── json-apis-and-ajax │ │ │ │ ├── access-the-json-data-from-an-api.english.md │ │ │ │ ├── change-text-with-click-events.english.md │ │ │ │ ├── convert-json-data-to-html.english.md │ │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.english.md │ │ │ │ ├── get-json-with-the-javascript-fetch-method.english.md │ │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.english.md │ │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.english.md │ │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.english.md │ │ │ │ ├── pre-filter-json-to-get-the-data-you-need.english.md │ │ │ │ └── render-images-from-data-sources.english.md │ │ ├── 05-apis-and-microservices │ │ │ ├── apis-and-microservices-projects │ │ │ │ ├── exercise-tracker.english.md │ │ │ │ ├── file-metadata-microservice.english.md │ │ │ │ ├── request-header-parser-microservice.english.md │ │ │ │ ├── timestamp-microservice.english.md │ │ │ │ └── url-shortener-microservice.english.md │ │ │ ├── basic-node-and-express │ │ │ │ ├── chain-middleware-to-create-a-time-server.english.md │ │ │ │ ├── get-data-from-post-requests.english.md │ │ │ │ ├── get-query-parameter-input-from-the-client.english.md │ │ │ │ ├── get-route-parameter-input-from-the-client.english.md │ │ │ │ ├── implement-a-root-level-request-logger-middleware.english.md │ │ │ │ ├── meet-the-node-console.english.md │ │ │ │ ├── serve-an-html-file.english.md │ │ │ │ ├── serve-json-on-a-specific-route.english.md │ │ │ │ ├── serve-static-assets.english.md │ │ │ │ ├── start-a-working-express-server.english.md │ │ │ │ ├── use-body-parser-to-parse-post-requests.english.md │ │ │ │ └── use-the-.env-file.english.md │ │ │ ├── managing-packages-with-npm │ │ │ │ ├── add-a-description-to-your-package.json.english.md │ │ │ │ ├── add-a-license-to-your-package.json.english.md │ │ │ │ ├── add-a-version-to-your-package.json.english.md │ │ │ │ ├── add-keywords-to-your-package.json.english.md │ │ │ │ ├── expand-your-project-with-external-packages-from-npm.english.md │ │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.english.md │ │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.english.md │ │ │ │ ├── remove-a-package-from-your-dependencies.english.md │ │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.english.md │ │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.english.md │ │ │ └── mongodb-and-mongoose │ │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.english.md │ │ │ │ ├── create-a-model.english.md │ │ │ │ ├── create-and-save-a-record-of-a-model.english.md │ │ │ │ ├── create-many-records-with-model.create.english.md │ │ │ │ ├── delete-many-documents-with-model.remove.english.md │ │ │ │ ├── delete-one-document-using-model.findbyidandremove.english.md │ │ │ │ ├── install-and-set-up-mongoose.english.md │ │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.english.md │ │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.english.md │ │ │ │ ├── use-model.find-to-search-your-database.english.md │ │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.english.md │ │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.english.md │ │ ├── 06-quality-assurance │ │ │ ├── advanced-node-and-express │ │ │ │ ├── announce-new-users.english.md │ │ │ │ ├── authentication-strategies.english.md │ │ │ │ ├── authentication-with-socket.io.english.md │ │ │ │ ├── clean-up-your-project-with-modules.english.md │ │ │ │ ├── communicate-by-emitting.english.md │ │ │ │ ├── create-new-middleware.english.md │ │ │ │ ├── handle-a-disconnect.english.md │ │ │ │ ├── hashing-your-passwords.english.md │ │ │ │ ├── how-to-put-a-profile-together.english.md │ │ │ │ ├── how-to-use-passport-strategies.english.md │ │ │ │ ├── implement-the-serialization-of-a-passport-user.english.md │ │ │ │ ├── implementation-of-social-authentication-ii.english.md │ │ │ │ ├── implementation-of-social-authentication-iii.english.md │ │ │ │ ├── implementation-of-social-authentication.english.md │ │ │ │ ├── logging-a-user-out.english.md │ │ │ │ ├── registration-of-new-users.english.md │ │ │ │ ├── send-and-display-chat-messages.english.md │ │ │ │ ├── serialization-of-a-user-object.english.md │ │ │ │ ├── set-up-a-template-engine.english.md │ │ │ │ ├── set-up-passport.english.md │ │ │ │ ├── set-up-the-environment.english.md │ │ │ │ └── use-a-template-engines-powers.english.md │ │ │ ├── quality-assurance-and-testing-with-chai │ │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.english.md │ │ │ │ ├── compare-the-properties-of-two-elements.english.md │ │ │ │ ├── learn-how-javascript-assertions-work.english.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.english.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.english.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.english.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.english.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.english.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser.english.md │ │ │ │ ├── test-for-truthiness.english.md │ │ │ │ ├── test-if-a-string-contains-a-substring.english.md │ │ │ │ ├── test-if-a-value-falls-within-a-specific-range.english.md │ │ │ │ ├── test-if-a-value-is-a-string.english.md │ │ │ │ ├── test-if-a-value-is-an-array.english.md │ │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.english.md │ │ │ │ ├── test-if-a-variable-or-function-is-defined.english.md │ │ │ │ ├── test-if-an-array-contains-an-item.english.md │ │ │ │ ├── test-if-an-object-has-a-property.english.md │ │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.english.md │ │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.english.md │ │ │ │ ├── use-assert.isok-and-assert.isnotok.english.md │ │ │ │ ├── use-regular-expressions-to-test-a-string.english.md │ │ │ │ ├── use-the-double-equals-to-assert-equality.english.md │ │ │ │ └── use-the-triple-equals-to-assert-strict-equality.english.md │ │ │ └── quality-assurance-projects │ │ │ │ ├── american-british-translator.english.md │ │ │ │ ├── issue-tracker.english.md │ │ │ │ ├── metric-imperial-converter.english.md │ │ │ │ ├── personal-library.english.md │ │ │ │ └── sudoku-solver.english.md │ │ ├── 07-scientific-computing-with-python │ │ │ ├── python-for-everybody │ │ │ │ ├── build-your-own-functions.english.md │ │ │ │ ├── comparing-and-sorting-tuples.english.md │ │ │ │ ├── conditional-execution.english.md │ │ │ │ ├── data-visualization-mailing-lists.english.md │ │ │ │ ├── data-visualization-page-rank.english.md │ │ │ │ ├── dictionaries-and-loops.english.md │ │ │ │ ├── dictionaries-common-applications.english.md │ │ │ │ ├── files-as-a-sequence.english.md │ │ │ │ ├── intermediate-expressions.english.md │ │ │ │ ├── intermediate-strings.english.md │ │ │ │ ├── introduction-elements-of-python.english.md │ │ │ │ ├── introduction-hardware-achitecture.english.md │ │ │ │ ├── introduction-python-as-a-language.english.md │ │ │ │ ├── introduction-why-program.english.md │ │ │ │ ├── iterations-definite-loops.english.md │ │ │ │ ├── iterations-loop-idioms.english.md │ │ │ │ ├── iterations-more-patterns.english.md │ │ │ │ ├── loops-and-iterations.english.md │ │ │ │ ├── make-a-relational-database.english.md │ │ │ │ ├── more-conditional-structures.english.md │ │ │ │ ├── networking-protocol.english.md │ │ │ │ ├── networking-text-processing.english.md │ │ │ │ ├── networking-using-urllib-in-python.english.md │ │ │ │ ├── networking-web-scraping-with-python.english.md │ │ │ │ ├── networking-with-python.english.md │ │ │ │ ├── networking-write-a-web-browser.english.md │ │ │ │ ├── object-lifecycle.english.md │ │ │ │ ├── objects-a-sample-class.english.md │ │ │ │ ├── objects-inheritance.english.md │ │ │ │ ├── python-dictionaries.english.md │ │ │ │ ├── python-functions.english.md │ │ │ │ ├── python-lists.english.md │ │ │ │ ├── python-objects.english.md │ │ │ │ ├── reading-files.english.md │ │ │ │ ├── regular-expressions-matching-and-extracting-data.english.md │ │ │ │ ├── regular-expressions-practical-applications.english.md │ │ │ │ ├── regular-expressions.english.md │ │ │ │ ├── relational-database-design.english.md │ │ │ │ ├── relational-databases-and-sqlite.english.md │ │ │ │ ├── relational-databases-join-operation.english.md │ │ │ │ ├── relational-databases-many-to-many-relationships.english.md │ │ │ │ ├── relational-databases-relationship-building.english.md │ │ │ │ ├── representing-relationships-in-a-relational-database.english.md │ │ │ │ ├── strings-and-lists.english.md │ │ │ │ ├── strings-in-python.english.md │ │ │ │ ├── the-tuples-collection.english.md │ │ │ │ ├── using-web-services.english.md │ │ │ │ ├── variables-expressions-and-statements.english.md │ │ │ │ ├── visualizing-data-with-python.english.md │ │ │ │ ├── web-services-api-rate-limiting-and-security.english.md │ │ │ │ ├── web-services-apis.english.md │ │ │ │ ├── web-services-json.english.md │ │ │ │ ├── web-services-service-oriented-approach.english.md │ │ │ │ ├── web-services-xml-schema.english.md │ │ │ │ ├── web-services-xml.english.md │ │ │ │ └── working-with-lists.english.md │ │ │ └── scientific-computing-with-python-projects │ │ │ │ ├── arithmetic-formatter.english.md │ │ │ │ ├── budget-app.english.md │ │ │ │ ├── polygon-area-calculator.english.md │ │ │ │ ├── probability-calculator.english.md │ │ │ │ └── time-calculator.english.md │ │ ├── 08-data-analysis-with-python │ │ │ ├── data-analysis-with-python-course │ │ │ │ ├── data-analysis-example-a.english.md │ │ │ │ ├── data-analysis-example-b.english.md │ │ │ │ ├── data-cleaning-and-visualizations.english.md │ │ │ │ ├── data-cleaning-duplicates.english.md │ │ │ │ ├── data-cleaning-introduction.english.md │ │ │ │ ├── data-cleaning-with-dataframes.english.md │ │ │ │ ├── how-to-use-jupyter-notebooks-intro.english.md │ │ │ │ ├── introduction-to-data-analysis.english.md │ │ │ │ ├── jupyter-notebooks-cells.english.md │ │ │ │ ├── jupyter-notebooks-importing-and-exporting-data.english.md │ │ │ │ ├── numpy-algebra-and-size.english.md │ │ │ │ ├── numpy-arrays.english.md │ │ │ │ ├── numpy-boolean-arrays.english.md │ │ │ │ ├── numpy-introduction-a.english.md │ │ │ │ ├── numpy-introduction-b.english.md │ │ │ │ ├── numpy-operations.english.md │ │ │ │ ├── pandas-condtitional-selection-and-modifying-dataframes.english.md │ │ │ │ ├── pandas-creating-columns.english.md │ │ │ │ ├── pandas-dataframes.english.md │ │ │ │ ├── pandas-indexing-and-conditional-selection.english.md │ │ │ │ ├── pandas-introduction.english.md │ │ │ │ ├── parsing-html-and-saving-data.english.md │ │ │ │ ├── python-functions-and-collections.english.md │ │ │ │ ├── python-introduction.english.md │ │ │ │ ├── python-iteration-and-modules.english.md │ │ │ │ ├── reading-data-csv-and-txt.english.md │ │ │ │ ├── reading-data-from-databases.english.md │ │ │ │ └── reading-data-introduction.english.md │ │ │ ├── data-analysis-with-python-projects │ │ │ │ ├── demographic-data-analyzer.english.md │ │ │ │ ├── mean-variance-standard-deviation-calculator.english.md │ │ │ │ ├── medical-data-visualizer.english.md │ │ │ │ ├── page-view-time-series-visualizer.english.md │ │ │ │ └── sea-level-predictor.english.md │ │ │ └── numpy │ │ │ │ ├── accessing-and-changing-elements,-rows,-columns.english.md │ │ │ │ ├── basics-of-numpy.english.md │ │ │ │ ├── copying-arrays-warning.english.md │ │ │ │ ├── initialize-array-problem.english.md │ │ │ │ ├── initializing-different-arrays.english.md │ │ │ │ ├── loading-data-and-advanced-indexing.english.md │ │ │ │ ├── mathematics.english.md │ │ │ │ ├── reorganizing-arrays.english.md │ │ │ │ └── what-is-numpy.english.md │ │ ├── 09-information-security │ │ │ ├── information-security-projects │ │ │ │ ├── anonymous-message-board.english.md │ │ │ │ ├── port-scanner.english.md │ │ │ │ ├── secure-real-time-multiplayer-game.english.md │ │ │ │ ├── sha-1-password-cracker.english.md │ │ │ │ └── stock-price-checker.english.md │ │ │ ├── information-security-with-helmetjs │ │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.english.md │ │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.english.md │ │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.english.md │ │ │ │ ├── disable-client-side-caching-with-helmet.nocache.english.md │ │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.english.md │ │ │ │ ├── hash-and-compare-passwords-asynchronously.english.md │ │ │ │ ├── hash-and-compare-passwords-synchronously.english.md │ │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.english.md │ │ │ │ ├── install-and-require-helmet.english.md │ │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.english.md │ │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.english.md │ │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.english.md │ │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.english.md │ │ │ │ └── understand-bcrypt-hashes.english.md │ │ │ └── python-for-penetration-testing │ │ │ │ ├── creating-a-tcp-client.english.md │ │ │ │ ├── developing-a-banner-grabber.english.md │ │ │ │ ├── developing-a-port-scanner.english.md │ │ │ │ ├── developing-an-nmap-scanner-part-1.english.md │ │ │ │ ├── developing-an-nmap-scanner-part-2.english.md │ │ │ │ ├── introduction-and-setup.english.md │ │ │ │ └── understanding-sockets-and-creating-a-tcp-server.english.md │ │ ├── 10-coding-interview-prep │ │ │ ├── algorithms │ │ │ │ ├── find-the-symmetric-difference.english.md │ │ │ │ ├── implement-bubble-sort.english.md │ │ │ │ ├── implement-insertion-sort.english.md │ │ │ │ ├── implement-merge-sort.english.md │ │ │ │ ├── implement-quick-sort.english.md │ │ │ │ ├── implement-selection-sort.english.md │ │ │ │ ├── inventory-update.english.md │ │ │ │ ├── no-repeats-please.english.md │ │ │ │ └── pairwise.english.md │ │ │ ├── data-structures │ │ │ │ ├── add-a-new-element-to-a-binary-search-tree.english.md │ │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.english.md │ │ │ │ ├── adjacency-list.english.md │ │ │ │ ├── adjacency-matrix.english.md │ │ │ │ ├── breadth-first-search.english.md │ │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.english.md │ │ │ │ ├── check-if-binary-search-tree.english.md │ │ │ │ ├── create-a-circular-queue.english.md │ │ │ │ ├── create-a-doubly-linked-list.english.md │ │ │ │ ├── create-a-hash-table.english.md │ │ │ │ ├── create-a-linked-list-class.english.md │ │ │ │ ├── create-a-map-data-structure.english.md │ │ │ │ ├── create-a-priority-queue-class.english.md │ │ │ │ ├── create-a-queue-class.english.md │ │ │ │ ├── create-a-set-class.english.md │ │ │ │ ├── create-a-stack-class.english.md │ │ │ │ ├── create-a-trie-search-tree.english.md │ │ │ │ ├── create-an-es6-javascript-map.english.md │ │ │ │ ├── create-and-add-to-sets-in-es6.english.md │ │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.english.md │ │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.english.md │ │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.english.md │ │ │ │ ├── depth-first-search.english.md │ │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.english.md │ │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.english.md │ │ │ │ ├── implement-heap-sort-with-a-min-heap.english.md │ │ │ │ ├── incidence-matrix.english.md │ │ │ │ ├── insert-an-element-into-a-max-heap.english.md │ │ │ │ ├── invert-a-binary-tree.english.md │ │ │ │ ├── learn-how-a-stack-works.english.md │ │ │ │ ├── perform-a-difference-on-two-sets-of-data.english.md │ │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.english.md │ │ │ │ ├── perform-a-union-on-two-sets.english.md │ │ │ │ ├── perform-an-intersection-on-two-sets-of-data.english.md │ │ │ │ ├── remove-an-element-from-a-max-heap.english.md │ │ │ │ ├── remove-elements-from-a-linked-list-by-index.english.md │ │ │ │ ├── remove-elements-from-a-linked-list.english.md │ │ │ │ ├── remove-items-from-a-set-in-es6.english.md │ │ │ │ ├── reverse-a-doubly-linked-list.english.md │ │ │ │ ├── search-within-a-linked-list.english.md │ │ │ │ ├── typed-arrays.english.md │ │ │ │ ├── use-.has-and-.size-on-an-es6-set.english.md │ │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.english.md │ │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.english.md │ │ │ │ ├── use-spread-and-notes-for-es5-set-integration.english.md │ │ │ │ └── work-with-nodes-in-a-linked-list.english.md │ │ │ ├── project-euler │ │ │ │ ├── problem-1-multiples-of-3-and-5.english.md │ │ │ │ ├── problem-10-summation-of-primes.english.md │ │ │ │ ├── problem-100-arranged-probability.english.md │ │ │ │ ├── problem-101-optimum-polynomial.english.md │ │ │ │ ├── problem-102-triangle-containment.english.md │ │ │ │ ├── problem-103-special-subset-sums-optimum.english.md │ │ │ │ ├── problem-104-pandigital-fibonacci-ends.english.md │ │ │ │ ├── problem-105-special-subset-sums-testing.english.md │ │ │ │ ├── problem-106-special-subset-sums-meta-testing.english.md │ │ │ │ ├── problem-107-minimal-network.english.md │ │ │ │ ├── problem-108-diophantine-reciprocals-i.english.md │ │ │ │ ├── problem-109-darts.english.md │ │ │ │ ├── problem-11-largest-product-in-a-grid.english.md │ │ │ │ ├── problem-110-diophantine-reciprocals-ii.english.md │ │ │ │ ├── problem-111-primes-with-runs.english.md │ │ │ │ ├── problem-112-bouncy-numbers.english.md │ │ │ │ ├── problem-113-non-bouncy-numbers.english.md │ │ │ │ ├── problem-114-counting-block-combinations-i.english.md │ │ │ │ ├── problem-115-counting-block-combinations-ii.english.md │ │ │ │ ├── problem-116-red-green-or-blue-tiles.english.md │ │ │ │ ├── problem-117-red-green-and-blue-tiles.english.md │ │ │ │ ├── problem-118-pandigital-prime-sets.english.md │ │ │ │ ├── problem-119-digit-power-sum.english.md │ │ │ │ ├── problem-12-highly-divisible-triangular-number.english.md │ │ │ │ ├── problem-120-square-remainders.english.md │ │ │ │ ├── problem-121-disc-game-prize-fund.english.md │ │ │ │ ├── problem-122-efficient-exponentiation.english.md │ │ │ │ ├── problem-123-prime-square-remainders.english.md │ │ │ │ ├── problem-124-ordered-radicals.english.md │ │ │ │ ├── problem-125-palindromic-sums.english.md │ │ │ │ ├── problem-126-cuboid-layers.english.md │ │ │ │ ├── problem-127-abc-hits.english.md │ │ │ │ ├── problem-128-hexagonal-tile-differences.english.md │ │ │ │ ├── problem-129-repunit-divisibility.english.md │ │ │ │ ├── problem-13-large-sum.english.md │ │ │ │ ├── problem-130-composites-with-prime-repunit-property.english.md │ │ │ │ ├── problem-131-prime-cube-partnership.english.md │ │ │ │ ├── problem-132-large-repunit-factors.english.md │ │ │ │ ├── problem-133-repunit-nonfactors.english.md │ │ │ │ ├── problem-134-prime-pair-connection.english.md │ │ │ │ ├── problem-135-same-differences.english.md │ │ │ │ ├── problem-136-singleton-difference.english.md │ │ │ │ ├── problem-137-fibonacci-golden-nuggets.english.md │ │ │ │ ├── problem-138-special-isosceles-triangles.english.md │ │ │ │ ├── problem-139-pythagorean-tiles.english.md │ │ │ │ ├── problem-14-longest-collatz-sequence.english.md │ │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.english.md │ │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.english.md │ │ │ │ ├── problem-142-perfect-square-collection.english.md │ │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.english.md │ │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.english.md │ │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.english.md │ │ │ │ ├── problem-146-investigating-a-prime-pattern.english.md │ │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.english.md │ │ │ │ ├── problem-148-exploring-pascals-triangle.english.md │ │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.english.md │ │ │ │ ├── problem-15-lattice-paths.english.md │ │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.english.md │ │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.english.md │ │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.english.md │ │ │ │ ├── problem-153-investigating-gaussian-integers.english.md │ │ │ │ ├── problem-154-exploring-pascals-pyramid.english.md │ │ │ │ ├── problem-155-counting-capacitor-circuits.english.md │ │ │ │ ├── problem-156-counting-digits.english.md │ │ │ │ ├── problem-157-solving-the-diophantine-equation.english.md │ │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.english.md │ │ │ │ ├── problem-159-digital-root-sums-of-factorisations.english.md │ │ │ │ ├── problem-16-power-digit-sum.english.md │ │ │ │ ├── problem-160-factorial-trailing-digits.english.md │ │ │ │ ├── problem-161-triominoes.english.md │ │ │ │ ├── problem-162-hexadecimal-numbers.english.md │ │ │ │ ├── problem-163-cross-hatched-triangles.english.md │ │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.english.md │ │ │ │ ├── problem-165-intersections.english.md │ │ │ │ ├── problem-166-criss-cross.english.md │ │ │ │ ├── problem-167-investigating-ulam-sequences.english.md │ │ │ │ ├── problem-168-number-rotations.english.md │ │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.english.md │ │ │ │ ├── problem-17-number-letter-counts.english.md │ │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.english.md │ │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.english.md │ │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.english.md │ │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.english.md │ │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.english.md │ │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.english.md │ │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.english.md │ │ │ │ ├── problem-177-integer-angled-quadrilaterals.english.md │ │ │ │ ├── problem-178-step-numbers.english.md │ │ │ │ ├── problem-179-consecutive-positive-divisors.english.md │ │ │ │ ├── problem-18-maximum-path-sum-i.english.md │ │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.english.md │ │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.english.md │ │ │ │ ├── problem-182-rsa-encryption.english.md │ │ │ │ ├── problem-183-maximum-product-of-parts.english.md │ │ │ │ ├── problem-184-triangles-containing-the-origin.english.md │ │ │ │ ├── problem-185-number-mind.english.md │ │ │ │ ├── problem-186-connectedness-of-a-network.english.md │ │ │ │ ├── problem-187-semiprimes.english.md │ │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.english.md │ │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.english.md │ │ │ │ ├── problem-19-counting-sundays.english.md │ │ │ │ ├── problem-190-maximising-a-weighted-product.english.md │ │ │ │ ├── problem-191-prize-strings.english.md │ │ │ │ ├── problem-192-best-approximations.english.md │ │ │ │ ├── problem-193-squarefree-numbers.english.md │ │ │ │ ├── problem-194-coloured-configurations.english.md │ │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.english.md │ │ │ │ ├── problem-196-prime-triplets.english.md │ │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.english.md │ │ │ │ ├── problem-198-ambiguous-numbers.english.md │ │ │ │ ├── problem-199-iterative-circle-packing.english.md │ │ │ │ ├── problem-2-even-fibonacci-numbers.english.md │ │ │ │ ├── problem-20-factorial-digit-sum.english.md │ │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.english.md │ │ │ │ ├── problem-201-subsets-with-a-unique-sum.english.md │ │ │ │ ├── problem-202-laserbeam.english.md │ │ │ │ ├── problem-203-squarefree-binomial-coefficients.english.md │ │ │ │ ├── problem-204-generalised-hamming-numbers.english.md │ │ │ │ ├── problem-205-dice-game.english.md │ │ │ │ ├── problem-206-concealed-square.english.md │ │ │ │ ├── problem-207-integer-partition-equations.english.md │ │ │ │ ├── problem-208-robot-walks.english.md │ │ │ │ ├── problem-209-circular-logic.english.md │ │ │ │ ├── problem-21-amicable-numbers.english.md │ │ │ │ ├── problem-210-obtuse-angled-triangles.english.md │ │ │ │ ├── problem-211-divisor-square-sum.english.md │ │ │ │ ├── problem-212-combined-volume-of-cuboids.english.md │ │ │ │ ├── problem-213-flea-circus.english.md │ │ │ │ ├── problem-214-totient-chains.english.md │ │ │ │ ├── problem-215-crack-free-walls.english.md │ │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.english.md │ │ │ │ ├── problem-217-balanced-numbers.english.md │ │ │ │ ├── problem-218-perfect-right-angled-triangles.english.md │ │ │ │ ├── problem-219-skew-cost-coding.english.md │ │ │ │ ├── problem-22-names-scores.english.md │ │ │ │ ├── problem-220-heighway-dragon.english.md │ │ │ │ ├── problem-221-alexandrian-integers.english.md │ │ │ │ ├── problem-222-sphere-packing.english.md │ │ │ │ ├── problem-223-almost-right-angled-triangles-i.english.md │ │ │ │ ├── problem-224-almost-right-angled-triangles-ii.english.md │ │ │ │ ├── problem-225-tribonacci-non-divisors.english.md │ │ │ │ ├── problem-226-a-scoop-of-blancmange.english.md │ │ │ │ ├── problem-227-the-chase.english.md │ │ │ │ ├── problem-228-minkowski-sums.english.md │ │ │ │ ├── problem-229-four-representations-using-squares.english.md │ │ │ │ ├── problem-23-non-abundant-sums.english.md │ │ │ │ ├── problem-230-fibonacci-words.english.md │ │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.english.md │ │ │ │ ├── problem-232-the-race.english.md │ │ │ │ ├── problem-233-lattice-points-on-a-circle.english.md │ │ │ │ ├── problem-234-semidivisible-numbers.english.md │ │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.english.md │ │ │ │ ├── problem-236-luxury-hampers.english.md │ │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.english.md │ │ │ │ ├── problem-238-infinite-string-tour.english.md │ │ │ │ ├── problem-239-twenty-two-foolish-primes.english.md │ │ │ │ ├── problem-24-lexicographic-permutations.english.md │ │ │ │ ├── problem-240-top-dice.english.md │ │ │ │ ├── problem-241-perfection-quotients.english.md │ │ │ │ ├── problem-242-odd-triplets.english.md │ │ │ │ ├── problem-243-resilience.english.md │ │ │ │ ├── problem-244-sliders.english.md │ │ │ │ ├── problem-245-coresilience.english.md │ │ │ │ ├── problem-246-tangents-to-an-ellipse.english.md │ │ │ │ ├── problem-247-squares-under-a-hyperbola.english.md │ │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.english.md │ │ │ │ ├── problem-249-prime-subset-sums.english.md │ │ │ │ ├── problem-25-1000-digit-fibonacci-number.english.md │ │ │ │ ├── problem-250-250250.english.md │ │ │ │ ├── problem-251-cardano-triplets.english.md │ │ │ │ ├── problem-252-convex-holes.english.md │ │ │ │ ├── problem-253-tidying-up.english.md │ │ │ │ ├── problem-254-sums-of-digit-factorials.english.md │ │ │ │ ├── problem-255-rounded-square-roots.english.md │ │ │ │ ├── problem-256-tatami-free-rooms.english.md │ │ │ │ ├── problem-257-angular-bisectors.english.md │ │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.english.md │ │ │ │ ├── problem-259-reachable-numbers.english.md │ │ │ │ ├── problem-26-reciprocal-cycles.english.md │ │ │ │ ├── problem-260-stone-game.english.md │ │ │ │ ├── problem-261-pivotal-square-sums.english.md │ │ │ │ ├── problem-262-mountain-range.english.md │ │ │ │ ├── problem-263-an-engineers-dream-come-true.english.md │ │ │ │ ├── problem-264-triangle-centres.english.md │ │ │ │ ├── problem-265-binary-circles.english.md │ │ │ │ ├── problem-266-pseudo-square-root.english.md │ │ │ │ ├── problem-267-billionaire.english.md │ │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.english.md │ │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.english.md │ │ │ │ ├── problem-27-quadratic-primes.english.md │ │ │ │ ├── problem-270-cutting-squares.english.md │ │ │ │ ├── problem-271-modular-cubes-part-1.english.md │ │ │ │ ├── problem-272-modular-cubes-part-2.english.md │ │ │ │ ├── problem-273-sum-of-squares.english.md │ │ │ │ ├── problem-274-divisibility-multipliers.english.md │ │ │ │ ├── problem-275-balanced-sculptures.english.md │ │ │ │ ├── problem-276-primitive-triangles.english.md │ │ │ │ ├── problem-277-a-modified-collatz-sequence.english.md │ │ │ │ ├── problem-278-linear-combinations-of-semiprimes.english.md │ │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.english.md │ │ │ │ ├── problem-28-number-spiral-diagonals.english.md │ │ │ │ ├── problem-280-ant-and-seeds.english.md │ │ │ │ ├── problem-281-pizza-toppings.english.md │ │ │ │ ├── problem-282-the-ackermann-function.english.md │ │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.english.md │ │ │ │ ├── problem-284-steady-squares.english.md │ │ │ │ ├── problem-285-pythagorean-odds.english.md │ │ │ │ ├── problem-286-scoring-probabilities.english.md │ │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.english.md │ │ │ │ ├── problem-288-an-enormous-factorial.english.md │ │ │ │ ├── problem-289-eulerian-cycles.english.md │ │ │ │ ├── problem-29-distinct-powers.english.md │ │ │ │ ├── problem-290-digital-signature.english.md │ │ │ │ ├── problem-291-panaitopol-primes.english.md │ │ │ │ ├── problem-292-pythagorean-polygons.english.md │ │ │ │ ├── problem-293-pseudo-fortunate-numbers.english.md │ │ │ │ ├── problem-294-sum-of-digits---experience-23.english.md │ │ │ │ ├── problem-295-lenticular-holes.english.md │ │ │ │ ├── problem-296-angular-bisector-and-tangent.english.md │ │ │ │ ├── problem-297-zeckendorf-representation.english.md │ │ │ │ ├── problem-298-selective-amnesia.english.md │ │ │ │ ├── problem-299-three-similar-triangles.english.md │ │ │ │ ├── problem-3-largest-prime-factor.english.md │ │ │ │ ├── problem-30-digit-n-powers.english.md │ │ │ │ ├── problem-300-protein-folding.english.md │ │ │ │ ├── problem-301-nim.english.md │ │ │ │ ├── problem-302-strong-achilles-numbers.english.md │ │ │ │ ├── problem-303-multiples-with-small-digits.english.md │ │ │ │ ├── problem-304-primonacci.english.md │ │ │ │ ├── problem-305-reflexive-position.english.md │ │ │ │ ├── problem-306-paper-strip-game.english.md │ │ │ │ ├── problem-307-chip-defects.english.md │ │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.english.md │ │ │ │ ├── problem-309-integer-ladders.english.md │ │ │ │ ├── problem-31-coin-sums.english.md │ │ │ │ ├── problem-310-nim-square.english.md │ │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.english.md │ │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.english.md │ │ │ │ ├── problem-313-sliding-game.english.md │ │ │ │ ├── problem-314-the-mouse-on-the-moon.english.md │ │ │ │ ├── problem-315-digital-root-clocks.english.md │ │ │ │ ├── problem-316-numbers-in-decimal-expansions.english.md │ │ │ │ ├── problem-317-firecracker.english.md │ │ │ │ ├── problem-318-2011-nines.english.md │ │ │ │ ├── problem-319-bounded-sequences.english.md │ │ │ │ ├── problem-32-pandigital-products.english.md │ │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.english.md │ │ │ │ ├── problem-321-swapping-counters.english.md │ │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.english.md │ │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.english.md │ │ │ │ ├── problem-324-building-a-tower.english.md │ │ │ │ ├── problem-325-stone-game-ii.english.md │ │ │ │ ├── problem-326-modulo-summations.english.md │ │ │ │ ├── problem-327-rooms-of-doom.english.md │ │ │ │ ├── problem-328-lowest-cost-search.english.md │ │ │ │ ├── problem-329-prime-frog.english.md │ │ │ │ ├── problem-33-digit-cancelling-fractions.english.md │ │ │ │ ├── problem-330-eulers-number.english.md │ │ │ │ ├── problem-331-cross-flips.english.md │ │ │ │ ├── problem-332-spherical-triangles.english.md │ │ │ │ ├── problem-333-special-partitions.english.md │ │ │ │ ├── problem-334-spilling-the-beans.english.md │ │ │ │ ├── problem-335-gathering-the-beans.english.md │ │ │ │ ├── problem-336-maximix-arrangements.english.md │ │ │ │ ├── problem-337-totient-stairstep-sequences.english.md │ │ │ │ ├── problem-338-cutting-rectangular-grid-paper.english.md │ │ │ │ ├── problem-339-peredur-fab-efrawg.english.md │ │ │ │ ├── problem-34-digit-factorials.english.md │ │ │ │ ├── problem-340-crazy-function.english.md │ │ │ │ ├── problem-341-golombs-self-describing-sequence.english.md │ │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.english.md │ │ │ │ ├── problem-343-fractional-sequences.english.md │ │ │ │ ├── problem-344-silver-dollar-game.english.md │ │ │ │ ├── problem-345-matrix-sum.english.md │ │ │ │ ├── problem-346-strong-repunits.english.md │ │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.english.md │ │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.english.md │ │ │ │ ├── problem-349-langtons-ant.english.md │ │ │ │ ├── problem-35-circular-primes.english.md │ │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.english.md │ │ │ │ ├── problem-351-hexagonal-orchards.english.md │ │ │ │ ├── problem-352-blood-tests.english.md │ │ │ │ ├── problem-353-risky-moon.english.md │ │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.english.md │ │ │ │ ├── problem-355-maximal-coprime-subset.english.md │ │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.english.md │ │ │ │ ├── problem-357-prime-generating-integers.english.md │ │ │ │ ├── problem-358-cyclic-numbers.english.md │ │ │ │ ├── problem-359-hilberts-new-hotel.english.md │ │ │ │ ├── problem-36-double-base-palindromes.english.md │ │ │ │ ├── problem-360-scary-sphere.english.md │ │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.english.md │ │ │ │ ├── problem-362-squarefree-factors.english.md │ │ │ │ ├── problem-363-bzier-curves.english.md │ │ │ │ ├── problem-364-comfortable-distance.english.md │ │ │ │ ├── problem-365-a-huge-binomial-coefficient.english.md │ │ │ │ ├── problem-366-stone-game-iii.english.md │ │ │ │ ├── problem-367-bozo-sort.english.md │ │ │ │ ├── problem-368-a-kempner-like-series.english.md │ │ │ │ ├── problem-369-badugi.english.md │ │ │ │ ├── problem-37-truncatable-primes.english.md │ │ │ │ ├── problem-370-geometric-triangles.english.md │ │ │ │ ├── problem-371-licence-plates.english.md │ │ │ │ ├── problem-372-pencils-of-rays.english.md │ │ │ │ ├── problem-373-circumscribed-circles.english.md │ │ │ │ ├── problem-374-maximum-integer-partition-product.english.md │ │ │ │ ├── problem-375-minimum-of-subsequences.english.md │ │ │ │ ├── problem-376-nontransitive-sets-of-dice.english.md │ │ │ │ ├── problem-377-sum-of-digits-experience-13.english.md │ │ │ │ ├── problem-378-triangle-triples.english.md │ │ │ │ ├── problem-379-least-common-multiple-count.english.md │ │ │ │ ├── problem-38-pandigital-multiples.english.md │ │ │ │ ├── problem-380-amazing-mazes.english.md │ │ │ │ ├── problem-381-prime-k-factorial.english.md │ │ │ │ ├── problem-382-generating-polygons.english.md │ │ │ │ ├── problem-383-divisibility-comparison-between-factorials.english.md │ │ │ │ ├── problem-384-rudin-shapiro-sequence.english.md │ │ │ │ ├── problem-385-ellipses-inside-triangles.english.md │ │ │ │ ├── problem-386-maximum-length-of-an-antichain.english.md │ │ │ │ ├── problem-387-harshad-numbers.english.md │ │ │ │ ├── problem-388-distinct-lines.english.md │ │ │ │ ├── problem-389-platonic-dice.english.md │ │ │ │ ├── problem-39-integer-right-triangles.english.md │ │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.english.md │ │ │ │ ├── problem-391-hopping-game.english.md │ │ │ │ ├── problem-392-enmeshed-unit-circle.english.md │ │ │ │ ├── problem-393-migrating-ants.english.md │ │ │ │ ├── problem-394-eating-pie.english.md │ │ │ │ ├── problem-395-pythagorean-tree.english.md │ │ │ │ ├── problem-396-weak-goodstein-sequence.english.md │ │ │ │ ├── problem-397-triangle-on-parabola.english.md │ │ │ │ ├── problem-398-cutting-rope.english.md │ │ │ │ ├── problem-399-squarefree-fibonacci-numbers.english.md │ │ │ │ ├── problem-4-largest-palindrome-product.english.md │ │ │ │ ├── problem-40-champernownes-constant.english.md │ │ │ │ ├── problem-400-fibonacci-tree-game.english.md │ │ │ │ ├── problem-401-sum-of-squares-of-divisors.english.md │ │ │ │ ├── problem-402-integer-valued-polynomials.english.md │ │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.english.md │ │ │ │ ├── problem-404-crisscross-ellipses.english.md │ │ │ │ ├── problem-405-a-rectangular-tiling.english.md │ │ │ │ ├── problem-406-guessing-game.english.md │ │ │ │ ├── problem-407-idempotents.english.md │ │ │ │ ├── problem-408-admissible-paths-through-a-grid.english.md │ │ │ │ ├── problem-409-nim-extreme.english.md │ │ │ │ ├── problem-41-pandigital-prime.english.md │ │ │ │ ├── problem-410-circle-and-tangent-line.english.md │ │ │ │ ├── problem-411-uphill-paths.english.md │ │ │ │ ├── problem-412-gnomon-numbering.english.md │ │ │ │ ├── problem-413-one-child-numbers.english.md │ │ │ │ ├── problem-414-kaprekar-constant.english.md │ │ │ │ ├── problem-415-titanic-sets.english.md │ │ │ │ ├── problem-416-a-frogs-trip.english.md │ │ │ │ ├── problem-417-reciprocal-cycles-ii.english.md │ │ │ │ ├── problem-418-factorisation-triples.english.md │ │ │ │ ├── problem-419-look-and-say-sequence.english.md │ │ │ │ ├── problem-42-coded-triangle-numbers.english.md │ │ │ │ ├── problem-420-2x2-positive-integer-matrix.english.md │ │ │ │ ├── problem-421-prime-factors-of-n151.english.md │ │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.english.md │ │ │ │ ├── problem-423-consecutive-die-throws.english.md │ │ │ │ ├── problem-424-kakuro.english.md │ │ │ │ ├── problem-425-prime-connection.english.md │ │ │ │ ├── problem-426-box-ball-system.english.md │ │ │ │ ├── problem-427-n-sequences.english.md │ │ │ │ ├── problem-428-necklace-of-circles.english.md │ │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.english.md │ │ │ │ ├── problem-43-sub-string-divisibility.english.md │ │ │ │ ├── problem-430-range-flips.english.md │ │ │ │ ├── problem-431-square-space-silo.english.md │ │ │ │ ├── problem-432-totient-sum.english.md │ │ │ │ ├── problem-433-steps-in-euclids-algorithm.english.md │ │ │ │ ├── problem-434-rigid-graphs.english.md │ │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.english.md │ │ │ │ ├── problem-436-unfair-wager.english.md │ │ │ │ ├── problem-437-fibonacci-primitive-roots.english.md │ │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.english.md │ │ │ │ ├── problem-439-sum-of-sum-of-divisors.english.md │ │ │ │ ├── problem-44-pentagon-numbers.english.md │ │ │ │ ├── problem-440-gcd-and-tiling.english.md │ │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.english.md │ │ │ │ ├── problem-442-eleven-free-integers.english.md │ │ │ │ ├── problem-443-gcd-sequence.english.md │ │ │ │ ├── problem-444-the-roundtable-lottery.english.md │ │ │ │ ├── problem-445-retractions-a.english.md │ │ │ │ ├── problem-446-retractions-b.english.md │ │ │ │ ├── problem-447-retractions-c.english.md │ │ │ │ ├── problem-448-average-least-common-multiple.english.md │ │ │ │ ├── problem-449-chocolate-covered-candy.english.md │ │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.english.md │ │ │ │ ├── problem-450-hypocycloid-and-lattice-points.english.md │ │ │ │ ├── problem-451-modular-inverses.english.md │ │ │ │ ├── problem-452-long-products.english.md │ │ │ │ ├── problem-453-lattice-quadrilaterals.english.md │ │ │ │ ├── problem-454-diophantine-reciprocals-iii.english.md │ │ │ │ ├── problem-455-powers-with-trailing-digits.english.md │ │ │ │ ├── problem-456-triangles-containing-the-origin-ii.english.md │ │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.english.md │ │ │ │ ├── problem-458-permutations-of-project.english.md │ │ │ │ ├── problem-459-flipping-game.english.md │ │ │ │ ├── problem-46-goldbachs-other-conjecture.english.md │ │ │ │ ├── problem-460-an-ant-on-the-move.english.md │ │ │ │ ├── problem-461-almost-pi.english.md │ │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.english.md │ │ │ │ ├── problem-463-a-weird-recurrence-relation.english.md │ │ │ │ ├── problem-464-mbius-function-and-intervals.english.md │ │ │ │ ├── problem-465-polar-polygons.english.md │ │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.english.md │ │ │ │ ├── problem-467-superinteger.english.md │ │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.english.md │ │ │ │ ├── problem-469-empty-chairs.english.md │ │ │ │ ├── problem-47-distinct-primes-factors.english.md │ │ │ │ ├── problem-470-super-ramvok.english.md │ │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.english.md │ │ │ │ ├── problem-472-comfortable-distance-ii.english.md │ │ │ │ ├── problem-473-phigital-number-base.english.md │ │ │ │ ├── problem-474-last-digits-of-divisors.english.md │ │ │ │ ├── problem-475-music-festival.english.md │ │ │ │ ├── problem-476-circle-packing-ii.english.md │ │ │ │ ├── problem-477-number-sequence-game.english.md │ │ │ │ ├── problem-478-mixtures.english.md │ │ │ │ ├── problem-479-roots-on-the-rise.english.md │ │ │ │ ├── problem-48-self-powers.english.md │ │ │ │ ├── problem-480-the-last-question.english.md │ │ │ │ ├── problem-49-prime-permutations.english.md │ │ │ │ ├── problem-5-smallest-multiple.english.md │ │ │ │ ├── problem-50-consecutive-prime-sum.english.md │ │ │ │ ├── problem-51-prime-digit-replacements.english.md │ │ │ │ ├── problem-52-permuted-multiples.english.md │ │ │ │ ├── problem-53-combinatoric-selections.english.md │ │ │ │ ├── problem-54-poker-hands.english.md │ │ │ │ ├── problem-55-lychrel-numbers.english.md │ │ │ │ ├── problem-56-powerful-digit-sum.english.md │ │ │ │ ├── problem-57-square-root-convergents.english.md │ │ │ │ ├── problem-58-spiral-primes.english.md │ │ │ │ ├── problem-59-xor-decryption.english.md │ │ │ │ ├── problem-6-sum-square-difference.english.md │ │ │ │ ├── problem-60-prime-pair-sets.english.md │ │ │ │ ├── problem-61-cyclical-figurate-numbers.english.md │ │ │ │ ├── problem-62-cubic-permutations.english.md │ │ │ │ ├── problem-63-powerful-digit-counts.english.md │ │ │ │ ├── problem-64-odd-period-square-roots.english.md │ │ │ │ ├── problem-65-convergents-of-e.english.md │ │ │ │ ├── problem-66-diophantine-equation.english.md │ │ │ │ ├── problem-67-maximum-path-sum-ii.english.md │ │ │ │ ├── problem-68-magic-5-gon-ring.english.md │ │ │ │ ├── problem-69-totient-maximum.english.md │ │ │ │ ├── problem-7-10001st-prime.english.md │ │ │ │ ├── problem-70-totient-permutation.english.md │ │ │ │ ├── problem-71-ordered-fractions.english.md │ │ │ │ ├── problem-72-counting-fractions.english.md │ │ │ │ ├── problem-73-counting-fractions-in-a-range.english.md │ │ │ │ ├── problem-74-digit-factorial-chains.english.md │ │ │ │ ├── problem-75-singular-integer-right-triangles.english.md │ │ │ │ ├── problem-76-counting-summations.english.md │ │ │ │ ├── problem-77-prime-summations.english.md │ │ │ │ ├── problem-78-coin-partitions.english.md │ │ │ │ ├── problem-79-passcode-derivation.english.md │ │ │ │ ├── problem-8-largest-product-in-a-series.english.md │ │ │ │ ├── problem-80-square-root-digital-expansion.english.md │ │ │ │ ├── problem-81-path-sum-two-ways.english.md │ │ │ │ ├── problem-82-path-sum-three-ways.english.md │ │ │ │ ├── problem-83-path-sum-four-ways.english.md │ │ │ │ ├── problem-84-monopoly-odds.english.md │ │ │ │ ├── problem-85-counting-rectangles.english.md │ │ │ │ ├── problem-86-cuboid-route.english.md │ │ │ │ ├── problem-87-prime-power-triples.english.md │ │ │ │ ├── problem-88-product-sum-numbers.english.md │ │ │ │ ├── problem-89-roman-numerals.english.md │ │ │ │ ├── problem-9-special-pythagorean-triplet.english.md │ │ │ │ ├── problem-90-cube-digit-pairs.english.md │ │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.english.md │ │ │ │ ├── problem-92-square-digit-chains.english.md │ │ │ │ ├── problem-93-arithmetic-expressions.english.md │ │ │ │ ├── problem-94-almost-equilateral-triangles.english.md │ │ │ │ ├── problem-95-amicable-chains.english.md │ │ │ │ ├── problem-96-su-doku.english.md │ │ │ │ ├── problem-97-large-non-mersenne-prime.english.md │ │ │ │ ├── problem-98-anagramic-squares.english.md │ │ │ │ └── problem-99-largest-exponential.english.md │ │ │ ├── rosetta-code │ │ │ │ ├── 100-doors.english.md │ │ │ │ ├── 24-game.english.md │ │ │ │ ├── 9-billion-names-of-god-the-integer.english.md │ │ │ │ ├── abc-problem.english.md │ │ │ │ ├── abundant-deficient-and-perfect-number-classifications.english.md │ │ │ │ ├── accumulator-factory.english.md │ │ │ │ ├── ackermann-function.english.md │ │ │ │ ├── align-columns.english.md │ │ │ │ ├── amicable-pairs.english.md │ │ │ │ ├── averages-mode.english.md │ │ │ │ ├── averages-pythagorean-means.english.md │ │ │ │ ├── averages-root-mean-square.english.md │ │ │ │ ├── babbage-problem.english.md │ │ │ │ ├── balanced-brackets.english.md │ │ │ │ ├── circles-of-given-radius-through-two-points.english.md │ │ │ │ ├── closest-pair-problem.english.md │ │ │ │ ├── combinations.english.md │ │ │ │ ├── comma-quibbling.english.md │ │ │ │ ├── compare-a-list-of-strings.english.md │ │ │ │ ├── convert-seconds-to-compound-duration.english.md │ │ │ │ ├── count-occurrences-of-a-substring.english.md │ │ │ │ ├── count-the-coins.english.md │ │ │ │ ├── cramers-rule.english.md │ │ │ │ ├── cumulative-standard-deviation.english.md │ │ │ │ ├── cusip.english.md │ │ │ │ ├── cut-a-rectangle.english.md │ │ │ │ ├── date-format.english.md │ │ │ │ ├── date-manipulation.english.md │ │ │ │ ├── day-of-the-week.english.md │ │ │ │ ├── deal-cards-for-freecell.english.md │ │ │ │ ├── deepcopy.english.md │ │ │ │ ├── define-a-primitive-data-type.english.md │ │ │ │ ├── department-numbers.english.md │ │ │ │ ├── discordian-date.english.md │ │ │ │ ├── dot-product.english.md │ │ │ │ ├── element-wise-operations.english.md │ │ │ │ ├── emirp-primes.english.md │ │ │ │ ├── entropy.english.md │ │ │ │ ├── equilibrium-index.english.md │ │ │ │ ├── ethiopian-multiplication.english.md │ │ │ │ ├── euler-method.english.md │ │ │ │ ├── evaluate-binomial-coefficients.english.md │ │ │ │ ├── execute-a-markov-algorithm.english.md │ │ │ │ ├── execute-brain.english.md │ │ │ │ ├── extensible-prime-generator.english.md │ │ │ │ ├── factorial.english.md │ │ │ │ ├── factors-of-a-mersenne-number.english.md │ │ │ │ ├── factors-of-an-integer.english.md │ │ │ │ ├── farey-sequence.english.md │ │ │ │ ├── fibonacci-n-step-number-sequences.english.md │ │ │ │ ├── fibonacci-sequence.english.md │ │ │ │ ├── fibonacci-word.english.md │ │ │ │ ├── fizzbuzz.english.md │ │ │ │ ├── fractran.english.md │ │ │ │ ├── gamma-function.english.md │ │ │ │ ├── gaussian-elimination.english.md │ │ │ │ ├── general-fizzbuzz.english.md │ │ │ │ ├── generate-lower-case-ascii-alphabet.english.md │ │ │ │ ├── generator-exponential.english.md │ │ │ │ ├── gray-code.english.md │ │ │ │ ├── greatest-common-divisor.english.md │ │ │ │ ├── greatest-subsequential-sum.english.md │ │ │ │ ├── hailstone-sequence.english.md │ │ │ │ ├── happy-numbers.english.md │ │ │ │ ├── harshad-or-niven-series.english.md │ │ │ │ ├── hash-from-two-arrays.english.md │ │ │ │ ├── hash-join.english.md │ │ │ │ ├── heronian-triangles.english.md │ │ │ │ ├── hofstadter-figure-figure-sequences.english.md │ │ │ │ ├── hofstadter-q-sequence.english.md │ │ │ │ ├── i-before-e-except-after-c.english.md │ │ │ │ ├── iban.english.md │ │ │ │ ├── identity-matrix.english.md │ │ │ │ ├── iterated-digits-squaring.english.md │ │ │ │ ├── jaro-distance.english.md │ │ │ │ ├── jortsort.english.md │ │ │ │ ├── josephus-problem.english.md │ │ │ │ ├── k-d-tree.english.md │ │ │ │ ├── kaprekar-numbers.english.md │ │ │ │ ├── knapsack-problem-0-1.english.md │ │ │ │ ├── knapsack-problem-bounded.english.md │ │ │ │ ├── knapsack-problem-continuous.english.md │ │ │ │ ├── knapsack-problem-unbounded.english.md │ │ │ │ ├── knights-tour.english.md │ │ │ │ ├── largest-int-from-concatenated-ints.english.md │ │ │ │ ├── last-friday-of-each-month.english.md │ │ │ │ ├── last-letter-first-letter.english.md │ │ │ │ ├── leap-year.english.md │ │ │ │ ├── least-common-multiple.english.md │ │ │ │ ├── left-factorials.english.md │ │ │ │ ├── letter-frequency.english.md │ │ │ │ ├── levenshtein-distance.english.md │ │ │ │ ├── linear-congruential-generator.english.md │ │ │ │ ├── long-multiplication.english.md │ │ │ │ ├── longest-common-subsequence.english.md │ │ │ │ ├── longest-increasing-subsequence.english.md │ │ │ │ ├── longest-string-challenge.english.md │ │ │ │ ├── look-and-say-sequence.english.md │ │ │ │ ├── loop-over-multiple-arrays-simultaneously.english.md │ │ │ │ ├── lu-decomposition.english.md │ │ │ │ ├── lucas-lehmer-test.english.md │ │ │ │ ├── ludic-numbers.english.md │ │ │ │ ├── luhn-test-of-credit-card-numbers.english.md │ │ │ │ ├── lychrel-numbers.english.md │ │ │ │ ├── lzw-compression.english.md │ │ │ │ ├── s-expressions.english.md │ │ │ │ ├── sailors-coconuts-and-a-monkey-problem.english.md │ │ │ │ ├── search-a-list-of-records.english.md │ │ │ │ ├── sedols.english.md │ │ │ │ ├── self-describing-numbers.english.md │ │ │ │ ├── self-referential-sequence.english.md │ │ │ │ ├── semiprime.english.md │ │ │ │ ├── set-consolidation.english.md │ │ │ │ ├── set-of-real-numbers.english.md │ │ │ │ ├── sha-1.english.md │ │ │ │ ├── sha-256.english.md │ │ │ │ ├── sort-an-array-of-composite-structures.english.md │ │ │ │ ├── sort-disjoint-sublist.english.md │ │ │ │ ├── sort-stability.english.md │ │ │ │ ├── sort-using-a-custom-comparator.english.md │ │ │ │ ├── sorting-algorithms-bead-sort.english.md │ │ │ │ ├── sorting-algorithms-bogosort.english.md │ │ │ │ ├── sorting-algorithms-cocktail-sort.english.md │ │ │ │ ├── sorting-algorithms-comb-sort.english.md │ │ │ │ ├── sorting-algorithms-gnome-sort.english.md │ │ │ │ ├── sorting-algorithms-pancake-sort.english.md │ │ │ │ ├── sorting-algorithms-permutation-sort.english.md │ │ │ │ ├── sorting-algorithms-shell-sort.english.md │ │ │ │ ├── sorting-algorithms-stooge-sort.english.md │ │ │ │ ├── sorting-algorithms-strand-sort.english.md │ │ │ │ ├── soundex.english.md │ │ │ │ ├── spiral-matrix.english.md │ │ │ │ ├── split-a-character-string-based-on-change-of-character.english.md │ │ │ │ ├── state-name-puzzle.english.md │ │ │ │ ├── stern-brocot-sequence.english.md │ │ │ │ ├── straddling-checkerboard.english.md │ │ │ │ ├── stream-merge.english.md │ │ │ │ ├── strip-control-codes-and-extended-characters-from-a-string.english.md │ │ │ │ ├── subleq.english.md │ │ │ │ ├── sudoku.english.md │ │ │ │ ├── sum-digits-of-an-integer.english.md │ │ │ │ ├── sum-multiples-of-3-and-5.english.md │ │ │ │ ├── sum-of-a-series.english.md │ │ │ │ ├── sum-of-squares.english.md │ │ │ │ ├── sum-to-100.english.md │ │ │ │ ├── sutherland-hodgman-polygon-clipping.english.md │ │ │ │ ├── symmetric-difference.english.md │ │ │ │ ├── taxicab-numbers.english.md │ │ │ │ ├── tokenize-a-string-with-escaping.english.md │ │ │ │ ├── top-rank-per-group.english.md │ │ │ │ ├── topological-sort.english.md │ │ │ │ ├── towers-of-hanoi.english.md │ │ │ │ ├── vector-cross-product.english.md │ │ │ │ ├── vector-dot-product.english.md │ │ │ │ ├── word-wrap.english.md │ │ │ │ ├── y-combinator.english.md │ │ │ │ ├── zeckendorf-number-representation.english.md │ │ │ │ ├── zhang-suen-thinning-algorithm.english.md │ │ │ │ └── zig-zag-matrix.english.md │ │ │ └── take-home-projects │ │ │ │ ├── build-a-camper-leaderboard.english.md │ │ │ │ ├── build-a-light-bright-app.english.md │ │ │ │ ├── build-a-nightlife-coordination-app.english.md │ │ │ │ ├── build-a-pinterest-clone.english.md │ │ │ │ ├── build-a-pong-game.english.md │ │ │ │ ├── build-a-recipe-box.english.md │ │ │ │ ├── build-a-roguelike-dungeon-crawler-game.english.md │ │ │ │ ├── build-a-simon-game.english.md │ │ │ │ ├── build-a-tic-tac-toe-game.english.md │ │ │ │ ├── build-a-voting-app.english.md │ │ │ │ ├── build-a-wikipedia-viewer.english.md │ │ │ │ ├── build-an-image-search-abstraction-layer.english.md │ │ │ │ ├── build-the-game-of-life.english.md │ │ │ │ ├── chart-the-stock-market.english.md │ │ │ │ ├── manage-a-book-trading-club.english.md │ │ │ │ ├── map-data-across-the-globe.english.md │ │ │ │ ├── p2p-video-chat-application.english.md │ │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.english.md │ │ │ │ ├── show-the-local-weather.english.md │ │ │ │ └── use-the-twitch-json-api.english.md │ │ ├── 11-machine-learning-with-python │ │ │ ├── how-neural-networks-work │ │ │ │ ├── deep-learning-demystified.english.md │ │ │ │ ├── how-convolutional-neural-networks-work.english.md │ │ │ │ ├── how-deep-neural-networks-work.english.md │ │ │ │ └── recurrent-neural-networks-rnn-and-long-short-term-memory-lstm.english.md │ │ │ ├── machine-learning-with-python-projects │ │ │ │ ├── book-recommendation-engine-using-knn.english.md │ │ │ │ ├── cat-and-dog-image-classifier.english.md │ │ │ │ ├── linear-regression-health-costs-calculator.english.md │ │ │ │ ├── neural-network-sms-text-classifier.english.md │ │ │ │ └── rock-paper-scissors.english.md │ │ │ └── tensorflow │ │ │ │ ├── conclusion.english.md │ │ │ │ ├── convolutional-neural-networks-evaluating-the-model.english.md │ │ │ │ ├── convolutional-neural-networks-picking-a-pretrained-model.english.md │ │ │ │ ├── convolutional-neural-networks-the-convolutional-layer.english.md │ │ │ │ ├── convolutional-neural-networks.english.md │ │ │ │ ├── core-learning-algorithms-building-the-model.english.md │ │ │ │ ├── core-learning-algorithms-classification.english.md │ │ │ │ ├── core-learning-algorithms-clustering.english.md │ │ │ │ ├── core-learning-algorithms-hidden-markov-models.english.md │ │ │ │ ├── core-learning-algorithms-the-training-process.english.md │ │ │ │ ├── core-learning-algorithms-training-and-testing-data.english.md │ │ │ │ ├── core-learning-algorithms-using-probabilities-to-make-predictions.english.md │ │ │ │ ├── core-learning-algorithms-working-with-data.english.md │ │ │ │ ├── core-learning-algorithms.english.md │ │ │ │ ├── creating-a-convolutional-neural-network.english.md │ │ │ │ ├── introduction-machine-learning-fundamentals.english.md │ │ │ │ ├── introduction-to-tensorflow.english.md │ │ │ │ ├── natural-language-processing-with-rnns-building-the-model.english.md │ │ │ │ ├── natural-language-processing-with-rnns-create-a-play-generator.english.md │ │ │ │ ├── natural-language-processing-with-rnns-making-predictions.english.md │ │ │ │ ├── natural-language-processing-with-rnns-part-2.english.md │ │ │ │ ├── natural-language-processing-with-rnns-recurring-neural-networks.english.md │ │ │ │ ├── natural-language-processing-with-rnns-sentimental-analysis.english.md │ │ │ │ ├── natural-language-processing-with-rnns-training-the-model.english.md │ │ │ │ ├── natural-language-processing-with-rnns.english.md │ │ │ │ ├── neural-networks-activation-functions.english.md │ │ │ │ ├── neural-networks-creating-a-model.english.md │ │ │ │ ├── neural-networks-optimizers.english.md │ │ │ │ ├── neural-networks-with-tensorflow.english.md │ │ │ │ ├── reinforcement-learning-with-q-learning-example.english.md │ │ │ │ ├── reinforcement-learning-with-q-learning-part-2.english.md │ │ │ │ └── reinforcement-learning-with-q-learning.english.md │ │ └── 12-certificates │ │ │ ├── apis-and-microservices-certificate │ │ │ └── apis-and-microservices-certificate.english.md │ │ │ ├── data-analysis-with-python-certificate │ │ │ └── data-analysis-with-python-certificate.english.md │ │ │ ├── data-visualization-certificate │ │ │ └── data-visualization-certificate.english.md │ │ │ ├── front-end-libraries-certificate │ │ │ └── front-end-libraries-certificate.english.md │ │ │ ├── information-security-certificate │ │ │ └── information-security-certificate.english.md │ │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── javascript-algorithms-and-data-structures-certificate.english.md │ │ │ ├── legacy-back-end-certificate │ │ │ └── legacy-back-end-certificate.english.md │ │ │ ├── legacy-data-visualization-certificate │ │ │ └── legacy-data-visualization-certificate.english.md │ │ │ ├── legacy-front-end-certificate │ │ │ └── legacy-front-end-certificate.english.md │ │ │ ├── legacy-full-stack-certificate │ │ │ └── legacy-full-stack-certificate.english.md │ │ │ ├── legacy-information-security-and-quality-assurance-certificate │ │ │ └── legacy-information-security-and-quality-assurance-certificate.english.md │ │ │ ├── machine-learning-with-python-certificate │ │ │ └── machine-learning-with-python-certificate.english.md │ │ │ ├── quality-assurance-certificate │ │ │ └── quality-assurance-certificate.english.md │ │ │ ├── responsive-web-design-certificate │ │ │ └── responsive-web-design-certificate.english.md │ │ │ └── scientific-computing-with-python-certificate │ │ │ └── scientific-computing-with-python-certificate.english.md │ ├── portuguese │ │ ├── 01-responsive-web-design │ │ │ ├── applied-accessibility │ │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.portuguese.md │ │ │ │ ├── add-an-accessible-date-picker.portuguese.md │ │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.portuguese.md │ │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.portuguese.md │ │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.portuguese.md │ │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.portuguese.md │ │ │ │ ├── improve-chart-accessibility-with-the-figure-element.portuguese.md │ │ │ │ ├── improve-form-field-accessibility-with-the-label-element.portuguese.md │ │ │ │ ├── improve-readability-with-high-contrast-text.portuguese.md │ │ │ │ ├── jump-straight-to-the-content-using-the-main-element.portuguese.md │ │ │ │ ├── know-when-alt-text-should-be-left-blank.portuguese.md │ │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.portuguese.md │ │ │ │ ├── make-links-navigatable-with-html-access-keys.portuguese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.portuguese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.portuguese.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.portuguese.md │ │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.portuguese.md │ │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.portuguese.md │ │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.portuguese.md │ │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.portuguese.md │ │ │ │ ├── wrap-content-in-the-article-element.portuguese.md │ │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.portuguese.md │ │ │ ├── applied-visual-design │ │ │ │ ├── add-a-box-shadow-to-a-card-like-element.portuguese.md │ │ │ │ ├── adjust-the-background-color-property-of-text.portuguese.md │ │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.portuguese.md │ │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.portuguese.md │ │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.portuguese.md │ │ │ │ ├── adjust-the-hue-of-a-color.portuguese.md │ │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.portuguese.md │ │ │ │ ├── adjust-the-tone-of-a-color.portuguese.md │ │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.portuguese.md │ │ │ │ ├── animate-elements-at-variable-rates.portuguese.md │ │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.portuguese.md │ │ │ │ ├── animate-multiple-elements-at-variable-rates.portuguese.md │ │ │ │ ├── center-an-element-horizontally-using-the-margin-property.portuguese.md │ │ │ │ ├── change-an-elements-relative-position.portuguese.md │ │ │ │ ├── change-animation-timing-with-keywords.portuguese.md │ │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.portuguese.md │ │ │ │ ├── create-a-gradual-css-linear-gradient.portuguese.md │ │ │ │ ├── create-a-graphic-using-css.portuguese.md │ │ │ │ ├── create-a-horizontal-line-using-the-hr-element.portuguese.md │ │ │ │ ├── create-a-more-complex-shape-using-css-and-html.portuguese.md │ │ │ │ ├── create-movement-using-css-animation.portuguese.md │ │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.portuguese.md │ │ │ │ ├── create-visual-balance-using-the-text-align-property.portuguese.md │ │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.portuguese.md │ │ │ │ ├── decrease-the-opacity-of-an-element.portuguese.md │ │ │ │ ├── learn-about-complementary-colors.portuguese.md │ │ │ │ ├── learn-about-tertiary-colors.portuguese.md │ │ │ │ ├── learn-how-bezier-curves-work.portuguese.md │ │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.portuguese.md │ │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.portuguese.md │ │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.portuguese.md │ │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.portuguese.md │ │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.portuguese.md │ │ │ │ ├── modify-fill-mode-of-an-animation.portuguese.md │ │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.portuguese.md │ │ │ │ ├── push-elements-left-or-right-with-the-float-property.portuguese.md │ │ │ │ ├── set-the-font-size-for-multiple-heading-elements.portuguese.md │ │ │ │ ├── set-the-font-size-of-paragraph-text.portuguese.md │ │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.portuguese.md │ │ │ │ ├── set-the-line-height-of-paragraphs.portuguese.md │ │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.portuguese.md │ │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.portuguese.md │ │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.portuguese.md │ │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.portuguese.md │ │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.portuguese.md │ │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.portuguese.md │ │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.portuguese.md │ │ │ │ ├── use-the-em-tag-to-italicize-text.portuguese.md │ │ │ │ ├── use-the-s-tag-to-strikethrough-text.portuguese.md │ │ │ │ ├── use-the-strong-tag-to-make-text-bold.portuguese.md │ │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.portuguese.md │ │ │ │ └── use-the-u-tag-to-underline-text.portuguese.md │ │ │ ├── basic-css │ │ │ │ ├── add-a-negative-margin-to-an-element.portuguese.md │ │ │ │ ├── add-borders-around-your-elements.portuguese.md │ │ │ │ ├── add-different-margins-to-each-side-of-an-element.portuguese.md │ │ │ │ ├── add-different-padding-to-each-side-of-an-element.portuguese.md │ │ │ │ ├── add-rounded-corners-with-border-radius.portuguese.md │ │ │ │ ├── adjust-the-margin-of-an-element.portuguese.md │ │ │ │ ├── adjust-the-padding-of-an-element.portuguese.md │ │ │ │ ├── attach-a-fallback-value-to-a-css-variable.portuguese.md │ │ │ │ ├── cascading-css-variables.portuguese.md │ │ │ │ ├── change-a-variable-for-a-specific-area.portuguese.md │ │ │ │ ├── change-the-color-of-text.portuguese.md │ │ │ │ ├── change-the-font-size-of-an-element.portuguese.md │ │ │ │ ├── create-a-custom-css-variable.portuguese.md │ │ │ │ ├── give-a-background-color-to-a-div-element.portuguese.md │ │ │ │ ├── import-a-google-font.portuguese.md │ │ │ │ ├── improve-compatibility-with-browser-fallbacks.portuguese.md │ │ │ │ ├── inherit-styles-from-the-body-element.portuguese.md │ │ │ │ ├── make-circular-images-with-a-border-radius.portuguese.md │ │ │ │ ├── override-all-other-styles-by-using-important.portuguese.md │ │ │ │ ├── override-class-declarations-by-styling-id-attributes.portuguese.md │ │ │ │ ├── override-class-declarations-with-inline-styles.portuguese.md │ │ │ │ ├── override-styles-in-subsequent-css.portuguese.md │ │ │ │ ├── prioritize-one-style-over-another.portuguese.md │ │ │ │ ├── set-the-font-family-of-an-element.portuguese.md │ │ │ │ ├── set-the-id-of-an-element.portuguese.md │ │ │ │ ├── size-your-images.portuguese.md │ │ │ │ ├── specify-how-fonts-should-degrade.portuguese.md │ │ │ │ ├── style-multiple-elements-with-a-css-class.portuguese.md │ │ │ │ ├── style-the-html-body-element.portuguese.md │ │ │ │ ├── understand-absolute-versus-relative-units.portuguese.md │ │ │ │ ├── use-a-css-class-to-style-an-element.portuguese.md │ │ │ │ ├── use-a-custom-css-variable.portuguese.md │ │ │ │ ├── use-a-media-query-to-change-a-variable.portuguese.md │ │ │ │ ├── use-abbreviated-hex-code.portuguese.md │ │ │ │ ├── use-an-id-attribute-to-style-an-element.portuguese.md │ │ │ │ ├── use-attribute-selectors-to-style-elements.portuguese.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.portuguese.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.portuguese.md │ │ │ │ ├── use-css-selectors-to-style-elements.portuguese.md │ │ │ │ ├── use-css-variables-to-change-several-elements-at-once.portuguese.md │ │ │ │ ├── use-hex-code-for-specific-colors.portuguese.md │ │ │ │ ├── use-hex-code-to-mix-colors.portuguese.md │ │ │ │ ├── use-rgb-to-mix-colors.portuguese.md │ │ │ │ └── use-rgb-values-to-color-elements.portuguese.md │ │ │ ├── basic-html-and-html5 │ │ │ │ ├── add-a-submit-button-to-a-form.portuguese.md │ │ │ │ ├── add-images-to-your-website.portuguese.md │ │ │ │ ├── add-placeholder-text-to-a-text-field.portuguese.md │ │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.portuguese.md │ │ │ │ ├── comment-out-html.portuguese.md │ │ │ │ ├── create-a-bulleted-unordered-list.portuguese.md │ │ │ │ ├── create-a-form-element.portuguese.md │ │ │ │ ├── create-a-set-of-checkboxes.portuguese.md │ │ │ │ ├── create-a-set-of-radio-buttons.portuguese.md │ │ │ │ ├── create-a-text-field.portuguese.md │ │ │ │ ├── create-an-ordered-list.portuguese.md │ │ │ │ ├── declare-the-doctype-of-an-html-document.portuguese.md │ │ │ │ ├── define-the-head-and-body-of-an-html-document.portuguese.md │ │ │ │ ├── delete-html-elements.portuguese.md │ │ │ │ ├── fill-in-the-blank-with-placeholder-text.portuguese.md │ │ │ │ ├── headline-with-the-h2-element.portuguese.md │ │ │ │ ├── inform-with-the-paragraph-element.portuguese.md │ │ │ │ ├── introduction-to-html5-elements.portuguese.md │ │ │ │ ├── link-to-external-pages-with-anchor-elements.portuguese.md │ │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.portuguese.md │ │ │ │ ├── make-dead-links-using-the-hash-symbol.portuguese.md │ │ │ │ ├── nest-an-anchor-element-within-a-paragraph.portuguese.md │ │ │ │ ├── nest-many-elements-within-a-single-div-element.portuguese.md │ │ │ │ ├── say-hello-to-html-elements.portuguese.md │ │ │ │ ├── turn-an-image-into-a-link.portuguese.md │ │ │ │ ├── uncomment-html.portuguese.md │ │ │ │ └── use-html5-to-require-a-field.portuguese.md │ │ │ ├── css-flexbox │ │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.portuguese.md │ │ │ │ ├── align-elements-using-the-align-items-property.portuguese.md │ │ │ │ ├── align-elements-using-the-justify-content-property.portuguese.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.portuguese.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.portuguese.md │ │ │ │ ├── use-display-flex-to-position-two-boxes.portuguese.md │ │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.portuguese.md │ │ │ │ ├── use-the-align-self-property.portuguese.md │ │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.portuguese.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-column.portuguese.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-row.portuguese.md │ │ │ │ ├── use-the-flex-grow-property-to-expand-items.portuguese.md │ │ │ │ ├── use-the-flex-shorthand-property.portuguese.md │ │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.portuguese.md │ │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.portuguese.md │ │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.portuguese.md │ │ │ │ └── use-the-order-property-to-rearrange-items.portuguese.md │ │ │ ├── css-grid │ │ │ │ ├── add-columns-with-grid-template-columns.portuguese.md │ │ │ │ ├── add-gaps-faster-with-grid-gap.portuguese.md │ │ │ │ ├── add-rows-with-grid-template-rows.portuguese.md │ │ │ │ ├── align-all-items-horizontally-using-justify-items.portuguese.md │ │ │ │ ├── align-all-items-vertically-using-align-items.portuguese.md │ │ │ │ ├── align-an-item-horizontally-using-justify-self.portuguese.md │ │ │ │ ├── align-an-item-vertically-using-align-self.portuguese.md │ │ │ │ ├── create-a-column-gap-using-grid-column-gap.portuguese.md │ │ │ │ ├── create-a-row-gap-using-grid-row-gap.portuguese.md │ │ │ │ ├── create-flexible-layouts-using-auto-fill.portuguese.md │ │ │ │ ├── create-flexible-layouts-using-auto-fit.portuguese.md │ │ │ │ ├── create-grids-within-grids.portuguese.md │ │ │ │ ├── create-your-first-css-grid.portuguese.md │ │ │ │ ├── divide-the-grid-into-an-area-template.portuguese.md │ │ │ │ ├── limit-item-size-using-the-minmax-function.portuguese.md │ │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.portuguese.md │ │ │ │ ├── reduce-repetition-using-the-repeat-function.portuguese.md │ │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.portuguese.md │ │ │ │ ├── use-grid-area-without-creating-an-areas-template.portuguese.md │ │ │ │ ├── use-grid-column-to-control-spacing.portuguese.md │ │ │ │ ├── use-grid-row-to-control-spacing.portuguese.md │ │ │ │ └── use-media-queries-to-create-responsive-layouts.portuguese.md │ │ │ ├── responsive-web-design-principles │ │ │ │ ├── create-a-media-query.portuguese.md │ │ │ │ ├── make-an-image-responsive.portuguese.md │ │ │ │ ├── make-typography-responsive.portuguese.md │ │ │ │ └── use-a-retina-image-for-higher-resolution-displays.portuguese.md │ │ │ └── responsive-web-design-projects │ │ │ │ ├── build-a-personal-portfolio-webpage.portuguese.md │ │ │ │ ├── build-a-product-landing-page.portuguese.md │ │ │ │ ├── build-a-survey-form.portuguese.md │ │ │ │ ├── build-a-technical-documentation-page.portuguese.md │ │ │ │ └── build-a-tribute-page.portuguese.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ │ ├── basic-algorithm-scripting │ │ │ │ ├── boo-who.portuguese.md │ │ │ │ ├── chunky-monkey.portuguese.md │ │ │ │ ├── confirm-the-ending.portuguese.md │ │ │ │ ├── convert-celsius-to-fahrenheit.portuguese.md │ │ │ │ ├── factorialize-a-number.portuguese.md │ │ │ │ ├── falsy-bouncer.portuguese.md │ │ │ │ ├── find-the-longest-word-in-a-string.portuguese.md │ │ │ │ ├── finders-keepers.portuguese.md │ │ │ │ ├── mutations.portuguese.md │ │ │ │ ├── repeat-a-string-repeat-a-string.portuguese.md │ │ │ │ ├── return-largest-numbers-in-arrays.portuguese.md │ │ │ │ ├── reverse-a-string.portuguese.md │ │ │ │ ├── slice-and-splice.portuguese.md │ │ │ │ ├── title-case-a-sentence.portuguese.md │ │ │ │ ├── truncate-a-string.portuguese.md │ │ │ │ └── where-do-i-belong.portuguese.md │ │ │ ├── basic-data-structures │ │ │ │ ├── access-an-arrays-contents-using-bracket-notation.portuguese.md │ │ │ │ ├── access-property-names-with-bracket-notation.portuguese.md │ │ │ │ ├── add-items-to-an-array-with-push-and-unshift.portuguese.md │ │ │ │ ├── add-items-using-splice.portuguese.md │ │ │ │ ├── add-key-value-pairs-to-javascript-objects.portuguese.md │ │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.portuguese.md │ │ │ │ ├── check-if-an-object-has-a-property.portuguese.md │ │ │ │ ├── combine-arrays-with-the-spread-operator.portuguese.md │ │ │ │ ├── copy-an-array-with-the-spread-operator.portuguese.md │ │ │ │ ├── copy-array-items-using-slice.portuguese.md │ │ │ │ ├── create-complex-multi-dimensional-arrays.portuguese.md │ │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.portuguese.md │ │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.portuguese.md │ │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.portuguese.md │ │ │ │ ├── modify-an-array-stored-in-an-object.portuguese.md │ │ │ │ ├── modify-an-object-nested-within-an-object.portuguese.md │ │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.portuguese.md │ │ │ │ ├── remove-items-using-splice.portuguese.md │ │ │ │ ├── use-an-array-to-store-a-collection-of-data.portuguese.md │ │ │ │ └── use-the-delete-keyword-to-remove-object-properties.portuguese.md │ │ │ ├── basic-javascript │ │ │ │ ├── access-array-data-with-indexes.portuguese.md │ │ │ │ ├── access-multi-dimensional-arrays-with-indexes.portuguese.md │ │ │ │ ├── accessing-nested-arrays.portuguese.md │ │ │ │ ├── accessing-nested-objects.portuguese.md │ │ │ │ ├── accessing-object-properties-with-bracket-notation.portuguese.md │ │ │ │ ├── accessing-object-properties-with-dot-notation.portuguese.md │ │ │ │ ├── accessing-object-properties-with-variables.portuguese.md │ │ │ │ ├── add-new-properties-to-a-javascript-object.portuguese.md │ │ │ │ ├── add-two-numbers-with-javascript.portuguese.md │ │ │ │ ├── adding-a-default-option-in-switch-statements.portuguese.md │ │ │ │ ├── appending-variables-to-strings.portuguese.md │ │ │ │ ├── assignment-with-a-returned-value.portuguese.md │ │ │ │ ├── build-javascript-objects.portuguese.md │ │ │ │ ├── chaining-if-else-statements.portuguese.md │ │ │ │ ├── comment-your-javascript-code.portuguese.md │ │ │ │ ├── comparison-with-the-equality-operator.portuguese.md │ │ │ │ ├── comparison-with-the-greater-than-operator.portuguese.md │ │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.portuguese.md │ │ │ │ ├── comparison-with-the-inequality-operator.portuguese.md │ │ │ │ ├── comparison-with-the-less-than-operator.portuguese.md │ │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.portuguese.md │ │ │ │ ├── comparison-with-the-strict-equality-operator.portuguese.md │ │ │ │ ├── comparison-with-the-strict-inequality-operator.portuguese.md │ │ │ │ ├── comparisons-with-the-logical-and-operator.portuguese.md │ │ │ │ ├── comparisons-with-the-logical-or-operator.portuguese.md │ │ │ │ ├── compound-assignment-with-augmented-addition.portuguese.md │ │ │ │ ├── compound-assignment-with-augmented-division.portuguese.md │ │ │ │ ├── compound-assignment-with-augmented-multiplication.portuguese.md │ │ │ │ ├── compound-assignment-with-augmented-subtraction.portuguese.md │ │ │ │ ├── concatenating-strings-with-plus-operator.portuguese.md │ │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.portuguese.md │ │ │ │ ├── constructing-strings-with-variables.portuguese.md │ │ │ │ ├── count-backwards-with-a-for-loop.portuguese.md │ │ │ │ ├── counting-cards.portuguese.md │ │ │ │ ├── create-decimal-numbers-with-javascript.portuguese.md │ │ │ │ ├── declare-javascript-variables.portuguese.md │ │ │ │ ├── declare-string-variables.portuguese.md │ │ │ │ ├── decrement-a-number-with-javascript.portuguese.md │ │ │ │ ├── delete-properties-from-a-javascript-object.portuguese.md │ │ │ │ ├── divide-one-decimal-by-another-with-javascript.portuguese.md │ │ │ │ ├── divide-one-number-by-another-with-javascript.portuguese.md │ │ │ │ ├── escape-sequences-in-strings.portuguese.md │ │ │ │ ├── escaping-literal-quotes-in-strings.portuguese.md │ │ │ │ ├── find-the-length-of-a-string.portuguese.md │ │ │ │ ├── finding-a-remainder-in-javascript.portuguese.md │ │ │ │ ├── generate-random-fractions-with-javascript.portuguese.md │ │ │ │ ├── generate-random-whole-numbers-with-javascript.portuguese.md │ │ │ │ ├── generate-random-whole-numbers-within-a-range.portuguese.md │ │ │ │ ├── global-scope-and-functions.portuguese.md │ │ │ │ ├── global-vs.-local-scope-in-functions.portuguese.md │ │ │ │ ├── golf-code.portuguese.md │ │ │ │ ├── increment-a-number-with-javascript.portuguese.md │ │ │ │ ├── initializing-variables-with-the-assignment-operator.portuguese.md │ │ │ │ ├── introducing-else-if-statements.portuguese.md │ │ │ │ ├── introducing-else-statements.portuguese.md │ │ │ │ ├── iterate-odd-numbers-with-a-for-loop.portuguese.md │ │ │ │ ├── iterate-through-an-array-with-a-for-loop.portuguese.md │ │ │ │ ├── iterate-with-javascript-do...while-loops.portuguese.md │ │ │ │ ├── iterate-with-javascript-for-loops.portuguese.md │ │ │ │ ├── iterate-with-javascript-while-loops.portuguese.md │ │ │ │ ├── local-scope-and-functions.portuguese.md │ │ │ │ ├── logical-order-in-if-else-statements.portuguese.md │ │ │ │ ├── manipulate-arrays-with-pop.portuguese.md │ │ │ │ ├── manipulate-arrays-with-push.portuguese.md │ │ │ │ ├── manipulate-arrays-with-shift.portuguese.md │ │ │ │ ├── manipulate-arrays-with-unshift.portuguese.md │ │ │ │ ├── manipulating-complex-objects.portuguese.md │ │ │ │ ├── modify-array-data-with-indexes.portuguese.md │ │ │ │ ├── multiple-identical-options-in-switch-statements.portuguese.md │ │ │ │ ├── multiply-two-decimals-with-javascript.portuguese.md │ │ │ │ ├── multiply-two-numbers-with-javascript.portuguese.md │ │ │ │ ├── nest-one-array-within-another-array.portuguese.md │ │ │ │ ├── nesting-for-loops.portuguese.md │ │ │ │ ├── passing-values-to-functions-with-arguments.portuguese.md │ │ │ │ ├── practice-comparing-different-values.portuguese.md │ │ │ │ ├── profile-lookup.portuguese.md │ │ │ │ ├── quoting-strings-with-single-quotes.portuguese.md │ │ │ │ ├── record-collection.portuguese.md │ │ │ │ ├── replacing-if-else-chains-with-switch.portuguese.md │ │ │ │ ├── return-a-value-from-a-function-with-return.portuguese.md │ │ │ │ ├── return-early-pattern-for-functions.portuguese.md │ │ │ │ ├── returning-boolean-values-from-functions.portuguese.md │ │ │ │ ├── selecting-from-many-options-with-switch-statements.portuguese.md │ │ │ │ ├── shopping-list.portuguese.md │ │ │ │ ├── stand-in-line.portuguese.md │ │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.portuguese.md │ │ │ │ ├── storing-values-with-the-assignment-operator.portuguese.md │ │ │ │ ├── subtract-one-number-from-another-with-javascript.portuguese.md │ │ │ │ ├── testing-objects-for-properties.portuguese.md │ │ │ │ ├── understand-string-immutability.portuguese.md │ │ │ │ ├── understanding-boolean-values.portuguese.md │ │ │ │ ├── understanding-case-sensitivity-in-variables.portuguese.md │ │ │ │ ├── understanding-undefined-value-returned-from-a-function.portuguese.md │ │ │ │ ├── understanding-uninitialized-variables.portuguese.md │ │ │ │ ├── updating-object-properties.portuguese.md │ │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.portuguese.md │ │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.portuguese.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.portuguese.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.portuguese.md │ │ │ │ ├── use-conditional-logic-with-if-statements.portuguese.md │ │ │ │ ├── use-multiple-conditional-ternary-operators.portuguese.md │ │ │ │ ├── use-the-conditional-ternary-operator.portuguese.md │ │ │ │ ├── use-the-parseint-function-with-a-radix.portuguese.md │ │ │ │ ├── use-the-parseint-function.portuguese.md │ │ │ │ ├── using-objects-for-lookups.portuguese.md │ │ │ │ ├── word-blanks.portuguese.md │ │ │ │ └── write-reusable-javascript-with-functions.portuguese.md │ │ │ ├── debugging │ │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.portuguese.md │ │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.portuguese.md │ │ │ │ ├── catch-misspelled-variable-and-function-names.portuguese.md │ │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.portuguese.md │ │ │ │ ├── catch-off-by-one-errors-when-using-indexing.portuguese.md │ │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.portuguese.md │ │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.portuguese.md │ │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.portuguese.md │ │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.portuguese.md │ │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.portuguese.md │ │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.portuguese.md │ │ │ │ └── use-typeof-to-check-the-type-of-a-variable.portuguese.md │ │ │ ├── es6 │ │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.portuguese.md │ │ │ │ ├── create-an-export-fallback-with-export-default.portuguese.md │ │ │ │ ├── create-strings-using-template-literals.portuguese.md │ │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.portuguese.md │ │ │ │ ├── explore-differences-between-the-var-and-let-keywords.portuguese.md │ │ │ │ ├── import-a-default-export.portuguese.md │ │ │ │ ├── mutate-an-array-declared-with-const.portuguese.md │ │ │ │ ├── prevent-object-mutation.portuguese.md │ │ │ │ ├── set-default-parameters-for-your-functions.portuguese.md │ │ │ │ ├── understand-the-differences-between-import-and-require.portuguese.md │ │ │ │ ├── use--to-import-everything-from-a-file.portuguese.md │ │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.portuguese.md │ │ │ │ ├── use-class-syntax-to-define-a-constructor-function.portuguese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.portuguese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.portuguese.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.portuguese.md │ │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.portuguese.md │ │ │ │ ├── use-destructuring-assignment-with-the-rest-operator-to-reassign-array-elements.portuguese.md │ │ │ │ ├── use-export-to-reuse-a-code-block.portuguese.md │ │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.portuguese.md │ │ │ │ ├── use-the-rest-operator-with-function-parameters.portuguese.md │ │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.portuguese.md │ │ │ │ ├── write-arrow-functions-with-parameters.portuguese.md │ │ │ │ ├── write-concise-declarative-functions-with-es6.portuguese.md │ │ │ │ ├── write-concise-object-literal-declarations-using-simple-fields.portuguese.md │ │ │ │ └── write-higher-order-arrow-functions.portuguese.md │ │ │ ├── functional-programming │ │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.portuguese.md │ │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.portuguese.md │ │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.portuguese.md │ │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.portuguese.md │ │ │ │ ├── combine-two-arrays-using-the-concat-method.portuguese.md │ │ │ │ ├── implement-map-on-a-prototype.portuguese.md │ │ │ │ ├── implement-the-filter-method-on-a-prototype.portuguese.md │ │ │ │ ├── introduction-to-currying-and-partial-application.portuguese.md │ │ │ │ ├── learn-about-functional-programming.portuguese.md │ │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.portuguese.md │ │ │ │ ├── refactor-global-variables-out-of-functions.portuguese.md │ │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.portuguese.md │ │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.portuguese.md │ │ │ │ ├── return-part-of-an-array-using-the-slice-method.portuguese.md │ │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.portuguese.md │ │ │ │ ├── split-a-string-into-an-array-using-the-split-method.portuguese.md │ │ │ │ ├── understand-functional-programming-terminology.portuguese.md │ │ │ │ ├── understand-the-hazards-of-using-imperative-code.portuguese.md │ │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.portuguese.md │ │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.portuguese.md │ │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.portuguese.md │ │ │ │ ├── use-the-reduce-method-to-analyze-data.portuguese.md │ │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.portuguese.md │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ ├── arguments-optional.portuguese.md │ │ │ │ ├── binary-agents.portuguese.md │ │ │ │ ├── convert-html-entities.portuguese.md │ │ │ │ ├── diff-two-arrays.portuguese.md │ │ │ │ ├── dna-pairing.portuguese.md │ │ │ │ ├── drop-it.portuguese.md │ │ │ │ ├── everything-be-true.portuguese.md │ │ │ │ ├── make-a-person.portuguese.md │ │ │ │ ├── map-the-debris.portuguese.md │ │ │ │ ├── missing-letters.portuguese.md │ │ │ │ ├── pig-latin.portuguese.md │ │ │ │ ├── search-and-replace.portuguese.md │ │ │ │ ├── seek-and-destroy.portuguese.md │ │ │ │ ├── smallest-common-multiple.portuguese.md │ │ │ │ ├── sorted-union.portuguese.md │ │ │ │ ├── spinal-tap-case.portuguese.md │ │ │ │ ├── steamroller.portuguese.md │ │ │ │ ├── sum-all-numbers-in-a-range.portuguese.md │ │ │ │ ├── sum-all-odd-fibonacci-numbers.portuguese.md │ │ │ │ ├── sum-all-primes.portuguese.md │ │ │ │ └── wherefore-art-thou.portuguese.md │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ ├── caesars-cipher.portuguese.md │ │ │ │ ├── cash-register.portuguese.md │ │ │ │ ├── palindrome-checker.portuguese.md │ │ │ │ ├── roman-numeral-converter.portuguese.md │ │ │ │ └── telephone-number-validator.portuguese.md │ │ │ ├── object-oriented-programming │ │ │ │ ├── add-methods-after-inheritance.portuguese.md │ │ │ │ ├── change-the-prototype-to-a-new-object.portuguese.md │ │ │ │ ├── create-a-basic-javascript-object.portuguese.md │ │ │ │ ├── create-a-method-on-an-object.portuguese.md │ │ │ │ ├── define-a-constructor-function.portuguese.md │ │ │ │ ├── extend-constructors-to-receive-arguments.portuguese.md │ │ │ │ ├── inherit-behaviors-from-a-supertype.portuguese.md │ │ │ │ ├── iterate-over-all-properties.portuguese.md │ │ │ │ ├── make-code-more-reusable-with-the-this-keyword.portuguese.md │ │ │ │ ├── override-inherited-methods.portuguese.md │ │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.portuguese.md │ │ │ │ ├── reset-an-inherited-constructor-property.portuguese.md │ │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.portuguese.md │ │ │ │ ├── understand-own-properties.portuguese.md │ │ │ │ ├── understand-the-constructor-property.portuguese.md │ │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.portuguese.md │ │ │ │ ├── understand-the-prototype-chain.portuguese.md │ │ │ │ ├── understand-where-an-objects-prototype-comes-from.portuguese.md │ │ │ │ ├── use-a-constructor-to-create-objects.portuguese.md │ │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.portuguese.md │ │ │ │ ├── use-an-iife-to-create-a-module.portuguese.md │ │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.portuguese.md │ │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.portuguese.md │ │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.portuguese.md │ │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.portuguese.md │ │ │ │ └── verify-an-objects-constructor-with-instanceof.portuguese.md │ │ │ └── regular-expressions │ │ │ │ ├── check-for-all-or-none.portuguese.md │ │ │ │ ├── extract-matches.portuguese.md │ │ │ │ ├── find-characters-with-lazy-matching.portuguese.md │ │ │ │ ├── find-more-than-the-first-match.portuguese.md │ │ │ │ ├── find-one-or-more-criminals-in-a-hunt.portuguese.md │ │ │ │ ├── ignore-case-while-matching.portuguese.md │ │ │ │ ├── match-a-literal-string-with-different-possibilities.portuguese.md │ │ │ │ ├── match-all-letters-and-numbers.portuguese.md │ │ │ │ ├── match-all-non-numbers.portuguese.md │ │ │ │ ├── match-all-numbers.portuguese.md │ │ │ │ ├── match-anything-with-wildcard-period.portuguese.md │ │ │ │ ├── match-beginning-string-patterns.portuguese.md │ │ │ │ ├── match-characters-that-occur-one-or-more-times.portuguese.md │ │ │ │ ├── match-characters-that-occur-zero-or-more-times.portuguese.md │ │ │ │ ├── match-ending-string-patterns.portuguese.md │ │ │ │ ├── match-everything-but-letters-and-numbers.portuguese.md │ │ │ │ ├── match-letters-of-the-alphabet.portuguese.md │ │ │ │ ├── match-literal-strings.portuguese.md │ │ │ │ ├── match-non-whitespace-characters.portuguese.md │ │ │ │ ├── match-numbers-and-letters-of-the-alphabet.portuguese.md │ │ │ │ ├── match-single-character-with-multiple-possibilities.portuguese.md │ │ │ │ ├── match-single-characters-not-specified.portuguese.md │ │ │ │ ├── match-whitespace.portuguese.md │ │ │ │ ├── positive-and-negative-lookahead.portuguese.md │ │ │ │ ├── remove-whitespace-from-start-and-end.portuguese.md │ │ │ │ ├── restrict-possible-usernames.portuguese.md │ │ │ │ ├── reuse-patterns-using-capture-groups.portuguese.md │ │ │ │ ├── specify-exact-number-of-matches.portuguese.md │ │ │ │ ├── specify-only-the-lower-number-of-matches.portuguese.md │ │ │ │ ├── specify-upper-and-lower-number-of-matches.portuguese.md │ │ │ │ ├── use-capture-groups-to-search-and-replace.portuguese.md │ │ │ │ └── using-the-test-method.portuguese.md │ │ ├── 03-front-end-libraries │ │ │ ├── bootstrap │ │ │ │ ├── add-elements-within-your-bootstrap-wells.portuguese.md │ │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.portuguese.md │ │ │ │ ├── add-font-awesome-icons-to-our-buttons.portuguese.md │ │ │ │ ├── add-id-attributes-to-bootstrap-elements.portuguese.md │ │ │ │ ├── apply-the-default-bootstrap-button-style.portuguese.md │ │ │ │ ├── call-out-optional-actions-with-btn-info.portuguese.md │ │ │ │ ├── center-text-with-bootstrap.portuguese.md │ │ │ │ ├── create-a-block-element-bootstrap-button.portuguese.md │ │ │ │ ├── create-a-bootstrap-button.portuguese.md │ │ │ │ ├── create-a-bootstrap-headline.portuguese.md │ │ │ │ ├── create-a-bootstrap-row.portuguese.md │ │ │ │ ├── create-a-class-to-target-with-jquery-selectors.portuguese.md │ │ │ │ ├── create-a-custom-heading.portuguese.md │ │ │ │ ├── create-bootstrap-wells.portuguese.md │ │ │ │ ├── ditch-custom-css-for-bootstrap.portuguese.md │ │ │ │ ├── give-each-element-a-unique-id.portuguese.md │ │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.portuguese.md │ │ │ │ ├── label-bootstrap-buttons.portuguese.md │ │ │ │ ├── label-bootstrap-wells.portuguese.md │ │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.portuguese.md │ │ │ │ ├── make-images-mobile-responsive.portuguese.md │ │ │ │ ├── responsively-style-checkboxes.portuguese.md │ │ │ │ ├── responsively-style-radio-buttons.portuguese.md │ │ │ │ ├── split-your-bootstrap-row.portuguese.md │ │ │ │ ├── style-text-inputs-as-form-controls.portuguese.md │ │ │ │ ├── taste-the-bootstrap-button-color-rainbow.portuguese.md │ │ │ │ ├── use-a-span-to-target-inline-elements.portuguese.md │ │ │ │ ├── use-comments-to-clarify-code.portuguese.md │ │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.portuguese.md │ │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.portuguese.md │ │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.portuguese.md │ │ │ ├── front-end-libraries-projects │ │ │ │ ├── build-a-drum-machine.portuguese.md │ │ │ │ ├── build-a-javascript-calculator.portuguese.md │ │ │ │ ├── build-a-markdown-previewer.portuguese.md │ │ │ │ ├── build-a-pomodoro-clock.portuguese.md │ │ │ │ └── build-a-random-quote-machine.portuguese.md │ │ │ ├── jquery │ │ │ │ ├── change-text-inside-an-element-using-jquery.portuguese.md │ │ │ │ ├── change-the-css-of-an-element-using-jquery.portuguese.md │ │ │ │ ├── clone-an-element-using-jquery.portuguese.md │ │ │ │ ├── delete-your-jquery-functions.portuguese.md │ │ │ │ ├── disable-an-element-using-jquery.portuguese.md │ │ │ │ ├── learn-how-script-tags-and-document-ready-work.portuguese.md │ │ │ │ ├── remove-an-element-using-jquery.portuguese.md │ │ │ │ ├── remove-classes-from-an-element-with-jquery.portuguese.md │ │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.portuguese.md │ │ │ │ ├── target-elements-by-class-using-jquery.portuguese.md │ │ │ │ ├── target-elements-by-id-using-jquery.portuguese.md │ │ │ │ ├── target-even-elements-using-jquery.portuguese.md │ │ │ │ ├── target-html-elements-with-selectors-using-jquery.portuguese.md │ │ │ │ ├── target-the-children-of-an-element-using-jquery.portuguese.md │ │ │ │ ├── target-the-parent-of-an-element-using-jquery.portuguese.md │ │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.portuguese.md │ │ │ │ ├── use-appendto-to-move-elements-with-jquery.portuguese.md │ │ │ │ └── use-jquery-to-modify-the-entire-page.portuguese.md │ │ │ ├── react-and-redux │ │ │ │ ├── connect-redux-to-react.portuguese.md │ │ │ │ ├── connect-redux-to-the-messages-app.portuguese.md │ │ │ │ ├── extract-local-state-into-redux.portuguese.md │ │ │ │ ├── extract-state-logic-to-redux.portuguese.md │ │ │ │ ├── getting-started-with-react-redux.portuguese.md │ │ │ │ ├── manage-state-locally-first.portuguese.md │ │ │ │ ├── map-dispatch-to-props.portuguese.md │ │ │ │ ├── map-state-to-props.portuguese.md │ │ │ │ ├── moving-forward-from-here.portuguese.md │ │ │ │ └── use-provider-to-connect-redux-to-react.portuguese.md │ │ │ ├── react │ │ │ │ ├── access-props-using-this.props.portuguese.md │ │ │ │ ├── add-comments-in-jsx.portuguese.md │ │ │ │ ├── add-event-listeners.portuguese.md │ │ │ │ ├── add-inline-styles-in-react.portuguese.md │ │ │ │ ├── bind-this-to-a-class-method.portuguese.md │ │ │ │ ├── change-inline-css-conditionally-based-on-component-state.portuguese.md │ │ │ │ ├── compose-react-components.portuguese.md │ │ │ │ ├── create-a-complex-jsx-element.portuguese.md │ │ │ │ ├── create-a-component-with-composition.portuguese.md │ │ │ │ ├── create-a-controlled-form.portuguese.md │ │ │ │ ├── create-a-controlled-input.portuguese.md │ │ │ │ ├── create-a-react-component.portuguese.md │ │ │ │ ├── create-a-simple-jsx-element.portuguese.md │ │ │ │ ├── create-a-stateful-component.portuguese.md │ │ │ │ ├── create-a-stateless-functional-component.portuguese.md │ │ │ │ ├── define-an-html-class-in-jsx.portuguese.md │ │ │ │ ├── give-sibling-elements-a-unique-key-attribute.portuguese.md │ │ │ │ ├── introducing-inline-styles.portuguese.md │ │ │ │ ├── learn-about-self-closing-jsx-tags.portuguese.md │ │ │ │ ├── manage-updates-with-lifecycle-methods.portuguese.md │ │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.portuguese.md │ │ │ │ ├── override-default-props.portuguese.md │ │ │ │ ├── pass-a-callback-as-props.portuguese.md │ │ │ │ ├── pass-an-array-as-props.portuguese.md │ │ │ │ ├── pass-props-to-a-stateless-functional-component.portuguese.md │ │ │ │ ├── pass-state-as-props-to-child-components.portuguese.md │ │ │ │ ├── render-a-class-component-to-the-dom.portuguese.md │ │ │ │ ├── render-conditionally-from-props.portuguese.md │ │ │ │ ├── render-html-elements-to-the-dom.portuguese.md │ │ │ │ ├── render-react-on-the-server-with-rendertostring.portuguese.md │ │ │ │ ├── render-state-in-the-user-interface-another-way.portuguese.md │ │ │ │ ├── render-state-in-the-user-interface.portuguese.md │ │ │ │ ├── render-with-an-if-else-condition.portuguese.md │ │ │ │ ├── review-using-props-with-stateless-functional-components.portuguese.md │ │ │ │ ├── set-state-with-this.setstate.portuguese.md │ │ │ │ ├── use--for-a-more-concise-conditional.portuguese.md │ │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.portuguese.md │ │ │ │ ├── use-advanced-javascript-in-react-render-method.portuguese.md │ │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.portuguese.md │ │ │ │ ├── use-array.map-to-dynamically-render-elements.portuguese.md │ │ │ │ ├── use-default-props.portuguese.md │ │ │ │ ├── use-proptypes-to-define-the-props-you-expect.portuguese.md │ │ │ │ ├── use-react-to-render-nested-components.portuguese.md │ │ │ │ ├── use-state-to-toggle-an-element.portuguese.md │ │ │ │ ├── use-the-lifecycle-method-componentdidmount.portuguese.md │ │ │ │ ├── use-the-lifecycle-method-componentwillmount.portuguese.md │ │ │ │ ├── write-a-react-component-from-scratch.portuguese.md │ │ │ │ └── write-a-simple-counter.portuguese.md │ │ │ ├── redux │ │ │ │ ├── combine-multiple-reducers.portuguese.md │ │ │ │ ├── copy-an-object-with-object.assign.portuguese.md │ │ │ │ ├── create-a-redux-store.portuguese.md │ │ │ │ ├── define-a-redux-action.portuguese.md │ │ │ │ ├── define-an-action-creator.portuguese.md │ │ │ │ ├── dispatch-an-action-event.portuguese.md │ │ │ │ ├── get-state-from-the-redux-store.portuguese.md │ │ │ │ ├── handle-an-action-in-the-store.portuguese.md │ │ │ │ ├── never-mutate-state.portuguese.md │ │ │ │ ├── register-a-store-listener.portuguese.md │ │ │ │ ├── remove-an-item-from-an-array.portuguese.md │ │ │ │ ├── send-action-data-to-the-store.portuguese.md │ │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.portuguese.md │ │ │ │ ├── use-const-for-action-types.portuguese.md │ │ │ │ ├── use-middleware-to-handle-asynchronous-actions.portuguese.md │ │ │ │ ├── use-the-spread-operator-on-arrays.portuguese.md │ │ │ │ └── write-a-counter-with-redux.portuguese.md │ │ │ └── sass │ │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.portuguese.md │ │ │ │ ├── create-reusable-css-with-mixins.portuguese.md │ │ │ │ ├── extend-one-set-of-css-styles-to-another-element.portuguese.md │ │ │ │ ├── nest-css-with-sass.portuguese.md │ │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.portuguese.md │ │ │ │ ├── store-data-with-sass-variables.portuguese.md │ │ │ │ ├── use-each-to-map-over-items-in-a-list.portuguese.md │ │ │ │ ├── use-for-to-create-a-sass-loop.portuguese.md │ │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.portuguese.md │ │ ├── 04-data-visualization │ │ │ ├── data-visualization-projects │ │ │ │ ├── visualize-data-with-a-bar-chart.portuguese.md │ │ │ │ ├── visualize-data-with-a-choropleth-map.portuguese.md │ │ │ │ ├── visualize-data-with-a-heat-map.portuguese.md │ │ │ │ ├── visualize-data-with-a-scatterplot-graph.portuguese.md │ │ │ │ └── visualize-data-with-a-treemap-diagram.portuguese.md │ │ │ ├── data-visualization-with-d3 │ │ │ │ ├── add-a-hover-effect-to-a-d3-element.portuguese.md │ │ │ │ ├── add-a-tooltip-to-a-d3-element.portuguese.md │ │ │ │ ├── add-attributes-to-the-circle-elements.portuguese.md │ │ │ │ ├── add-axes-to-a-visualization.portuguese.md │ │ │ │ ├── add-classes-with-d3.portuguese.md │ │ │ │ ├── add-document-elements-with-d3.portuguese.md │ │ │ │ ├── add-inline-styling-to-elements.portuguese.md │ │ │ │ ├── add-labels-to-d3-elements.portuguese.md │ │ │ │ ├── add-labels-to-scatter-plot-circles.portuguese.md │ │ │ │ ├── change-styles-based-on-data.portuguese.md │ │ │ │ ├── change-the-color-of-an-svg-element.portuguese.md │ │ │ │ ├── change-the-presentation-of-a-bar-chart.portuguese.md │ │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.portuguese.md │ │ │ │ ├── create-a-linear-scale-with-d3.portuguese.md │ │ │ │ ├── create-a-scatterplot-with-svg-circles.portuguese.md │ │ │ │ ├── display-shapes-with-svg.portuguese.md │ │ │ │ ├── dynamically-change-the-height-of-each-bar.portuguese.md │ │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.portuguese.md │ │ │ │ ├── invert-svg-elements.portuguese.md │ │ │ │ ├── learn-about-svg-in-d3.portuguese.md │ │ │ │ ├── select-a-group-of-elements-with-d3.portuguese.md │ │ │ │ ├── set-a-domain-and-a-range-on-a-scale.portuguese.md │ │ │ │ ├── style-d3-labels.portuguese.md │ │ │ │ ├── update-the-height-of-an-element-dynamically.portuguese.md │ │ │ │ ├── use-a-pre-defined-scale-to-place-elements.portuguese.md │ │ │ │ ├── use-dynamic-scales.portuguese.md │ │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.portuguese.md │ │ │ │ ├── work-with-data-in-d3.portuguese.md │ │ │ │ └── work-with-dynamic-data-in-d3.portuguese.md │ │ │ └── json-apis-and-ajax │ │ │ │ ├── access-the-json-data-from-an-api.portuguese.md │ │ │ │ ├── change-text-with-click-events.portuguese.md │ │ │ │ ├── convert-json-data-to-html.portuguese.md │ │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.portuguese.md │ │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.portuguese.md │ │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.portuguese.md │ │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.portuguese.md │ │ │ │ ├── pre-filter-json-to-get-the-data-you-need.portuguese.md │ │ │ │ └── render-images-from-data-sources.portuguese.md │ │ ├── 05-apis-and-microservices │ │ │ ├── apis-and-microservices-projects │ │ │ │ ├── exercise-tracker.portuguese.md │ │ │ │ ├── file-metadata-microservice.portuguese.md │ │ │ │ ├── request-header-parser-microservice.portuguese.md │ │ │ │ ├── timestamp-microservice.portuguese.md │ │ │ │ └── url-shortener-microservice.portuguese.md │ │ │ ├── basic-node-and-express │ │ │ │ ├── chain-middleware-to-create-a-time-server.portuguese.md │ │ │ │ ├── get-data-from-post-requests.portuguese.md │ │ │ │ ├── get-query-parameter-input-from-the-client.portuguese.md │ │ │ │ ├── get-route-parameter-input-from-the-client.portuguese.md │ │ │ │ ├── implement-a-root-level-request-logger-middleware.portuguese.md │ │ │ │ ├── meet-the-node-console.portuguese.md │ │ │ │ ├── serve-an-html-file.portuguese.md │ │ │ │ ├── serve-json-on-a-specific-route.portuguese.md │ │ │ │ ├── serve-static-assets.portuguese.md │ │ │ │ ├── start-a-working-express-server.portuguese.md │ │ │ │ ├── use-body-parser-to-parse-post-requests.portuguese.md │ │ │ │ └── use-the-.env-file.portuguese.md │ │ │ ├── managing-packages-with-npm │ │ │ │ ├── add-a-description-to-your-package.json.portuguese.md │ │ │ │ ├── add-a-license-to-your-package.json.portuguese.md │ │ │ │ ├── add-a-version-to-your-package.json.portuguese.md │ │ │ │ ├── add-keywords-to-your-package.json.portuguese.md │ │ │ │ ├── expand-your-project-with-external-packages-from-npm.portuguese.md │ │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.portuguese.md │ │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.portuguese.md │ │ │ │ ├── remove-a-package-from-your-dependencies.portuguese.md │ │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.portuguese.md │ │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.portuguese.md │ │ │ └── mongodb-and-mongoose │ │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.portuguese.md │ │ │ │ ├── create-a-model.portuguese.md │ │ │ │ ├── create-and-save-a-record-of-a-model.portuguese.md │ │ │ │ ├── create-many-records-with-model.create.portuguese.md │ │ │ │ ├── delete-many-documents-with-model.remove.portuguese.md │ │ │ │ ├── delete-one-document-using-model.findbyidandremove.portuguese.md │ │ │ │ ├── install-and-set-up-mongoose.portuguese.md │ │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.portuguese.md │ │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.portuguese.md │ │ │ │ ├── use-model.find-to-search-your-database.portuguese.md │ │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.portuguese.md │ │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.portuguese.md │ │ ├── 06-information-security-and-quality-assurance │ │ │ ├── advanced-node-and-express │ │ │ │ ├── announce-new-users.portuguese.md │ │ │ │ ├── authentication-strategies.portuguese.md │ │ │ │ ├── authentication-with-socket.io.portuguese.md │ │ │ │ ├── clean-up-your-project-with-modules.portuguese.md │ │ │ │ ├── communicate-by-emitting.portuguese.md │ │ │ │ ├── create-new-middleware.portuguese.md │ │ │ │ ├── handle-a-disconnect.portuguese.md │ │ │ │ ├── hashing-your-passwords.portuguese.md │ │ │ │ ├── how-to-put-a-profile-together.portuguese.md │ │ │ │ ├── how-to-use-passport-strategies.portuguese.md │ │ │ │ ├── implement-the-serialization-of-a-passport-user.portuguese.md │ │ │ │ ├── implementation-of-social-authentication-ii.portuguese.md │ │ │ │ ├── implementation-of-social-authentication-iii.portuguese.md │ │ │ │ ├── implementation-of-social-authentication.portuguese.md │ │ │ │ ├── logging-a-user-out.portuguese.md │ │ │ │ ├── registration-of-new-users.portuguese.md │ │ │ │ ├── send-and-display-chat-messages.portuguese.md │ │ │ │ ├── serialization-of-a-user-object.portuguese.md │ │ │ │ ├── set-up-a-template-engine.portuguese.md │ │ │ │ ├── set-up-passport.portuguese.md │ │ │ │ ├── set-up-the-environment.portuguese.md │ │ │ │ └── use-a-template-engines-powers.portuguese.md │ │ │ ├── information-security-and-quality-assurance-projects │ │ │ │ ├── anonymous-message-board.portuguese.md │ │ │ │ ├── issue-tracker.portuguese.md │ │ │ │ ├── metric-imperial-converter.portuguese.md │ │ │ │ ├── personal-library.portuguese.md │ │ │ │ └── stock-price-checker.portuguese.md │ │ │ ├── information-security-with-helmetjs │ │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.portuguese.md │ │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.portuguese.md │ │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.portuguese.md │ │ │ │ ├── disable-client-side-caching-with-helmet.nocache.portuguese.md │ │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.portuguese.md │ │ │ │ ├── hash-and-compare-passwords-asynchronously.portuguese.md │ │ │ │ ├── hash-and-compare-passwords-synchronously.portuguese.md │ │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.portuguese.md │ │ │ │ ├── install-and-require-helmet.portuguese.md │ │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.portuguese.md │ │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.portuguese.md │ │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.portuguese.md │ │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.portuguese.md │ │ │ │ └── understand-bcrypt-hashes.portuguese.md │ │ │ └── quality-assurance-and-testing-with-chai │ │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.portuguese.md │ │ │ │ ├── compare-the-properties-of-two-elements.portuguese.md │ │ │ │ ├── learn-how-javascript-assertions-work.portuguese.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.portuguese.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.portuguese.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.portuguese.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.portuguese.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.portuguese.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser.portuguese.md │ │ │ │ ├── test-for-truthiness.portuguese.md │ │ │ │ ├── test-if-a-string-contains-a-substring.portuguese.md │ │ │ │ ├── test-if-a-value-falls-within-a-specific-range.portuguese.md │ │ │ │ ├── test-if-a-value-is-a-string.portuguese.md │ │ │ │ ├── test-if-a-value-is-an-array.portuguese.md │ │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.portuguese.md │ │ │ │ ├── test-if-a-variable-or-function-is-defined.portuguese.md │ │ │ │ ├── test-if-an-array-contains-an-item.portuguese.md │ │ │ │ ├── test-if-an-object-has-a-property.portuguese.md │ │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.portuguese.md │ │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.portuguese.md │ │ │ │ ├── use-assert.isok-and-assert.isnotok.portuguese.md │ │ │ │ ├── use-regular-expressions-to-test-a-string.portuguese.md │ │ │ │ ├── use-the-double-equals-to-assert-equality.portuguese.md │ │ │ │ └── use-the-triple-equals-to-assert-strict-equality.portuguese.md │ │ ├── 08-coding-interview-prep │ │ │ ├── algorithms │ │ │ │ ├── find-the-symmetric-difference.portuguese.md │ │ │ │ ├── implement-bubble-sort.portuguese.md │ │ │ │ ├── implement-insertion-sort.portuguese.md │ │ │ │ ├── implement-merge-sort.portuguese.md │ │ │ │ ├── implement-quick-sort.portuguese.md │ │ │ │ ├── implement-selection-sort.portuguese.md │ │ │ │ ├── inventory-update.portuguese.md │ │ │ │ ├── no-repeats-please.portuguese.md │ │ │ │ └── pairwise.portuguese.md │ │ │ ├── data-structures │ │ │ │ ├── add-a-new-element-to-a-binary-search-tree.portuguese.md │ │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.portuguese.md │ │ │ │ ├── adjacency-list.portuguese.md │ │ │ │ ├── adjacency-matrix.portuguese.md │ │ │ │ ├── breadth-first-search.portuguese.md │ │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── create-a-circular-queue.portuguese.md │ │ │ │ ├── create-a-doubly-linked-list.portuguese.md │ │ │ │ ├── create-a-hash-table.portuguese.md │ │ │ │ ├── create-a-linked-list-class.portuguese.md │ │ │ │ ├── create-a-map-data-structure.portuguese.md │ │ │ │ ├── create-a-priority-queue-class.portuguese.md │ │ │ │ ├── create-a-queue-class.portuguese.md │ │ │ │ ├── create-a-set-class.portuguese.md │ │ │ │ ├── create-a-stack-class.portuguese.md │ │ │ │ ├── create-a-trie-search-tree.portuguese.md │ │ │ │ ├── create-an-es6-javascript-map.portuguese.md │ │ │ │ ├── create-and-add-to-sets-in-es6.portuguese.md │ │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── depth-first-search.portuguese.md │ │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.portuguese.md │ │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── implement-heap-sort-with-a-min-heap.portuguese.md │ │ │ │ ├── incidence-matrix.portuguese.md │ │ │ │ ├── insert-an-element-into-a-max-heap.portuguese.md │ │ │ │ ├── invert-a-binary-tree.portuguese.md │ │ │ │ ├── learn-how-a-stack-works.portuguese.md │ │ │ │ ├── perform-a-difference-on-two-sets-of-data.portuguese.md │ │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.portuguese.md │ │ │ │ ├── perform-a-union-on-two-sets.portuguese.md │ │ │ │ ├── perform-an-intersection-on-two-sets-of-data.portuguese.md │ │ │ │ ├── remove-an-element-from-a-max-heap.portuguese.md │ │ │ │ ├── remove-elements-from-a-linked-list-by-index.portuguese.md │ │ │ │ ├── remove-elements-from-a-linked-list.portuguese.md │ │ │ │ ├── remove-from-a-set.portuguese.md │ │ │ │ ├── remove-items-from-a-set-in-es6.portuguese.md │ │ │ │ ├── reverse-a-doubly-linked-list.portuguese.md │ │ │ │ ├── search-within-a-linked-list.portuguese.md │ │ │ │ ├── size-of-the-set.portuguese.md │ │ │ │ ├── typed-arrays.portuguese.md │ │ │ │ ├── use-.has-and-.size-on-an-es6-set.portuguese.md │ │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.portuguese.md │ │ │ │ ├── use-spread-and-notes-for-es5-set-integration.portuguese.md │ │ │ │ └── work-with-nodes-in-a-linked-list.portuguese.md │ │ │ ├── project-euler │ │ │ │ ├── problem-1-multiples-of-3-and-5.portuguese.md │ │ │ │ ├── problem-10-summation-of-primes.portuguese.md │ │ │ │ ├── problem-100-arranged-probability.portuguese.md │ │ │ │ ├── problem-101-optimum-polynomial.portuguese.md │ │ │ │ ├── problem-102-triangle-containment.portuguese.md │ │ │ │ ├── problem-103-special-subset-sums-optimum.portuguese.md │ │ │ │ ├── problem-104-pandigital-fibonacci-ends.portuguese.md │ │ │ │ ├── problem-105-special-subset-sums-testing.portuguese.md │ │ │ │ ├── problem-106-special-subset-sums-meta-testing.portuguese.md │ │ │ │ ├── problem-107-minimal-network.portuguese.md │ │ │ │ ├── problem-108-diophantine-reciprocals-i.portuguese.md │ │ │ │ ├── problem-109-darts.portuguese.md │ │ │ │ ├── problem-11-largest-product-in-a-grid.portuguese.md │ │ │ │ ├── problem-110-diophantine-reciprocals-ii.portuguese.md │ │ │ │ ├── problem-111-primes-with-runs.portuguese.md │ │ │ │ ├── problem-112-bouncy-numbers.portuguese.md │ │ │ │ ├── problem-113-non-bouncy-numbers.portuguese.md │ │ │ │ ├── problem-114-counting-block-combinations-i.portuguese.md │ │ │ │ ├── problem-115-counting-block-combinations-ii.portuguese.md │ │ │ │ ├── problem-116-red-green-or-blue-tiles.portuguese.md │ │ │ │ ├── problem-117-red-green-and-blue-tiles.portuguese.md │ │ │ │ ├── problem-118-pandigital-prime-sets.portuguese.md │ │ │ │ ├── problem-119-digit-power-sum.portuguese.md │ │ │ │ ├── problem-12-highly-divisible-triangular-number.portuguese.md │ │ │ │ ├── problem-120-square-remainders.portuguese.md │ │ │ │ ├── problem-121-disc-game-prize-fund.portuguese.md │ │ │ │ ├── problem-122-efficient-exponentiation.portuguese.md │ │ │ │ ├── problem-123-prime-square-remainders.portuguese.md │ │ │ │ ├── problem-124-ordered-radicals.portuguese.md │ │ │ │ ├── problem-125-palindromic-sums.portuguese.md │ │ │ │ ├── problem-126-cuboid-layers.portuguese.md │ │ │ │ ├── problem-127-abc-hits.portuguese.md │ │ │ │ ├── problem-128-hexagonal-tile-differences.portuguese.md │ │ │ │ ├── problem-129-repunit-divisibility.portuguese.md │ │ │ │ ├── problem-13-large-sum.portuguese.md │ │ │ │ ├── problem-130-composites-with-prime-repunit-property.portuguese.md │ │ │ │ ├── problem-131-prime-cube-partnership.portuguese.md │ │ │ │ ├── problem-132-large-repunit-factors.portuguese.md │ │ │ │ ├── problem-133-repunit-nonfactors.portuguese.md │ │ │ │ ├── problem-134-prime-pair-connection.portuguese.md │ │ │ │ ├── problem-135-same-differences.portuguese.md │ │ │ │ ├── problem-136-singleton-difference.portuguese.md │ │ │ │ ├── problem-137-fibonacci-golden-nuggets.portuguese.md │ │ │ │ ├── problem-138-special-isosceles-triangles.portuguese.md │ │ │ │ ├── problem-139-pythagorean-tiles.portuguese.md │ │ │ │ ├── problem-14-longest-collatz-sequence.portuguese.md │ │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.portuguese.md │ │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.portuguese.md │ │ │ │ ├── problem-142-perfect-square-collection.portuguese.md │ │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.portuguese.md │ │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.portuguese.md │ │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.portuguese.md │ │ │ │ ├── problem-146-investigating-a-prime-pattern.portuguese.md │ │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.portuguese.md │ │ │ │ ├── problem-148-exploring-pascals-triangle.portuguese.md │ │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.portuguese.md │ │ │ │ ├── problem-15-lattice-paths.portuguese.md │ │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.portuguese.md │ │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.portuguese.md │ │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.portuguese.md │ │ │ │ ├── problem-153-investigating-gaussian-integers.portuguese.md │ │ │ │ ├── problem-154-exploring-pascals-pyramid.portuguese.md │ │ │ │ ├── problem-155-counting-capacitor-circuits.portuguese.md │ │ │ │ ├── problem-156-counting-digits.portuguese.md │ │ │ │ ├── problem-157-solving-the-diophantine-equation.portuguese.md │ │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.portuguese.md │ │ │ │ ├── problem-159-digital-root-sums-of-factorisations.portuguese.md │ │ │ │ ├── problem-16-power-digit-sum.portuguese.md │ │ │ │ ├── problem-160-factorial-trailing-digits.portuguese.md │ │ │ │ ├── problem-161-triominoes.portuguese.md │ │ │ │ ├── problem-162-hexadecimal-numbers.portuguese.md │ │ │ │ ├── problem-163-cross-hatched-triangles.portuguese.md │ │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.portuguese.md │ │ │ │ ├── problem-165-intersections.portuguese.md │ │ │ │ ├── problem-166-criss-cross.portuguese.md │ │ │ │ ├── problem-167-investigating-ulam-sequences.portuguese.md │ │ │ │ ├── problem-168-number-rotations.portuguese.md │ │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.portuguese.md │ │ │ │ ├── problem-17-number-letter-counts.portuguese.md │ │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.portuguese.md │ │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.portuguese.md │ │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.portuguese.md │ │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.portuguese.md │ │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.portuguese.md │ │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.portuguese.md │ │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.portuguese.md │ │ │ │ ├── problem-177-integer-angled-quadrilaterals.portuguese.md │ │ │ │ ├── problem-178-step-numbers.portuguese.md │ │ │ │ ├── problem-179-consecutive-positive-divisors.portuguese.md │ │ │ │ ├── problem-18-maximum-path-sum-i.portuguese.md │ │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.portuguese.md │ │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.portuguese.md │ │ │ │ ├── problem-182-rsa-encryption.portuguese.md │ │ │ │ ├── problem-183-maximum-product-of-parts.portuguese.md │ │ │ │ ├── problem-184-triangles-containing-the-origin.portuguese.md │ │ │ │ ├── problem-185-number-mind.portuguese.md │ │ │ │ ├── problem-186-connectedness-of-a-network.portuguese.md │ │ │ │ ├── problem-187-semiprimes.portuguese.md │ │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.portuguese.md │ │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.portuguese.md │ │ │ │ ├── problem-19-counting-sundays.portuguese.md │ │ │ │ ├── problem-190-maximising-a-weighted-product.portuguese.md │ │ │ │ ├── problem-191-prize-strings.portuguese.md │ │ │ │ ├── problem-192-best-approximations.portuguese.md │ │ │ │ ├── problem-193-squarefree-numbers.portuguese.md │ │ │ │ ├── problem-194-coloured-configurations.portuguese.md │ │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.portuguese.md │ │ │ │ ├── problem-196-prime-triplets.portuguese.md │ │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.portuguese.md │ │ │ │ ├── problem-198-ambiguous-numbers.portuguese.md │ │ │ │ ├── problem-199-iterative-circle-packing.portuguese.md │ │ │ │ ├── problem-2-even-fibonacci-numbers.portuguese.md │ │ │ │ ├── problem-20-factorial-digit-sum.portuguese.md │ │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.portuguese.md │ │ │ │ ├── problem-201-subsets-with-a-unique-sum.portuguese.md │ │ │ │ ├── problem-202-laserbeam.portuguese.md │ │ │ │ ├── problem-203-squarefree-binomial-coefficients.portuguese.md │ │ │ │ ├── problem-204-generalised-hamming-numbers.portuguese.md │ │ │ │ ├── problem-205-dice-game.portuguese.md │ │ │ │ ├── problem-206-concealed-square.portuguese.md │ │ │ │ ├── problem-207-integer-partition-equations.portuguese.md │ │ │ │ ├── problem-208-robot-walks.portuguese.md │ │ │ │ ├── problem-209-circular-logic.portuguese.md │ │ │ │ ├── problem-21-amicable-numbers.portuguese.md │ │ │ │ ├── problem-210-obtuse-angled-triangles.portuguese.md │ │ │ │ ├── problem-211-divisor-square-sum.portuguese.md │ │ │ │ ├── problem-212-combined-volume-of-cuboids.portuguese.md │ │ │ │ ├── problem-213-flea-circus.portuguese.md │ │ │ │ ├── problem-214-totient-chains.portuguese.md │ │ │ │ ├── problem-215-crack-free-walls.portuguese.md │ │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.portuguese.md │ │ │ │ ├── problem-217-balanced-numbers.portuguese.md │ │ │ │ ├── problem-218-perfect-right-angled-triangles.portuguese.md │ │ │ │ ├── problem-219-skew-cost-coding.portuguese.md │ │ │ │ ├── problem-22-names-scores.portuguese.md │ │ │ │ ├── problem-220-heighway-dragon.portuguese.md │ │ │ │ ├── problem-221-alexandrian-integers.portuguese.md │ │ │ │ ├── problem-222-sphere-packing.portuguese.md │ │ │ │ ├── problem-223-almost-right-angled-triangles-i.portuguese.md │ │ │ │ ├── problem-224-almost-right-angled-triangles-ii.portuguese.md │ │ │ │ ├── problem-225-tribonacci-non-divisors.portuguese.md │ │ │ │ ├── problem-226-a-scoop-of-blancmange.portuguese.md │ │ │ │ ├── problem-227-the-chase.portuguese.md │ │ │ │ ├── problem-228-minkowski-sums.portuguese.md │ │ │ │ ├── problem-229-four-representations-using-squares.portuguese.md │ │ │ │ ├── problem-23-non-abundant-sums.portuguese.md │ │ │ │ ├── problem-230-fibonacci-words.portuguese.md │ │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.portuguese.md │ │ │ │ ├── problem-232-the-race.portuguese.md │ │ │ │ ├── problem-233-lattice-points-on-a-circle.portuguese.md │ │ │ │ ├── problem-234-semidivisible-numbers.portuguese.md │ │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.portuguese.md │ │ │ │ ├── problem-236-luxury-hampers.portuguese.md │ │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.portuguese.md │ │ │ │ ├── problem-238-infinite-string-tour.portuguese.md │ │ │ │ ├── problem-239-twenty-two-foolish-primes.portuguese.md │ │ │ │ ├── problem-24-lexicographic-permutations.portuguese.md │ │ │ │ ├── problem-240-top-dice.portuguese.md │ │ │ │ ├── problem-241-perfection-quotients.portuguese.md │ │ │ │ ├── problem-242-odd-triplets.portuguese.md │ │ │ │ ├── problem-243-resilience.portuguese.md │ │ │ │ ├── problem-244-sliders.portuguese.md │ │ │ │ ├── problem-245-coresilience.portuguese.md │ │ │ │ ├── problem-246-tangents-to-an-ellipse.portuguese.md │ │ │ │ ├── problem-247-squares-under-a-hyperbola.portuguese.md │ │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.portuguese.md │ │ │ │ ├── problem-249-prime-subset-sums.portuguese.md │ │ │ │ ├── problem-25-1000-digit-fibonacci-number.portuguese.md │ │ │ │ ├── problem-250-250250.portuguese.md │ │ │ │ ├── problem-251-cardano-triplets.portuguese.md │ │ │ │ ├── problem-252-convex-holes.portuguese.md │ │ │ │ ├── problem-253-tidying-up.portuguese.md │ │ │ │ ├── problem-254-sums-of-digit-factorials.portuguese.md │ │ │ │ ├── problem-255-rounded-square-roots.portuguese.md │ │ │ │ ├── problem-256-tatami-free-rooms.portuguese.md │ │ │ │ ├── problem-257-angular-bisectors.portuguese.md │ │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.portuguese.md │ │ │ │ ├── problem-259-reachable-numbers.portuguese.md │ │ │ │ ├── problem-26-reciprocal-cycles.portuguese.md │ │ │ │ ├── problem-260-stone-game.portuguese.md │ │ │ │ ├── problem-261-pivotal-square-sums.portuguese.md │ │ │ │ ├── problem-262-mountain-range.portuguese.md │ │ │ │ ├── problem-263-an-engineers-dream-come-true.portuguese.md │ │ │ │ ├── problem-264-triangle-centres.portuguese.md │ │ │ │ ├── problem-265-binary-circles.portuguese.md │ │ │ │ ├── problem-266-pseudo-square-root.portuguese.md │ │ │ │ ├── problem-267-billionaire.portuguese.md │ │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.portuguese.md │ │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.portuguese.md │ │ │ │ ├── problem-27-quadratic-primes.portuguese.md │ │ │ │ ├── problem-270-cutting-squares.portuguese.md │ │ │ │ ├── problem-271-modular-cubes-part-1.portuguese.md │ │ │ │ ├── problem-272-modular-cubes-part-2.portuguese.md │ │ │ │ ├── problem-273-sum-of-squares.portuguese.md │ │ │ │ ├── problem-274-divisibility-multipliers.portuguese.md │ │ │ │ ├── problem-275-balanced-sculptures.portuguese.md │ │ │ │ ├── problem-276-primitive-triangles.portuguese.md │ │ │ │ ├── problem-277-a-modified-collatz-sequence.portuguese.md │ │ │ │ ├── problem-278-linear-combinations-of-semiprimes.portuguese.md │ │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.portuguese.md │ │ │ │ ├── problem-28-number-spiral-diagonals.portuguese.md │ │ │ │ ├── problem-280-ant-and-seeds.portuguese.md │ │ │ │ ├── problem-281-pizza-toppings.portuguese.md │ │ │ │ ├── problem-282-the-ackermann-function.portuguese.md │ │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.portuguese.md │ │ │ │ ├── problem-284-steady-squares.portuguese.md │ │ │ │ ├── problem-285-pythagorean-odds.portuguese.md │ │ │ │ ├── problem-286-scoring-probabilities.portuguese.md │ │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.portuguese.md │ │ │ │ ├── problem-288-an-enormous-factorial.portuguese.md │ │ │ │ ├── problem-289-eulerian-cycles.portuguese.md │ │ │ │ ├── problem-29-distinct-powers.portuguese.md │ │ │ │ ├── problem-290-digital-signature.portuguese.md │ │ │ │ ├── problem-291-panaitopol-primes.portuguese.md │ │ │ │ ├── problem-292-pythagorean-polygons.portuguese.md │ │ │ │ ├── problem-293-pseudo-fortunate-numbers.portuguese.md │ │ │ │ ├── problem-294-sum-of-digits---experience-23.portuguese.md │ │ │ │ ├── problem-295-lenticular-holes.portuguese.md │ │ │ │ ├── problem-296-angular-bisector-and-tangent.portuguese.md │ │ │ │ ├── problem-297-zeckendorf-representation.portuguese.md │ │ │ │ ├── problem-298-selective-amnesia.portuguese.md │ │ │ │ ├── problem-299-three-similar-triangles.portuguese.md │ │ │ │ ├── problem-3-largest-prime-factor.portuguese.md │ │ │ │ ├── problem-30-digit-n-powers.portuguese.md │ │ │ │ ├── problem-300-protein-folding.portuguese.md │ │ │ │ ├── problem-301-nim.portuguese.md │ │ │ │ ├── problem-302-strong-achilles-numbers.portuguese.md │ │ │ │ ├── problem-303-multiples-with-small-digits.portuguese.md │ │ │ │ ├── problem-304-primonacci.portuguese.md │ │ │ │ ├── problem-305-reflexive-position.portuguese.md │ │ │ │ ├── problem-306-paper-strip-game.portuguese.md │ │ │ │ ├── problem-307-chip-defects.portuguese.md │ │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.portuguese.md │ │ │ │ ├── problem-309-integer-ladders.portuguese.md │ │ │ │ ├── problem-31-coin-sums.portuguese.md │ │ │ │ ├── problem-310-nim-square.portuguese.md │ │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.portuguese.md │ │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.portuguese.md │ │ │ │ ├── problem-313-sliding-game.portuguese.md │ │ │ │ ├── problem-314-the-mouse-on-the-moon.portuguese.md │ │ │ │ ├── problem-315-digital-root-clocks.portuguese.md │ │ │ │ ├── problem-316-numbers-in-decimal-expansions.portuguese.md │ │ │ │ ├── problem-317-firecracker.portuguese.md │ │ │ │ ├── problem-318-2011-nines.portuguese.md │ │ │ │ ├── problem-319-bounded-sequences.portuguese.md │ │ │ │ ├── problem-32-pandigital-products.portuguese.md │ │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.portuguese.md │ │ │ │ ├── problem-321-swapping-counters.portuguese.md │ │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.portuguese.md │ │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.portuguese.md │ │ │ │ ├── problem-324-building-a-tower.portuguese.md │ │ │ │ ├── problem-325-stone-game-ii.portuguese.md │ │ │ │ ├── problem-326-modulo-summations.portuguese.md │ │ │ │ ├── problem-327-rooms-of-doom.portuguese.md │ │ │ │ ├── problem-328-lowest-cost-search.portuguese.md │ │ │ │ ├── problem-329-prime-frog.portuguese.md │ │ │ │ ├── problem-33-digit-cancelling-fractions.portuguese.md │ │ │ │ ├── problem-330-eulers-number.portuguese.md │ │ │ │ ├── problem-331-cross-flips.portuguese.md │ │ │ │ ├── problem-332-spherical-triangles.portuguese.md │ │ │ │ ├── problem-333-special-partitions.portuguese.md │ │ │ │ ├── problem-334-spilling-the-beans.portuguese.md │ │ │ │ ├── problem-335-gathering-the-beans.portuguese.md │ │ │ │ ├── problem-336-maximix-arrangements.portuguese.md │ │ │ │ ├── problem-337-totient-stairstep-sequences.portuguese.md │ │ │ │ ├── problem-338-cutting-rectangular-grid-paper.portuguese.md │ │ │ │ ├── problem-339-peredur-fab-efrawg.portuguese.md │ │ │ │ ├── problem-34-digit-factorials.portuguese.md │ │ │ │ ├── problem-340-crazy-function.portuguese.md │ │ │ │ ├── problem-341-golombs-self-describing-sequence.portuguese.md │ │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.portuguese.md │ │ │ │ ├── problem-343-fractional-sequences.portuguese.md │ │ │ │ ├── problem-344-silver-dollar-game.portuguese.md │ │ │ │ ├── problem-345-matrix-sum.portuguese.md │ │ │ │ ├── problem-346-strong-repunits.portuguese.md │ │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.portuguese.md │ │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.portuguese.md │ │ │ │ ├── problem-349-langtons-ant.portuguese.md │ │ │ │ ├── problem-35-circular-primes.portuguese.md │ │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.portuguese.md │ │ │ │ ├── problem-351-hexagonal-orchards.portuguese.md │ │ │ │ ├── problem-352-blood-tests.portuguese.md │ │ │ │ ├── problem-353-risky-moon.portuguese.md │ │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.portuguese.md │ │ │ │ ├── problem-355-maximal-coprime-subset.portuguese.md │ │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.portuguese.md │ │ │ │ ├── problem-357-prime-generating-integers.portuguese.md │ │ │ │ ├── problem-358-cyclic-numbers.portuguese.md │ │ │ │ ├── problem-359-hilberts-new-hotel.portuguese.md │ │ │ │ ├── problem-36-double-base-palindromes.portuguese.md │ │ │ │ ├── problem-360-scary-sphere.portuguese.md │ │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.portuguese.md │ │ │ │ ├── problem-362-squarefree-factors.portuguese.md │ │ │ │ ├── problem-363-bzier-curves.portuguese.md │ │ │ │ ├── problem-364-comfortable-distance.portuguese.md │ │ │ │ ├── problem-365-a-huge-binomial-coefficient.portuguese.md │ │ │ │ ├── problem-366-stone-game-iii.portuguese.md │ │ │ │ ├── problem-367-bozo-sort.portuguese.md │ │ │ │ ├── problem-368-a-kempner-like-series.portuguese.md │ │ │ │ ├── problem-369-badugi.portuguese.md │ │ │ │ ├── problem-37-truncatable-primes.portuguese.md │ │ │ │ ├── problem-370-geometric-triangles.portuguese.md │ │ │ │ ├── problem-371-licence-plates.portuguese.md │ │ │ │ ├── problem-372-pencils-of-rays.portuguese.md │ │ │ │ ├── problem-373-circumscribed-circles.portuguese.md │ │ │ │ ├── problem-374-maximum-integer-partition-product.portuguese.md │ │ │ │ ├── problem-375-minimum-of-subsequences.portuguese.md │ │ │ │ ├── problem-376-nontransitive-sets-of-dice.portuguese.md │ │ │ │ ├── problem-377-sum-of-digits-experience-13.portuguese.md │ │ │ │ ├── problem-378-triangle-triples.portuguese.md │ │ │ │ ├── problem-379-least-common-multiple-count.portuguese.md │ │ │ │ ├── problem-38-pandigital-multiples.portuguese.md │ │ │ │ ├── problem-380-amazing-mazes.portuguese.md │ │ │ │ ├── problem-381-prime-k-factorial.portuguese.md │ │ │ │ ├── problem-382-generating-polygons.portuguese.md │ │ │ │ ├── problem-383-divisibility-comparison-between-factorials.portuguese.md │ │ │ │ ├── problem-384-rudin-shapiro-sequence.portuguese.md │ │ │ │ ├── problem-385-ellipses-inside-triangles.portuguese.md │ │ │ │ ├── problem-386-maximum-length-of-an-antichain.portuguese.md │ │ │ │ ├── problem-387-harshad-numbers.portuguese.md │ │ │ │ ├── problem-388-distinct-lines.portuguese.md │ │ │ │ ├── problem-389-platonic-dice.portuguese.md │ │ │ │ ├── problem-39-integer-right-triangles.portuguese.md │ │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.portuguese.md │ │ │ │ ├── problem-391-hopping-game.portuguese.md │ │ │ │ ├── problem-392-enmeshed-unit-circle.portuguese.md │ │ │ │ ├── problem-393-migrating-ants.portuguese.md │ │ │ │ ├── problem-394-eating-pie.portuguese.md │ │ │ │ ├── problem-395-pythagorean-tree.portuguese.md │ │ │ │ ├── problem-396-weak-goodstein-sequence.portuguese.md │ │ │ │ ├── problem-397-triangle-on-parabola.portuguese.md │ │ │ │ ├── problem-398-cutting-rope.portuguese.md │ │ │ │ ├── problem-399-squarefree-fibonacci-numbers.portuguese.md │ │ │ │ ├── problem-4-largest-palindrome-product.portuguese.md │ │ │ │ ├── problem-40-champernownes-constant.portuguese.md │ │ │ │ ├── problem-400-fibonacci-tree-game.portuguese.md │ │ │ │ ├── problem-401-sum-of-squares-of-divisors.portuguese.md │ │ │ │ ├── problem-402-integer-valued-polynomials.portuguese.md │ │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.portuguese.md │ │ │ │ ├── problem-404-crisscross-ellipses.portuguese.md │ │ │ │ ├── problem-405-a-rectangular-tiling.portuguese.md │ │ │ │ ├── problem-406-guessing-game.portuguese.md │ │ │ │ ├── problem-407-idempotents.portuguese.md │ │ │ │ ├── problem-408-admissible-paths-through-a-grid.portuguese.md │ │ │ │ ├── problem-409-nim-extreme.portuguese.md │ │ │ │ ├── problem-41-pandigital-prime.portuguese.md │ │ │ │ ├── problem-410-circle-and-tangent-line.portuguese.md │ │ │ │ ├── problem-411-uphill-paths.portuguese.md │ │ │ │ ├── problem-412-gnomon-numbering.portuguese.md │ │ │ │ ├── problem-413-one-child-numbers.portuguese.md │ │ │ │ ├── problem-414-kaprekar-constant.portuguese.md │ │ │ │ ├── problem-415-titanic-sets.portuguese.md │ │ │ │ ├── problem-416-a-frogs-trip.portuguese.md │ │ │ │ ├── problem-417-reciprocal-cycles-ii.portuguese.md │ │ │ │ ├── problem-418-factorisation-triples.portuguese.md │ │ │ │ ├── problem-419-look-and-say-sequence.portuguese.md │ │ │ │ ├── problem-42-coded-triangle-numbers.portuguese.md │ │ │ │ ├── problem-420-2x2-positive-integer-matrix.portuguese.md │ │ │ │ ├── problem-421-prime-factors-of-n151.portuguese.md │ │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.portuguese.md │ │ │ │ ├── problem-423-consecutive-die-throws.portuguese.md │ │ │ │ ├── problem-424-kakuro.portuguese.md │ │ │ │ ├── problem-425-prime-connection.portuguese.md │ │ │ │ ├── problem-426-box-ball-system.portuguese.md │ │ │ │ ├── problem-427-n-sequences.portuguese.md │ │ │ │ ├── problem-428-necklace-of-circles.portuguese.md │ │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.portuguese.md │ │ │ │ ├── problem-43-sub-string-divisibility.portuguese.md │ │ │ │ ├── problem-430-range-flips.portuguese.md │ │ │ │ ├── problem-431-square-space-silo.portuguese.md │ │ │ │ ├── problem-432-totient-sum.portuguese.md │ │ │ │ ├── problem-433-steps-in-euclids-algorithm.portuguese.md │ │ │ │ ├── problem-434-rigid-graphs.portuguese.md │ │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.portuguese.md │ │ │ │ ├── problem-436-unfair-wager.portuguese.md │ │ │ │ ├── problem-437-fibonacci-primitive-roots.portuguese.md │ │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.portuguese.md │ │ │ │ ├── problem-439-sum-of-sum-of-divisors.portuguese.md │ │ │ │ ├── problem-44-pentagon-numbers.portuguese.md │ │ │ │ ├── problem-440-gcd-and-tiling.portuguese.md │ │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.portuguese.md │ │ │ │ ├── problem-442-eleven-free-integers.portuguese.md │ │ │ │ ├── problem-443-gcd-sequence.portuguese.md │ │ │ │ ├── problem-444-the-roundtable-lottery.portuguese.md │ │ │ │ ├── problem-445-retractions-a.portuguese.md │ │ │ │ ├── problem-446-retractions-b.portuguese.md │ │ │ │ ├── problem-447-retractions-c.portuguese.md │ │ │ │ ├── problem-448-average-least-common-multiple.portuguese.md │ │ │ │ ├── problem-449-chocolate-covered-candy.portuguese.md │ │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.portuguese.md │ │ │ │ ├── problem-450-hypocycloid-and-lattice-points.portuguese.md │ │ │ │ ├── problem-451-modular-inverses.portuguese.md │ │ │ │ ├── problem-452-long-products.portuguese.md │ │ │ │ ├── problem-453-lattice-quadrilaterals.portuguese.md │ │ │ │ ├── problem-454-diophantine-reciprocals-iii.portuguese.md │ │ │ │ ├── problem-455-powers-with-trailing-digits.portuguese.md │ │ │ │ ├── problem-456-triangles-containing-the-origin-ii.portuguese.md │ │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.portuguese.md │ │ │ │ ├── problem-458-permutations-of-project.portuguese.md │ │ │ │ ├── problem-459-flipping-game.portuguese.md │ │ │ │ ├── problem-46-goldbachs-other-conjecture.portuguese.md │ │ │ │ ├── problem-460-an-ant-on-the-move.portuguese.md │ │ │ │ ├── problem-461-almost-pi.portuguese.md │ │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.portuguese.md │ │ │ │ ├── problem-463-a-weird-recurrence-relation.portuguese.md │ │ │ │ ├── problem-464-mbius-function-and-intervals.portuguese.md │ │ │ │ ├── problem-465-polar-polygons.portuguese.md │ │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.portuguese.md │ │ │ │ ├── problem-467-superinteger.portuguese.md │ │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.portuguese.md │ │ │ │ ├── problem-469-empty-chairs.portuguese.md │ │ │ │ ├── problem-47-distinct-primes-factors.portuguese.md │ │ │ │ ├── problem-470-super-ramvok.portuguese.md │ │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.portuguese.md │ │ │ │ ├── problem-472-comfortable-distance-ii.portuguese.md │ │ │ │ ├── problem-473-phigital-number-base.portuguese.md │ │ │ │ ├── problem-474-last-digits-of-divisors.portuguese.md │ │ │ │ ├── problem-475-music-festival.portuguese.md │ │ │ │ ├── problem-476-circle-packing-ii.portuguese.md │ │ │ │ ├── problem-477-number-sequence-game.portuguese.md │ │ │ │ ├── problem-478-mixtures.portuguese.md │ │ │ │ ├── problem-479-roots-on-the-rise.portuguese.md │ │ │ │ ├── problem-48-self-powers.portuguese.md │ │ │ │ ├── problem-480-the-last-question.portuguese.md │ │ │ │ ├── problem-49-prime-permutations.portuguese.md │ │ │ │ ├── problem-5-smallest-multiple.portuguese.md │ │ │ │ ├── problem-50-consecutive-prime-sum.portuguese.md │ │ │ │ ├── problem-51-prime-digit-replacements.portuguese.md │ │ │ │ ├── problem-52-permuted-multiples.portuguese.md │ │ │ │ ├── problem-53-combinatoric-selections.portuguese.md │ │ │ │ ├── problem-54-poker-hands.portuguese.md │ │ │ │ ├── problem-55-lychrel-numbers.portuguese.md │ │ │ │ ├── problem-56-powerful-digit-sum.portuguese.md │ │ │ │ ├── problem-57-square-root-convergents.portuguese.md │ │ │ │ ├── problem-58-spiral-primes.portuguese.md │ │ │ │ ├── problem-59-xor-decryption.portuguese.md │ │ │ │ ├── problem-6-sum-square-difference.portuguese.md │ │ │ │ ├── problem-60-prime-pair-sets.portuguese.md │ │ │ │ ├── problem-61-cyclical-figurate-numbers.portuguese.md │ │ │ │ ├── problem-62-cubic-permutations.portuguese.md │ │ │ │ ├── problem-63-powerful-digit-counts.portuguese.md │ │ │ │ ├── problem-64-odd-period-square-roots.portuguese.md │ │ │ │ ├── problem-65-convergents-of-e.portuguese.md │ │ │ │ ├── problem-66-diophantine-equation.portuguese.md │ │ │ │ ├── problem-67-maximum-path-sum-ii.portuguese.md │ │ │ │ ├── problem-68-magic-5-gon-ring.portuguese.md │ │ │ │ ├── problem-69-totient-maximum.portuguese.md │ │ │ │ ├── problem-7-10001st-prime.portuguese.md │ │ │ │ ├── problem-70-totient-permutation.portuguese.md │ │ │ │ ├── problem-71-ordered-fractions.portuguese.md │ │ │ │ ├── problem-72-counting-fractions.portuguese.md │ │ │ │ ├── problem-73-counting-fractions-in-a-range.portuguese.md │ │ │ │ ├── problem-74-digit-factorial-chains.portuguese.md │ │ │ │ ├── problem-75-singular-integer-right-triangles.portuguese.md │ │ │ │ ├── problem-76-counting-summations.portuguese.md │ │ │ │ ├── problem-77-prime-summations.portuguese.md │ │ │ │ ├── problem-78-coin-partitions.portuguese.md │ │ │ │ ├── problem-79-passcode-derivation.portuguese.md │ │ │ │ ├── problem-8-largest-product-in-a-series.portuguese.md │ │ │ │ ├── problem-80-square-root-digital-expansion.portuguese.md │ │ │ │ ├── problem-81-path-sum-two-ways.portuguese.md │ │ │ │ ├── problem-82-path-sum-three-ways.portuguese.md │ │ │ │ ├── problem-83-path-sum-four-ways.portuguese.md │ │ │ │ ├── problem-84-monopoly-odds.portuguese.md │ │ │ │ ├── problem-85-counting-rectangles.portuguese.md │ │ │ │ ├── problem-86-cuboid-route.portuguese.md │ │ │ │ ├── problem-87-prime-power-triples.portuguese.md │ │ │ │ ├── problem-88-product-sum-numbers.portuguese.md │ │ │ │ ├── problem-89-roman-numerals.portuguese.md │ │ │ │ ├── problem-9-special-pythagorean-triplet.portuguese.md │ │ │ │ ├── problem-90-cube-digit-pairs.portuguese.md │ │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.portuguese.md │ │ │ │ ├── problem-92-square-digit-chains.portuguese.md │ │ │ │ ├── problem-93-arithmetic-expressions.portuguese.md │ │ │ │ ├── problem-94-almost-equilateral-triangles.portuguese.md │ │ │ │ ├── problem-95-amicable-chains.portuguese.md │ │ │ │ ├── problem-96-su-doku.portuguese.md │ │ │ │ ├── problem-97-large-non-mersenne-prime.portuguese.md │ │ │ │ ├── problem-98-anagramic-squares.portuguese.md │ │ │ │ └── problem-99-largest-exponential.portuguese.md │ │ │ ├── rosetta-code │ │ │ │ ├── 100-doors.portuguese.md │ │ │ │ ├── 24-game.portuguese.md │ │ │ │ ├── 9-billion-names-of-god-the-integer.portuguese.md │ │ │ │ ├── abc-problem.portuguese.md │ │ │ │ ├── abundant-deficient-and-perfect-number-classifications.portuguese.md │ │ │ │ ├── accumulator-factory.portuguese.md │ │ │ │ ├── ackermann-function.portuguese.md │ │ │ │ ├── align-columns.portuguese.md │ │ │ │ ├── amicable-pairs.portuguese.md │ │ │ │ ├── averages-mode.portuguese.md │ │ │ │ ├── averages-pythagorean-means.portuguese.md │ │ │ │ ├── averages-root-mean-square.portuguese.md │ │ │ │ ├── babbage-problem.portuguese.md │ │ │ │ ├── balanced-brackets.portuguese.md │ │ │ │ ├── circles-of-given-radius-through-two-points.portuguese.md │ │ │ │ ├── closest-pair-problem.portuguese.md │ │ │ │ ├── combinations.portuguese.md │ │ │ │ ├── comma-quibbling.portuguese.md │ │ │ │ ├── compare-a-list-of-strings.portuguese.md │ │ │ │ ├── convert-seconds-to-compound-duration.portuguese.md │ │ │ │ ├── count-occurrences-of-a-substring.portuguese.md │ │ │ │ ├── count-the-coins.portuguese.md │ │ │ │ ├── cramers-rule.portuguese.md │ │ │ │ ├── date-format.portuguese.md │ │ │ │ ├── date-manipulation.portuguese.md │ │ │ │ ├── day-of-the-week.portuguese.md │ │ │ │ ├── deal-cards-for-freecell.portuguese.md │ │ │ │ ├── deepcopy.portuguese.md │ │ │ │ ├── define-a-primitive-data-type.portuguese.md │ │ │ │ ├── department-numbers.portuguese.md │ │ │ │ ├── discordian-date.portuguese.md │ │ │ │ ├── element-wise-operations.portuguese.md │ │ │ │ ├── emirp-primes.portuguese.md │ │ │ │ ├── entropy.portuguese.md │ │ │ │ ├── equilibrium-index.portuguese.md │ │ │ │ ├── ethiopian-multiplication.portuguese.md │ │ │ │ ├── euler-method.portuguese.md │ │ │ │ ├── evaluate-binomial-coefficients.portuguese.md │ │ │ │ ├── execute-a-markov-algorithm.portuguese.md │ │ │ │ ├── execute-brain.portuguese.md │ │ │ │ ├── extensible-prime-generator.portuguese.md │ │ │ │ ├── factorial.portuguese.md │ │ │ │ ├── factors-of-a-mersenne-number.portuguese.md │ │ │ │ ├── factors-of-an-integer.portuguese.md │ │ │ │ ├── farey-sequence.portuguese.md │ │ │ │ ├── fibonacci-n-step-number-sequences.portuguese.md │ │ │ │ ├── fibonacci-sequence.portuguese.md │ │ │ │ ├── fibonacci-word.portuguese.md │ │ │ │ ├── fractran.portuguese.md │ │ │ │ ├── gamma-function.portuguese.md │ │ │ │ ├── gaussian-elimination.portuguese.md │ │ │ │ ├── general-fizzbuzz.portuguese.md │ │ │ │ ├── generate-lower-case-ascii-alphabet.portuguese.md │ │ │ │ ├── generatorexponential.portuguese.md │ │ │ │ ├── gray-code.portuguese.md │ │ │ │ ├── greatest-common-divisor.portuguese.md │ │ │ │ ├── greatest-subsequential-sum.portuguese.md │ │ │ │ ├── hailstone-sequence.portuguese.md │ │ │ │ ├── happy-numbers.portuguese.md │ │ │ │ ├── harshad-or-niven-series.portuguese.md │ │ │ │ ├── hash-from-two-arrays.portuguese.md │ │ │ │ ├── hash-join.portuguese.md │ │ │ │ ├── heronian-triangles.portuguese.md │ │ │ │ ├── hofstadter-figure-figure-sequences.portuguese.md │ │ │ │ ├── hofstadter-q-sequence.portuguese.md │ │ │ │ ├── i-before-e-except-after-c.portuguese.md │ │ │ │ ├── iban.portuguese.md │ │ │ │ ├── identity-matrix.portuguese.md │ │ │ │ ├── iterated-digits-squaring.portuguese.md │ │ │ │ ├── jaro-distance.portuguese.md │ │ │ │ ├── jortsort.portuguese.md │ │ │ │ ├── josephus-problem.portuguese.md │ │ │ │ ├── s-expressions.portuguese.md │ │ │ │ ├── sailors-coconuts-and-a-monkey-problem.portuguese.md │ │ │ │ ├── sedols.portuguese.md │ │ │ │ ├── taxicab-numbers.portuguese.md │ │ │ │ ├── tokenize-a-string-with-escaping.portuguese.md │ │ │ │ ├── top-rank-per-group.portuguese.md │ │ │ │ ├── topological-sort.portuguese.md │ │ │ │ ├── towers-of-hanoi.portuguese.md │ │ │ │ ├── vector-cross-product.portuguese.md │ │ │ │ ├── vector-dot-product.portuguese.md │ │ │ │ ├── word-wrap.portuguese.md │ │ │ │ ├── y-combinator.portuguese.md │ │ │ │ ├── zeckendorf-number-representation.portuguese.md │ │ │ │ ├── zhang-suen-thinning-algorithm.portuguese.md │ │ │ │ └── zig-zag-matrix.portuguese.md │ │ │ └── take-home-projects │ │ │ │ ├── build-a-camper-leaderboard.portuguese.md │ │ │ │ ├── build-a-light-bright-app.portuguese.md │ │ │ │ ├── build-a-nightlife-coordination-app.portuguese.md │ │ │ │ ├── build-a-pinterest-clone.portuguese.md │ │ │ │ ├── build-a-pong-game.portuguese.md │ │ │ │ ├── build-a-recipe-box.portuguese.md │ │ │ │ ├── build-a-roguelike-dungeon-crawler-game.portuguese.md │ │ │ │ ├── build-a-simon-game.portuguese.md │ │ │ │ ├── build-a-tic-tac-toe-game.portuguese.md │ │ │ │ ├── build-a-voting-app.portuguese.md │ │ │ │ ├── build-a-wikipedia-viewer.portuguese.md │ │ │ │ ├── build-an-image-search-abstraction-layer.portuguese.md │ │ │ │ ├── build-the-game-of-life.portuguese.md │ │ │ │ ├── chart-the-stock-market.portuguese.md │ │ │ │ ├── manage-a-book-trading-club.portuguese.md │ │ │ │ ├── map-data-across-the-globe.portuguese.md │ │ │ │ ├── p2p-video-chat-application.portuguese.md │ │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.portuguese.md │ │ │ │ ├── show-the-local-weather.portuguese.md │ │ │ │ └── use-the-twitch-json-api.portuguese.md │ │ └── 09-certificates │ │ │ ├── apis-and-microservices-certificate │ │ │ └── apis-and-microservices-certificate.portuguese.md │ │ │ ├── data-visualization-certificate │ │ │ └── data-visualization-certificate.portuguese.md │ │ │ ├── front-end-libraries-certificate │ │ │ └── front-end-libraries-certificate.portuguese.md │ │ │ ├── information-securtiy-and-quality-assurance-certificate │ │ │ └── information-securtiy-and-quality-assurance-certificate.portuguese.md │ │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── javascript-algorithms-and-data-structures-certificate.portuguese.md │ │ │ ├── legacy-back-end-certificate │ │ │ └── legacy-back-end-certificate.portuguese.md │ │ │ ├── legacy-data-visualization-certificate │ │ │ └── legacy-data-visualization-certificate.portuguese.md │ │ │ ├── legacy-front-end-certificate │ │ │ └── legacy-front-end-certificate.portuguese.md │ │ │ └── responsive-web-design-certificate │ │ │ └── responsive-web-design-certificate.portuguese.md │ ├── russian │ │ ├── 01-responsive-web-design │ │ │ ├── applied-accessibility │ │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.russian.md │ │ │ │ ├── add-an-accessible-date-picker.russian.md │ │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.russian.md │ │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.russian.md │ │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.russian.md │ │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.russian.md │ │ │ │ ├── improve-chart-accessibility-with-the-figure-element.russian.md │ │ │ │ ├── improve-form-field-accessibility-with-the-label-element.russian.md │ │ │ │ ├── improve-readability-with-high-contrast-text.russian.md │ │ │ │ ├── jump-straight-to-the-content-using-the-main-element.russian.md │ │ │ │ ├── know-when-alt-text-should-be-left-blank.russian.md │ │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.russian.md │ │ │ │ ├── make-links-navigatable-with-html-access-keys.russian.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.russian.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.russian.md │ │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.russian.md │ │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.russian.md │ │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.russian.md │ │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.russian.md │ │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.russian.md │ │ │ │ ├── wrap-content-in-the-article-element.russian.md │ │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.russian.md │ │ │ ├── applied-visual-design │ │ │ │ ├── add-a-box-shadow-to-a-card-like-element.russian.md │ │ │ │ ├── adjust-the-background-color-property-of-text.russian.md │ │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.russian.md │ │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.russian.md │ │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.russian.md │ │ │ │ ├── adjust-the-hue-of-a-color.russian.md │ │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.russian.md │ │ │ │ ├── adjust-the-tone-of-a-color.russian.md │ │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.russian.md │ │ │ │ ├── animate-elements-at-variable-rates.russian.md │ │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.russian.md │ │ │ │ ├── animate-multiple-elements-at-variable-rates.russian.md │ │ │ │ ├── center-an-element-horizontally-using-the-margin-property.russian.md │ │ │ │ ├── change-an-elements-relative-position.russian.md │ │ │ │ ├── change-animation-timing-with-keywords.russian.md │ │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.russian.md │ │ │ │ ├── create-a-gradual-css-linear-gradient.russian.md │ │ │ │ ├── create-a-graphic-using-css.russian.md │ │ │ │ ├── create-a-horizontal-line-using-the-hr-element.russian.md │ │ │ │ ├── create-a-more-complex-shape-using-css-and-html.russian.md │ │ │ │ ├── create-movement-using-css-animation.russian.md │ │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.russian.md │ │ │ │ ├── create-visual-balance-using-the-text-align-property.russian.md │ │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.russian.md │ │ │ │ ├── decrease-the-opacity-of-an-element.russian.md │ │ │ │ ├── learn-about-complementary-colors.russian.md │ │ │ │ ├── learn-about-tertiary-colors.russian.md │ │ │ │ ├── learn-how-bezier-curves-work.russian.md │ │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.russian.md │ │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.russian.md │ │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.russian.md │ │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.russian.md │ │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.russian.md │ │ │ │ ├── modify-fill-mode-of-an-animation.russian.md │ │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.russian.md │ │ │ │ ├── push-elements-left-or-right-with-the-float-property.russian.md │ │ │ │ ├── set-the-font-size-for-multiple-heading-elements.russian.md │ │ │ │ ├── set-the-font-size-of-paragraph-text.russian.md │ │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.russian.md │ │ │ │ ├── set-the-line-height-of-paragraphs.russian.md │ │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.russian.md │ │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.russian.md │ │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.russian.md │ │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.russian.md │ │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.russian.md │ │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.russian.md │ │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.russian.md │ │ │ │ ├── use-the-em-tag-to-italicize-text.russian.md │ │ │ │ ├── use-the-s-tag-to-strikethrough-text.russian.md │ │ │ │ ├── use-the-strong-tag-to-make-text-bold.russian.md │ │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.russian.md │ │ │ │ └── use-the-u-tag-to-underline-text.russian.md │ │ │ ├── basic-css │ │ │ │ ├── add-a-negative-margin-to-an-element.russian.md │ │ │ │ ├── add-borders-around-your-elements.russian.md │ │ │ │ ├── add-different-margins-to-each-side-of-an-element.russian.md │ │ │ │ ├── add-different-padding-to-each-side-of-an-element.russian.md │ │ │ │ ├── add-rounded-corners-with-border-radius.russian.md │ │ │ │ ├── adjust-the-margin-of-an-element.russian.md │ │ │ │ ├── adjust-the-padding-of-an-element.russian.md │ │ │ │ ├── attach-a-fallback-value-to-a-css-variable.russian.md │ │ │ │ ├── cascading-css-variables.russian.md │ │ │ │ ├── change-a-variable-for-a-specific-area.russian.md │ │ │ │ ├── change-the-color-of-text.russian.md │ │ │ │ ├── change-the-font-size-of-an-element.russian.md │ │ │ │ ├── create-a-custom-css-variable.russian.md │ │ │ │ ├── give-a-background-color-to-a-div-element.russian.md │ │ │ │ ├── import-a-google-font.russian.md │ │ │ │ ├── improve-compatibility-with-browser-fallbacks.russian.md │ │ │ │ ├── inherit-styles-from-the-body-element.russian.md │ │ │ │ ├── make-circular-images-with-a-border-radius.russian.md │ │ │ │ ├── override-all-other-styles-by-using-important.russian.md │ │ │ │ ├── override-class-declarations-by-styling-id-attributes.russian.md │ │ │ │ ├── override-class-declarations-with-inline-styles.russian.md │ │ │ │ ├── override-styles-in-subsequent-css.russian.md │ │ │ │ ├── prioritize-one-style-over-another.russian.md │ │ │ │ ├── set-the-font-family-of-an-element.russian.md │ │ │ │ ├── set-the-id-of-an-element.russian.md │ │ │ │ ├── size-your-images.russian.md │ │ │ │ ├── specify-how-fonts-should-degrade.russian.md │ │ │ │ ├── style-multiple-elements-with-a-css-class.russian.md │ │ │ │ ├── style-the-html-body-element.russian.md │ │ │ │ ├── understand-absolute-versus-relative-units.russian.md │ │ │ │ ├── use-a-css-class-to-style-an-element.russian.md │ │ │ │ ├── use-a-custom-css-variable.russian.md │ │ │ │ ├── use-a-media-query-to-change-a-variable.russian.md │ │ │ │ ├── use-abbreviated-hex-code.russian.md │ │ │ │ ├── use-an-id-attribute-to-style-an-element.russian.md │ │ │ │ ├── use-attribute-selectors-to-style-elements.russian.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.russian.md │ │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.russian.md │ │ │ │ ├── use-css-selectors-to-style-elements.russian.md │ │ │ │ ├── use-css-variables-to-change-several-elements-at-once.russian.md │ │ │ │ ├── use-hex-code-for-specific-colors.russian.md │ │ │ │ ├── use-hex-code-to-mix-colors.russian.md │ │ │ │ ├── use-rgb-to-mix-colors.russian.md │ │ │ │ └── use-rgb-values-to-color-elements.russian.md │ │ │ ├── basic-html-and-html5 │ │ │ │ ├── add-a-submit-button-to-a-form.russian.md │ │ │ │ ├── add-images-to-your-website.russian.md │ │ │ │ ├── add-placeholder-text-to-a-text-field.russian.md │ │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.russian.md │ │ │ │ ├── comment-out-html.russian.md │ │ │ │ ├── create-a-bulleted-unordered-list.russian.md │ │ │ │ ├── create-a-form-element.russian.md │ │ │ │ ├── create-a-set-of-checkboxes.russian.md │ │ │ │ ├── create-a-set-of-radio-buttons.russian.md │ │ │ │ ├── create-a-text-field.russian.md │ │ │ │ ├── create-an-ordered-list.russian.md │ │ │ │ ├── declare-the-doctype-of-an-html-document.russian.md │ │ │ │ ├── define-the-head-and-body-of-an-html-document.russian.md │ │ │ │ ├── delete-html-elements.russian.md │ │ │ │ ├── fill-in-the-blank-with-placeholder-text.russian.md │ │ │ │ ├── headline-with-the-h2-element.russian.md │ │ │ │ ├── inform-with-the-paragraph-element.russian.md │ │ │ │ ├── introduction-to-html5-elements.russian.md │ │ │ │ ├── link-to-external-pages-with-anchor-elements.russian.md │ │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.russian.md │ │ │ │ ├── make-dead-links-using-the-hash-symbol.russian.md │ │ │ │ ├── nest-an-anchor-element-within-a-paragraph.russian.md │ │ │ │ ├── nest-many-elements-within-a-single-div-element.russian.md │ │ │ │ ├── say-hello-to-html-elements.russian.md │ │ │ │ ├── turn-an-image-into-a-link.russian.md │ │ │ │ ├── uncomment-html.russian.md │ │ │ │ └── use-html5-to-require-a-field.russian.md │ │ │ ├── css-flexbox │ │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.russian.md │ │ │ │ ├── align-elements-using-the-align-items-property.russian.md │ │ │ │ ├── align-elements-using-the-justify-content-property.russian.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.russian.md │ │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.russian.md │ │ │ │ ├── use-display-flex-to-position-two-boxes.russian.md │ │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.russian.md │ │ │ │ ├── use-the-align-self-property.russian.md │ │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.russian.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-column.russian.md │ │ │ │ ├── use-the-flex-direction-property-to-make-a-row.russian.md │ │ │ │ ├── use-the-flex-grow-property-to-expand-items.russian.md │ │ │ │ ├── use-the-flex-shorthand-property.russian.md │ │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.russian.md │ │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.russian.md │ │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.russian.md │ │ │ │ └── use-the-order-property-to-rearrange-items.russian.md │ │ │ ├── css-grid │ │ │ │ ├── add-columns-with-grid-template-columns.russian.md │ │ │ │ ├── add-gaps-faster-with-grid-gap.russian.md │ │ │ │ ├── add-rows-with-grid-template-rows.russian.md │ │ │ │ ├── align-all-items-horizontally-using-justify-items.russian.md │ │ │ │ ├── align-all-items-vertically-using-align-items.russian.md │ │ │ │ ├── align-an-item-horizontally-using-justify-self.russian.md │ │ │ │ ├── align-an-item-vertically-using-align-self.russian.md │ │ │ │ ├── create-a-column-gap-using-grid-column-gap.russian.md │ │ │ │ ├── create-a-row-gap-using-grid-row-gap.russian.md │ │ │ │ ├── create-flexible-layouts-using-auto-fill.russian.md │ │ │ │ ├── create-flexible-layouts-using-auto-fit.russian.md │ │ │ │ ├── create-grids-within-grids.russian.md │ │ │ │ ├── create-your-first-css-grid.russian.md │ │ │ │ ├── divide-the-grid-into-an-area-template.russian.md │ │ │ │ ├── limit-item-size-using-the-minmax-function.russian.md │ │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.russian.md │ │ │ │ ├── reduce-repetition-using-the-repeat-function.russian.md │ │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.russian.md │ │ │ │ ├── use-grid-area-without-creating-an-areas-template.russian.md │ │ │ │ ├── use-grid-column-to-control-spacing.russian.md │ │ │ │ ├── use-grid-row-to-control-spacing.russian.md │ │ │ │ └── use-media-queries-to-create-responsive-layouts.russian.md │ │ │ ├── responsive-web-design-principles │ │ │ │ ├── create-a-media-query.russian.md │ │ │ │ ├── make-an-image-responsive.russian.md │ │ │ │ ├── make-typography-responsive.russian.md │ │ │ │ └── use-a-retina-image-for-higher-resolution-displays.russian.md │ │ │ └── responsive-web-design-projects │ │ │ │ ├── build-a-personal-portfolio-webpage.russian.md │ │ │ │ ├── build-a-product-landing-page.russian.md │ │ │ │ ├── build-a-survey-form.russian.md │ │ │ │ ├── build-a-technical-documentation-page.russian.md │ │ │ │ └── build-a-tribute-page.russian.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ │ ├── basic-algorithm-scripting │ │ │ │ ├── boo-who.russian.md │ │ │ │ ├── chunky-monkey.russian.md │ │ │ │ ├── confirm-the-ending.russian.md │ │ │ │ ├── convert-celsius-to-fahrenheit.russian.md │ │ │ │ ├── factorialize-a-number.russian.md │ │ │ │ ├── falsy-bouncer.russian.md │ │ │ │ ├── find-the-longest-word-in-a-string.russian.md │ │ │ │ ├── finders-keepers.russian.md │ │ │ │ ├── mutations.russian.md │ │ │ │ ├── repeat-a-string-repeat-a-string.russian.md │ │ │ │ ├── return-largest-numbers-in-arrays.russian.md │ │ │ │ ├── reverse-a-string.russian.md │ │ │ │ ├── slice-and-splice.russian.md │ │ │ │ ├── title-case-a-sentence.russian.md │ │ │ │ ├── truncate-a-string.russian.md │ │ │ │ └── where-do-i-belong.russian.md │ │ │ ├── basic-data-structures │ │ │ │ ├── access-an-arrays-contents-using-bracket-notation.russian.md │ │ │ │ ├── access-property-names-with-bracket-notation.russian.md │ │ │ │ ├── add-items-to-an-array-with-push-and-unshift.russian.md │ │ │ │ ├── add-items-using-splice.russian.md │ │ │ │ ├── add-key-value-pairs-to-javascript-objects.russian.md │ │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.russian.md │ │ │ │ ├── check-if-an-object-has-a-property.russian.md │ │ │ │ ├── combine-arrays-with-the-spread-operator.russian.md │ │ │ │ ├── copy-an-array-with-the-spread-operator.russian.md │ │ │ │ ├── copy-array-items-using-slice.russian.md │ │ │ │ ├── create-complex-multi-dimensional-arrays.russian.md │ │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.russian.md │ │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.russian.md │ │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.russian.md │ │ │ │ ├── modify-an-array-stored-in-an-object.russian.md │ │ │ │ ├── modify-an-object-nested-within-an-object.russian.md │ │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.russian.md │ │ │ │ ├── remove-items-using-splice.russian.md │ │ │ │ ├── use-an-array-to-store-a-collection-of-data.russian.md │ │ │ │ └── use-the-delete-keyword-to-remove-object-properties.russian.md │ │ │ ├── basic-javascript │ │ │ │ ├── access-array-data-with-indexes.russian.md │ │ │ │ ├── access-multi-dimensional-arrays-with-indexes.russian.md │ │ │ │ ├── accessing-nested-arrays.russian.md │ │ │ │ ├── accessing-nested-objects.russian.md │ │ │ │ ├── accessing-object-properties-with-bracket-notation.russian.md │ │ │ │ ├── accessing-object-properties-with-dot-notation.russian.md │ │ │ │ ├── accessing-object-properties-with-variables.russian.md │ │ │ │ ├── add-new-properties-to-a-javascript-object.russian.md │ │ │ │ ├── add-two-numbers-with-javascript.russian.md │ │ │ │ ├── adding-a-default-option-in-switch-statements.russian.md │ │ │ │ ├── appending-variables-to-strings.russian.md │ │ │ │ ├── assignment-with-a-returned-value.russian.md │ │ │ │ ├── build-javascript-objects.russian.md │ │ │ │ ├── chaining-if-else-statements.russian.md │ │ │ │ ├── comment-your-javascript-code.russian.md │ │ │ │ ├── comparison-with-the-equality-operator.russian.md │ │ │ │ ├── comparison-with-the-greater-than-operator.russian.md │ │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.russian.md │ │ │ │ ├── comparison-with-the-inequality-operator.russian.md │ │ │ │ ├── comparison-with-the-less-than-operator.russian.md │ │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.russian.md │ │ │ │ ├── comparison-with-the-strict-equality-operator.russian.md │ │ │ │ ├── comparison-with-the-strict-inequality-operator.russian.md │ │ │ │ ├── comparisons-with-the-logical-and-operator.russian.md │ │ │ │ ├── comparisons-with-the-logical-or-operator.russian.md │ │ │ │ ├── compound-assignment-with-augmented-addition.russian.md │ │ │ │ ├── compound-assignment-with-augmented-division.russian.md │ │ │ │ ├── compound-assignment-with-augmented-multiplication.russian.md │ │ │ │ ├── compound-assignment-with-augmented-subtraction.russian.md │ │ │ │ ├── concatenating-strings-with-plus-operator.russian.md │ │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.russian.md │ │ │ │ ├── constructing-strings-with-variables.russian.md │ │ │ │ ├── count-backwards-with-a-for-loop.russian.md │ │ │ │ ├── counting-cards.russian.md │ │ │ │ ├── create-decimal-numbers-with-javascript.russian.md │ │ │ │ ├── declare-javascript-variables.russian.md │ │ │ │ ├── declare-string-variables.russian.md │ │ │ │ ├── decrement-a-number-with-javascript.russian.md │ │ │ │ ├── delete-properties-from-a-javascript-object.russian.md │ │ │ │ ├── divide-one-decimal-by-another-with-javascript.russian.md │ │ │ │ ├── divide-one-number-by-another-with-javascript.russian.md │ │ │ │ ├── escape-sequences-in-strings.russian.md │ │ │ │ ├── escaping-literal-quotes-in-strings.russian.md │ │ │ │ ├── find-the-length-of-a-string.russian.md │ │ │ │ ├── finding-a-remainder-in-javascript.russian.md │ │ │ │ ├── generate-random-fractions-with-javascript.russian.md │ │ │ │ ├── generate-random-whole-numbers-with-javascript.russian.md │ │ │ │ ├── generate-random-whole-numbers-within-a-range.russian.md │ │ │ │ ├── global-scope-and-functions.russian.md │ │ │ │ ├── global-vs.-local-scope-in-functions.russian.md │ │ │ │ ├── golf-code.russian.md │ │ │ │ ├── increment-a-number-with-javascript.russian.md │ │ │ │ ├── initializing-variables-with-the-assignment-operator.russian.md │ │ │ │ ├── introducing-else-if-statements.russian.md │ │ │ │ ├── introducing-else-statements.russian.md │ │ │ │ ├── iterate-odd-numbers-with-a-for-loop.russian.md │ │ │ │ ├── iterate-through-an-array-with-a-for-loop.russian.md │ │ │ │ ├── iterate-with-javascript-do...while-loops.russian.md │ │ │ │ ├── iterate-with-javascript-for-loops.russian.md │ │ │ │ ├── iterate-with-javascript-while-loops.russian.md │ │ │ │ ├── local-scope-and-functions.russian.md │ │ │ │ ├── logical-order-in-if-else-statements.russian.md │ │ │ │ ├── manipulate-arrays-with-pop.russian.md │ │ │ │ ├── manipulate-arrays-with-push.russian.md │ │ │ │ ├── manipulate-arrays-with-shift.russian.md │ │ │ │ ├── manipulate-arrays-with-unshift.russian.md │ │ │ │ ├── manipulating-complex-objects.russian.md │ │ │ │ ├── modify-array-data-with-indexes.russian.md │ │ │ │ ├── multiple-identical-options-in-switch-statements.russian.md │ │ │ │ ├── multiply-two-decimals-with-javascript.russian.md │ │ │ │ ├── multiply-two-numbers-with-javascript.russian.md │ │ │ │ ├── nest-one-array-within-another-array.russian.md │ │ │ │ ├── nesting-for-loops.russian.md │ │ │ │ ├── passing-values-to-functions-with-arguments.russian.md │ │ │ │ ├── practice-comparing-different-values.russian.md │ │ │ │ ├── profile-lookup.russian.md │ │ │ │ ├── quoting-strings-with-single-quotes.russian.md │ │ │ │ ├── record-collection.russian.md │ │ │ │ ├── replacing-if-else-chains-with-switch.russian.md │ │ │ │ ├── return-a-value-from-a-function-with-return.russian.md │ │ │ │ ├── return-early-pattern-for-functions.russian.md │ │ │ │ ├── returning-boolean-values-from-functions.russian.md │ │ │ │ ├── selecting-from-many-options-with-switch-statements.russian.md │ │ │ │ ├── shopping-list.russian.md │ │ │ │ ├── stand-in-line.russian.md │ │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.russian.md │ │ │ │ ├── storing-values-with-the-assignment-operator.russian.md │ │ │ │ ├── subtract-one-number-from-another-with-javascript.russian.md │ │ │ │ ├── testing-objects-for-properties.russian.md │ │ │ │ ├── understand-string-immutability.russian.md │ │ │ │ ├── understanding-boolean-values.russian.md │ │ │ │ ├── understanding-case-sensitivity-in-variables.russian.md │ │ │ │ ├── understanding-undefined-value-returned-from-a-function.russian.md │ │ │ │ ├── understanding-uninitialized-variables.russian.md │ │ │ │ ├── updating-object-properties.russian.md │ │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.russian.md │ │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.russian.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.russian.md │ │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.russian.md │ │ │ │ ├── use-conditional-logic-with-if-statements.russian.md │ │ │ │ ├── use-multiple-conditional-ternary-operators.russian.md │ │ │ │ ├── use-the-conditional-ternary-operator.russian.md │ │ │ │ ├── use-the-parseint-function-with-a-radix.russian.md │ │ │ │ ├── use-the-parseint-function.russian.md │ │ │ │ ├── using-objects-for-lookups.russian.md │ │ │ │ ├── word-blanks.russian.md │ │ │ │ └── write-reusable-javascript-with-functions.russian.md │ │ │ ├── debugging │ │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.russian.md │ │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.russian.md │ │ │ │ ├── catch-misspelled-variable-and-function-names.russian.md │ │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.russian.md │ │ │ │ ├── catch-off-by-one-errors-when-using-indexing.russian.md │ │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.russian.md │ │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.russian.md │ │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.russian.md │ │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.russian.md │ │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.russian.md │ │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.russian.md │ │ │ │ └── use-typeof-to-check-the-type-of-a-variable.russian.md │ │ │ ├── es6 │ │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.russian.md │ │ │ │ ├── create-an-export-fallback-with-export-default.russian.md │ │ │ │ ├── create-strings-using-template-literals.russian.md │ │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.russian.md │ │ │ │ ├── explore-differences-between-the-var-and-let-keywords.russian.md │ │ │ │ ├── import-a-default-export.russian.md │ │ │ │ ├── mutate-an-array-declared-with-const.russian.md │ │ │ │ ├── prevent-object-mutation.russian.md │ │ │ │ ├── set-default-parameters-for-your-functions.russian.md │ │ │ │ ├── understand-the-differences-between-import-and-require.russian.md │ │ │ │ ├── use--to-import-everything-from-a-file.russian.md │ │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.russian.md │ │ │ │ ├── use-class-syntax-to-define-a-constructor-function.russian.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.russian.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.russian.md │ │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.russian.md │ │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.russian.md │ │ │ │ ├── use-destructuring-assignment-with-the-rest-operator-to-reassign-array-elements.russian.md │ │ │ │ ├── use-export-to-reuse-a-code-block.russian.md │ │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.russian.md │ │ │ │ ├── use-the-rest-operator-with-function-parameters.russian.md │ │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.russian.md │ │ │ │ ├── write-arrow-functions-with-parameters.russian.md │ │ │ │ ├── write-concise-declarative-functions-with-es6.russian.md │ │ │ │ ├── write-concise-object-literal-declarations-using-simple-fields.russian.md │ │ │ │ └── write-higher-order-arrow-functions.russian.md │ │ │ ├── functional-programming │ │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.russian.md │ │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.russian.md │ │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.russian.md │ │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.russian.md │ │ │ │ ├── combine-two-arrays-using-the-concat-method.russian.md │ │ │ │ ├── implement-map-on-a-prototype.russian.md │ │ │ │ ├── implement-the-filter-method-on-a-prototype.russian.md │ │ │ │ ├── introduction-to-currying-and-partial-application.russian.md │ │ │ │ ├── learn-about-functional-programming.russian.md │ │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.russian.md │ │ │ │ ├── refactor-global-variables-out-of-functions.russian.md │ │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.russian.md │ │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.russian.md │ │ │ │ ├── return-part-of-an-array-using-the-slice-method.russian.md │ │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.russian.md │ │ │ │ ├── split-a-string-into-an-array-using-the-split-method.russian.md │ │ │ │ ├── understand-functional-programming-terminology.russian.md │ │ │ │ ├── understand-the-hazards-of-using-imperative-code.russian.md │ │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.russian.md │ │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.russian.md │ │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.russian.md │ │ │ │ ├── use-the-reduce-method-to-analyze-data.russian.md │ │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.russian.md │ │ │ ├── intermediate-algorithm-scripting │ │ │ │ ├── arguments-optional.russian.md │ │ │ │ ├── binary-agents.russian.md │ │ │ │ ├── convert-html-entities.russian.md │ │ │ │ ├── diff-two-arrays.russian.md │ │ │ │ ├── dna-pairing.russian.md │ │ │ │ ├── drop-it.russian.md │ │ │ │ ├── everything-be-true.russian.md │ │ │ │ ├── make-a-person.russian.md │ │ │ │ ├── map-the-debris.russian.md │ │ │ │ ├── missing-letters.russian.md │ │ │ │ ├── pig-latin.russian.md │ │ │ │ ├── search-and-replace.russian.md │ │ │ │ ├── seek-and-destroy.russian.md │ │ │ │ ├── smallest-common-multiple.russian.md │ │ │ │ ├── sorted-union.russian.md │ │ │ │ ├── spinal-tap-case.russian.md │ │ │ │ ├── steamroller.russian.md │ │ │ │ ├── sum-all-numbers-in-a-range.russian.md │ │ │ │ ├── sum-all-odd-fibonacci-numbers.russian.md │ │ │ │ ├── sum-all-primes.russian.md │ │ │ │ └── wherefore-art-thou.russian.md │ │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ │ ├── caesars-cipher.russian.md │ │ │ │ ├── cash-register.russian.md │ │ │ │ ├── palindrome-checker.russian.md │ │ │ │ ├── roman-numeral-converter.russian.md │ │ │ │ └── telephone-number-validator.russian.md │ │ │ ├── object-oriented-programming │ │ │ │ ├── add-methods-after-inheritance.russian.md │ │ │ │ ├── change-the-prototype-to-a-new-object.russian.md │ │ │ │ ├── create-a-basic-javascript-object.russian.md │ │ │ │ ├── create-a-method-on-an-object.russian.md │ │ │ │ ├── define-a-constructor-function.russian.md │ │ │ │ ├── extend-constructors-to-receive-arguments.russian.md │ │ │ │ ├── inherit-behaviors-from-a-supertype.russian.md │ │ │ │ ├── iterate-over-all-properties.russian.md │ │ │ │ ├── make-code-more-reusable-with-the-this-keyword.russian.md │ │ │ │ ├── override-inherited-methods.russian.md │ │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.russian.md │ │ │ │ ├── reset-an-inherited-constructor-property.russian.md │ │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.russian.md │ │ │ │ ├── understand-own-properties.russian.md │ │ │ │ ├── understand-the-constructor-property.russian.md │ │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.russian.md │ │ │ │ ├── understand-the-prototype-chain.russian.md │ │ │ │ ├── understand-where-an-objects-prototype-comes-from.russian.md │ │ │ │ ├── use-a-constructor-to-create-objects.russian.md │ │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.russian.md │ │ │ │ ├── use-an-iife-to-create-a-module.russian.md │ │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.russian.md │ │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.russian.md │ │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.russian.md │ │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.russian.md │ │ │ │ └── verify-an-objects-constructor-with-instanceof.russian.md │ │ │ └── regular-expressions │ │ │ │ ├── check-for-all-or-none.russian.md │ │ │ │ ├── extract-matches.russian.md │ │ │ │ ├── find-characters-with-lazy-matching.russian.md │ │ │ │ ├── find-more-than-the-first-match.russian.md │ │ │ │ ├── find-one-or-more-criminals-in-a-hunt.russian.md │ │ │ │ ├── ignore-case-while-matching.russian.md │ │ │ │ ├── match-a-literal-string-with-different-possibilities.russian.md │ │ │ │ ├── match-all-letters-and-numbers.russian.md │ │ │ │ ├── match-all-non-numbers.russian.md │ │ │ │ ├── match-all-numbers.russian.md │ │ │ │ ├── match-anything-with-wildcard-period.russian.md │ │ │ │ ├── match-beginning-string-patterns.russian.md │ │ │ │ ├── match-characters-that-occur-one-or-more-times.russian.md │ │ │ │ ├── match-characters-that-occur-zero-or-more-times.russian.md │ │ │ │ ├── match-ending-string-patterns.russian.md │ │ │ │ ├── match-everything-but-letters-and-numbers.russian.md │ │ │ │ ├── match-letters-of-the-alphabet.russian.md │ │ │ │ ├── match-literal-strings.russian.md │ │ │ │ ├── match-non-whitespace-characters.russian.md │ │ │ │ ├── match-numbers-and-letters-of-the-alphabet.russian.md │ │ │ │ ├── match-single-character-with-multiple-possibilities.russian.md │ │ │ │ ├── match-single-characters-not-specified.russian.md │ │ │ │ ├── match-whitespace.russian.md │ │ │ │ ├── positive-and-negative-lookahead.russian.md │ │ │ │ ├── remove-whitespace-from-start-and-end.russian.md │ │ │ │ ├── restrict-possible-usernames.russian.md │ │ │ │ ├── reuse-patterns-using-capture-groups.russian.md │ │ │ │ ├── specify-exact-number-of-matches.russian.md │ │ │ │ ├── specify-only-the-lower-number-of-matches.russian.md │ │ │ │ ├── specify-upper-and-lower-number-of-matches.russian.md │ │ │ │ ├── use-capture-groups-to-search-and-replace.russian.md │ │ │ │ └── using-the-test-method.russian.md │ │ ├── 03-front-end-libraries │ │ │ ├── bootstrap │ │ │ │ ├── add-elements-within-your-bootstrap-wells.russian.md │ │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.russian.md │ │ │ │ ├── add-font-awesome-icons-to-our-buttons.russian.md │ │ │ │ ├── add-id-attributes-to-bootstrap-elements.russian.md │ │ │ │ ├── apply-the-default-bootstrap-button-style.russian.md │ │ │ │ ├── call-out-optional-actions-with-btn-info.russian.md │ │ │ │ ├── center-text-with-bootstrap.russian.md │ │ │ │ ├── create-a-block-element-bootstrap-button.russian.md │ │ │ │ ├── create-a-bootstrap-button.russian.md │ │ │ │ ├── create-a-bootstrap-headline.russian.md │ │ │ │ ├── create-a-bootstrap-row.russian.md │ │ │ │ ├── create-a-class-to-target-with-jquery-selectors.russian.md │ │ │ │ ├── create-a-custom-heading.russian.md │ │ │ │ ├── create-bootstrap-wells.russian.md │ │ │ │ ├── ditch-custom-css-for-bootstrap.russian.md │ │ │ │ ├── give-each-element-a-unique-id.russian.md │ │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.russian.md │ │ │ │ ├── label-bootstrap-buttons.russian.md │ │ │ │ ├── label-bootstrap-wells.russian.md │ │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.russian.md │ │ │ │ ├── make-images-mobile-responsive.russian.md │ │ │ │ ├── responsively-style-checkboxes.russian.md │ │ │ │ ├── responsively-style-radio-buttons.russian.md │ │ │ │ ├── split-your-bootstrap-row.russian.md │ │ │ │ ├── style-text-inputs-as-form-controls.russian.md │ │ │ │ ├── taste-the-bootstrap-button-color-rainbow.russian.md │ │ │ │ ├── use-a-span-to-target-inline-elements.russian.md │ │ │ │ ├── use-comments-to-clarify-code.russian.md │ │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.russian.md │ │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.russian.md │ │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.russian.md │ │ │ ├── front-end-libraries-projects │ │ │ │ ├── build-a-drum-machine.russian.md │ │ │ │ ├── build-a-javascript-calculator.russian.md │ │ │ │ ├── build-a-markdown-previewer.russian.md │ │ │ │ ├── build-a-pomodoro-clock.russian.md │ │ │ │ └── build-a-random-quote-machine.russian.md │ │ │ ├── jquery │ │ │ │ ├── change-text-inside-an-element-using-jquery.russian.md │ │ │ │ ├── change-the-css-of-an-element-using-jquery.russian.md │ │ │ │ ├── clone-an-element-using-jquery.russian.md │ │ │ │ ├── delete-your-jquery-functions.russian.md │ │ │ │ ├── disable-an-element-using-jquery.russian.md │ │ │ │ ├── learn-how-script-tags-and-document-ready-work.russian.md │ │ │ │ ├── remove-an-element-using-jquery.russian.md │ │ │ │ ├── remove-classes-from-an-element-with-jquery.russian.md │ │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.russian.md │ │ │ │ ├── target-elements-by-class-using-jquery.russian.md │ │ │ │ ├── target-elements-by-id-using-jquery.russian.md │ │ │ │ ├── target-even-elements-using-jquery.russian.md │ │ │ │ ├── target-html-elements-with-selectors-using-jquery.russian.md │ │ │ │ ├── target-the-children-of-an-element-using-jquery.russian.md │ │ │ │ ├── target-the-parent-of-an-element-using-jquery.russian.md │ │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.russian.md │ │ │ │ ├── use-appendto-to-move-elements-with-jquery.russian.md │ │ │ │ └── use-jquery-to-modify-the-entire-page.russian.md │ │ │ ├── react-and-redux │ │ │ │ ├── connect-redux-to-react.russian.md │ │ │ │ ├── connect-redux-to-the-messages-app.russian.md │ │ │ │ ├── extract-local-state-into-redux.russian.md │ │ │ │ ├── extract-state-logic-to-redux.russian.md │ │ │ │ ├── getting-started-with-react-redux.russian.md │ │ │ │ ├── manage-state-locally-first.russian.md │ │ │ │ ├── map-dispatch-to-props.russian.md │ │ │ │ ├── map-state-to-props.russian.md │ │ │ │ ├── moving-forward-from-here.russian.md │ │ │ │ └── use-provider-to-connect-redux-to-react.russian.md │ │ │ ├── react │ │ │ │ ├── access-props-using-this.props.russian.md │ │ │ │ ├── add-comments-in-jsx.russian.md │ │ │ │ ├── add-event-listeners.russian.md │ │ │ │ ├── add-inline-styles-in-react.russian.md │ │ │ │ ├── bind-this-to-a-class-method.russian.md │ │ │ │ ├── change-inline-css-conditionally-based-on-component-state.russian.md │ │ │ │ ├── compose-react-components.russian.md │ │ │ │ ├── create-a-complex-jsx-element.russian.md │ │ │ │ ├── create-a-component-with-composition.russian.md │ │ │ │ ├── create-a-controlled-form.russian.md │ │ │ │ ├── create-a-controlled-input.russian.md │ │ │ │ ├── create-a-react-component.russian.md │ │ │ │ ├── create-a-simple-jsx-element.russian.md │ │ │ │ ├── create-a-stateful-component.russian.md │ │ │ │ ├── create-a-stateless-functional-component.russian.md │ │ │ │ ├── define-an-html-class-in-jsx.russian.md │ │ │ │ ├── give-sibling-elements-a-unique-key-attribute.russian.md │ │ │ │ ├── introducing-inline-styles.russian.md │ │ │ │ ├── learn-about-self-closing-jsx-tags.russian.md │ │ │ │ ├── manage-updates-with-lifecycle-methods.russian.md │ │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.russian.md │ │ │ │ ├── override-default-props.russian.md │ │ │ │ ├── pass-a-callback-as-props.russian.md │ │ │ │ ├── pass-an-array-as-props.russian.md │ │ │ │ ├── pass-props-to-a-stateless-functional-component.russian.md │ │ │ │ ├── pass-state-as-props-to-child-components.russian.md │ │ │ │ ├── render-a-class-component-to-the-dom.russian.md │ │ │ │ ├── render-conditionally-from-props.russian.md │ │ │ │ ├── render-html-elements-to-the-dom.russian.md │ │ │ │ ├── render-react-on-the-server-with-rendertostring.russian.md │ │ │ │ ├── render-state-in-the-user-interface-another-way.russian.md │ │ │ │ ├── render-state-in-the-user-interface.russian.md │ │ │ │ ├── render-with-an-if-else-condition.russian.md │ │ │ │ ├── review-using-props-with-stateless-functional-components.russian.md │ │ │ │ ├── set-state-with-this.setstate.russian.md │ │ │ │ ├── use--for-a-more-concise-conditional.russian.md │ │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.russian.md │ │ │ │ ├── use-advanced-javascript-in-react-render-method.russian.md │ │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.russian.md │ │ │ │ ├── use-array.map-to-dynamically-render-elements.russian.md │ │ │ │ ├── use-default-props.russian.md │ │ │ │ ├── use-proptypes-to-define-the-props-you-expect.russian.md │ │ │ │ ├── use-react-to-render-nested-components.russian.md │ │ │ │ ├── use-state-to-toggle-an-element.russian.md │ │ │ │ ├── use-the-lifecycle-method-componentdidmount.russian.md │ │ │ │ ├── use-the-lifecycle-method-componentwillmount.russian.md │ │ │ │ ├── write-a-react-component-from-scratch.russian.md │ │ │ │ └── write-a-simple-counter.russian.md │ │ │ ├── redux │ │ │ │ ├── combine-multiple-reducers.russian.md │ │ │ │ ├── copy-an-object-with-object.assign.russian.md │ │ │ │ ├── create-a-redux-store.russian.md │ │ │ │ ├── define-a-redux-action.russian.md │ │ │ │ ├── define-an-action-creator.russian.md │ │ │ │ ├── dispatch-an-action-event.russian.md │ │ │ │ ├── get-state-from-the-redux-store.russian.md │ │ │ │ ├── handle-an-action-in-the-store.russian.md │ │ │ │ ├── never-mutate-state.russian.md │ │ │ │ ├── register-a-store-listener.russian.md │ │ │ │ ├── remove-an-item-from-an-array.russian.md │ │ │ │ ├── send-action-data-to-the-store.russian.md │ │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.russian.md │ │ │ │ ├── use-const-for-action-types.russian.md │ │ │ │ ├── use-middleware-to-handle-asynchronous-actions.russian.md │ │ │ │ ├── use-the-spread-operator-on-arrays.russian.md │ │ │ │ └── write-a-counter-with-redux.russian.md │ │ │ └── sass │ │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.russian.md │ │ │ │ ├── create-reusable-css-with-mixins.russian.md │ │ │ │ ├── extend-one-set-of-css-styles-to-another-element.russian.md │ │ │ │ ├── nest-css-with-sass.russian.md │ │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.russian.md │ │ │ │ ├── store-data-with-sass-variables.russian.md │ │ │ │ ├── use-each-to-map-over-items-in-a-list.russian.md │ │ │ │ ├── use-for-to-create-a-sass-loop.russian.md │ │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.russian.md │ │ ├── 04-data-visualization │ │ │ ├── data-visualization-projects │ │ │ │ ├── visualize-data-with-a-bar-chart.russian.md │ │ │ │ ├── visualize-data-with-a-choropleth-map.russian.md │ │ │ │ ├── visualize-data-with-a-heat-map.russian.md │ │ │ │ ├── visualize-data-with-a-scatterplot-graph.russian.md │ │ │ │ └── visualize-data-with-a-treemap-diagram.russian.md │ │ │ ├── data-visualization-with-d3 │ │ │ │ ├── add-a-hover-effect-to-a-d3-element.russian.md │ │ │ │ ├── add-a-tooltip-to-a-d3-element.russian.md │ │ │ │ ├── add-attributes-to-the-circle-elements.russian.md │ │ │ │ ├── add-axes-to-a-visualization.russian.md │ │ │ │ ├── add-classes-with-d3.russian.md │ │ │ │ ├── add-document-elements-with-d3.russian.md │ │ │ │ ├── add-inline-styling-to-elements.russian.md │ │ │ │ ├── add-labels-to-d3-elements.russian.md │ │ │ │ ├── add-labels-to-scatter-plot-circles.russian.md │ │ │ │ ├── change-styles-based-on-data.russian.md │ │ │ │ ├── change-the-color-of-an-svg-element.russian.md │ │ │ │ ├── change-the-presentation-of-a-bar-chart.russian.md │ │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.russian.md │ │ │ │ ├── create-a-linear-scale-with-d3.russian.md │ │ │ │ ├── create-a-scatterplot-with-svg-circles.russian.md │ │ │ │ ├── display-shapes-with-svg.russian.md │ │ │ │ ├── dynamically-change-the-height-of-each-bar.russian.md │ │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.russian.md │ │ │ │ ├── invert-svg-elements.russian.md │ │ │ │ ├── learn-about-svg-in-d3.russian.md │ │ │ │ ├── select-a-group-of-elements-with-d3.russian.md │ │ │ │ ├── set-a-domain-and-a-range-on-a-scale.russian.md │ │ │ │ ├── style-d3-labels.russian.md │ │ │ │ ├── update-the-height-of-an-element-dynamically.russian.md │ │ │ │ ├── use-a-pre-defined-scale-to-place-elements.russian.md │ │ │ │ ├── use-dynamic-scales.russian.md │ │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.russian.md │ │ │ │ ├── work-with-data-in-d3.russian.md │ │ │ │ └── work-with-dynamic-data-in-d3.russian.md │ │ │ └── json-apis-and-ajax │ │ │ │ ├── access-the-json-data-from-an-api.russian.md │ │ │ │ ├── change-text-with-click-events.russian.md │ │ │ │ ├── convert-json-data-to-html.russian.md │ │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.russian.md │ │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.russian.md │ │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.russian.md │ │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.russian.md │ │ │ │ ├── pre-filter-json-to-get-the-data-you-need.russian.md │ │ │ │ └── render-images-from-data-sources.russian.md │ │ ├── 05-apis-and-microservices │ │ │ ├── apis-and-microservices-projects │ │ │ │ ├── exercise-tracker.russian.md │ │ │ │ ├── file-metadata-microservice.russian.md │ │ │ │ ├── request-header-parser-microservice.russian.md │ │ │ │ ├── timestamp-microservice.russian.md │ │ │ │ └── url-shortener-microservice.russian.md │ │ │ ├── basic-node-and-express │ │ │ │ ├── chain-middleware-to-create-a-time-server.russian.md │ │ │ │ ├── get-data-from-post-requests.russian.md │ │ │ │ ├── get-query-parameter-input-from-the-client.russian.md │ │ │ │ ├── get-route-parameter-input-from-the-client.russian.md │ │ │ │ ├── implement-a-root-level-request-logger-middleware.russian.md │ │ │ │ ├── meet-the-node-console.russian.md │ │ │ │ ├── serve-an-html-file.russian.md │ │ │ │ ├── serve-json-on-a-specific-route.russian.md │ │ │ │ ├── serve-static-assets.russian.md │ │ │ │ ├── start-a-working-express-server.ussian.md │ │ │ │ ├── use-body-parser-to-parse-post-requests.russian.md │ │ │ │ └── use-the-.env-file.russian.md │ │ │ ├── managing-packages-with-npm │ │ │ │ ├── add-a-description-to-your-package.json.russian.md │ │ │ │ ├── add-a-license-to-your-package.json.russian.md │ │ │ │ ├── add-a-version-to-your-package.json.russian.md │ │ │ │ ├── add-keywords-to-your-package.json.russian.md │ │ │ │ ├── expand-your-project-with-external-packages-from-npm.russian.md │ │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.russian.md │ │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.russian.md │ │ │ │ ├── remove-a-package-from-your-dependencies.russian.md │ │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.russian.md │ │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.russian.md │ │ │ └── mongodb-and-mongoose │ │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.russian.md │ │ │ │ ├── create-a-model.russian.md │ │ │ │ ├── create-and-save-a-record-of-a-model.russian.md │ │ │ │ ├── create-many-records-with-model.create.russian.md │ │ │ │ ├── delete-many-documents-with-model.remove.russian.md │ │ │ │ ├── delete-one-document-using-model.findbyidandremove.russian.md │ │ │ │ ├── install-and-set-up-mongoose.russian.md │ │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.russian.md │ │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.russian.md │ │ │ │ ├── use-model.find-to-search-your-data.russian.md │ │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.russian.md │ │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.russian.md │ │ ├── 06-information-security-and-quality-assurance │ │ │ ├── advanced-node-and-express │ │ │ │ ├── announce-new-users.russian.md │ │ │ │ ├── authentication-strategies.russian.md │ │ │ │ ├── authentication-with-socket.io.russian.md │ │ │ │ ├── clean-up-your-project-with-modules.russian.md │ │ │ │ ├── communicate-by-emitting.russian.md │ │ │ │ ├── create-new-middleware.russian.md │ │ │ │ ├── handle-a-disconnect.russian.md │ │ │ │ ├── hashing-your-passwords.russian.md │ │ │ │ ├── how-to-put-a-profile-together.russian.md │ │ │ │ ├── how-to-use-passport-strategies.russian.md │ │ │ │ ├── implement-the-serialization-of-a-passport-user.russian.md │ │ │ │ ├── implementation-of-social-authentication-ii.russian.md │ │ │ │ ├── implementation-of-social-authentication-iii.russian.md │ │ │ │ ├── implementation-of-social-authentication.russian.md │ │ │ │ ├── logging-a-user-out.russian.md │ │ │ │ ├── registration-of-new-users.russian.md │ │ │ │ ├── send-and-display-chat-messages.russian.md │ │ │ │ ├── serialization-of-a-user-object.russian.md │ │ │ │ ├── set-up-a-template-engine.russian.md │ │ │ │ ├── set-up-passport.russian.md │ │ │ │ ├── set-up-the-environment.russian.md │ │ │ │ └── use-a-template-engines-powers.russian.md │ │ │ ├── information-security-and-quality-assurance-projects │ │ │ │ ├── anonymous-message-board.russian.md │ │ │ │ ├── issue-tracker.russian.md │ │ │ │ ├── metric-imperial-converter.russian.md │ │ │ │ ├── personal-library.russian.md │ │ │ │ └── stock-price-checker.russian.md │ │ │ ├── information-security-with-helmetjs │ │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.russian.md │ │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.russian.md │ │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.russian.md │ │ │ │ ├── disable-client-side-caching-with-helmet.nocache.russian.md │ │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.russian.md │ │ │ │ ├── hash-and-compare-passwords-asynchronously.russian.md │ │ │ │ ├── hash-and-compare-passwords-synchronously.russian.md │ │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.russian.md │ │ │ │ ├── install-and-require-helmet.russian.md │ │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.russian.md │ │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.russian.md │ │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.russian.md │ │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.russian.md │ │ │ │ └── understand-bcrypt-hashes.russian.md │ │ │ └── quality-assurance-and-testing-with-chai │ │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.russian.md │ │ │ │ ├── compare-the-properties-of-two-elements.russian.md │ │ │ │ ├── learn-how-javascript-assertions-work.russian.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.russian.md │ │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.russian.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.russian.md │ │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.russian.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.russian.md │ │ │ │ ├── run-functional-tests-using-a-headless-browser.russian.md │ │ │ │ ├── test-for-truthiness.russian.md │ │ │ │ ├── test-if-a-string-contains-a-substring.russian.md │ │ │ │ ├── test-if-a-value-falls-within-a-specific-range.russian.md │ │ │ │ ├── test-if-a-value-is-a-string.russian.md │ │ │ │ ├── test-if-a-value-is-an-array.russian.md │ │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.russian.md │ │ │ │ ├── test-if-a-variable-or-function-is-defined.russian.md │ │ │ │ ├── test-if-an-array-contains-an-item.russian.md │ │ │ │ ├── test-if-an-object-has-a-property.russian.md │ │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.russian.md │ │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.russian.md │ │ │ │ ├── use-assert.isok-and-assert.isnotok.russian.md │ │ │ │ ├── use-regular-expressions-to-test-a-string.russian.md │ │ │ │ ├── use-the-double-equals-to-assert-equality.russian.md │ │ │ │ └── use-the-triple-equals-to-assert-strict-equality.russian.md │ │ ├── 08-coding-interview-prep │ │ │ ├── algorithms │ │ │ │ ├── find-the-symmetric-difference.russian.md │ │ │ │ ├── implement-bubble-sort.russian.md │ │ │ │ ├── implement-insertion-sort.russian.md │ │ │ │ ├── implement-merge-sort.russian.md │ │ │ │ ├── implement-quick-sort.russian.md │ │ │ │ ├── implement-selection-sort.russian.md │ │ │ │ ├── inventory-update.russian.md │ │ │ │ ├── no-repeats-please.russian.md │ │ │ │ └── pairwise.russian.md │ │ │ ├── data-structures │ │ │ │ ├── add-a-new-element-to-a-binary-search-tree.russian.md │ │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.russian.md │ │ │ │ ├── adjacency-list.russian.md │ │ │ │ ├── adjacency-matrix.russian.md │ │ │ │ ├── breadth-first-search.russian.md │ │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.russian.md │ │ │ │ ├── create-a-circular-queue.russian.md │ │ │ │ ├── create-a-doubly-linked-list.russian.md │ │ │ │ ├── create-a-hash-table.russian.md │ │ │ │ ├── create-a-linked-list-class.russian.md │ │ │ │ ├── create-a-map-data-structure.russian.md │ │ │ │ ├── create-a-priority-queue-class.russian.md │ │ │ │ ├── create-a-queue-class.russian.md │ │ │ │ ├── create-a-set-class.russian.md │ │ │ │ ├── create-a-stack-class.russian.md │ │ │ │ ├── create-a-trie-search-tree.russian.md │ │ │ │ ├── create-an-es6-javascript-map.russian.md │ │ │ │ ├── create-and-add-to-sets-in-es6.russian.md │ │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.russian.md │ │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.russian.md │ │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.russian.md │ │ │ │ ├── depth-first-search.russian.md │ │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.russian.md │ │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.russian.md │ │ │ │ ├── implement-heap-sort-with-a-min-heap.russian.md │ │ │ │ ├── incidence-matrix.russian.md │ │ │ │ ├── insert-an-element-into-a-max-heap.russian.md │ │ │ │ ├── invert-a-binary-tree.russian.md │ │ │ │ ├── learn-how-a-stack-works.russian.md │ │ │ │ ├── perform-a-difference-on-two-sets-of-data.russian.md │ │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.russian.md │ │ │ │ ├── perform-a-union-on-two-sets.russian.md │ │ │ │ ├── perform-an-intersection-on-two-sets-of-data.russian.md │ │ │ │ ├── remove-an-element-from-a-max-heap.russian.md │ │ │ │ ├── remove-elements-from-a-linked-list-by-index.russian.md │ │ │ │ ├── remove-elements-from-a-linked-list.russian.md │ │ │ │ ├── remove-from-a-set.russian.md │ │ │ │ ├── remove-items-from-a-set-in-es6.russian.md │ │ │ │ ├── reverse-a-doubly-linked-list.russian.md │ │ │ │ ├── search-within-a-linked-list.russian.md │ │ │ │ ├── size-of-the-set.russian.md │ │ │ │ ├── typed-arrays.russian.md │ │ │ │ ├── use-.has-and-.size-on-an-es6-set.russian.md │ │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.russian.md │ │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.russian.md │ │ │ │ ├── use-spread-and-notes-for-es5-set-integration.russian.md │ │ │ │ └── work-with-nodes-in-a-linked-list.russian.md │ │ │ ├── project-euler │ │ │ │ ├── problem-1-multiples-of-3-and-5.russian.md │ │ │ │ ├── problem-10-summation-of-primes.russian.md │ │ │ │ ├── problem-100-arranged-probability.russian.md │ │ │ │ ├── problem-101-optimum-polynomial.russian.md │ │ │ │ ├── problem-102-triangle-containment.russian.md │ │ │ │ ├── problem-103-special-subset-sums-optimum.russian.md │ │ │ │ ├── problem-104-pandigital-fibonacci-ends.russian.md │ │ │ │ ├── problem-105-special-subset-sums-testing.russian.md │ │ │ │ ├── problem-106-special-subset-sums-meta-testing.russian.md │ │ │ │ ├── problem-107-minimal-network.russian.md │ │ │ │ ├── problem-108-diophantine-reciprocals-i.russian.md │ │ │ │ ├── problem-109-darts.russian.md │ │ │ │ ├── problem-11-largest-product-in-a-grid.russian.md │ │ │ │ ├── problem-110-diophantine-reciprocals-ii.russian.md │ │ │ │ ├── problem-111-primes-with-runs.russian.md │ │ │ │ ├── problem-112-bouncy-numbers.russian.md │ │ │ │ ├── problem-113-non-bouncy-numbers.russian.md │ │ │ │ ├── problem-114-counting-block-combinations-i.russian.md │ │ │ │ ├── problem-115-counting-block-combinations-ii.russian.md │ │ │ │ ├── problem-116-red-green-or-blue-tiles.russian.md │ │ │ │ ├── problem-117-red-green-and-blue-tiles.russian.md │ │ │ │ ├── problem-118-pandigital-prime-sets.russian.md │ │ │ │ ├── problem-119-digit-power-sum.russian.md │ │ │ │ ├── problem-12-highly-divisible-triangular-number.russian.md │ │ │ │ ├── problem-120-square-remainders.russian.md │ │ │ │ ├── problem-121-disc-game-prize-fund.russian.md │ │ │ │ ├── problem-122-efficient-exponentiation.russian.md │ │ │ │ ├── problem-123-prime-square-remainders.russian.md │ │ │ │ ├── problem-124-ordered-radicals.russian.md │ │ │ │ ├── problem-125-palindromic-sums.russian.md │ │ │ │ ├── problem-126-cuboid-layers.russian.md │ │ │ │ ├── problem-127-abc-hits.russian.md │ │ │ │ ├── problem-128-hexagonal-tile-differences.russian.md │ │ │ │ ├── problem-129-repunit-divisibility.russian.md │ │ │ │ ├── problem-13-large-sum.russian.md │ │ │ │ ├── problem-130-composites-with-prime-repunit-property.russian.md │ │ │ │ ├── problem-131-prime-cube-partnership.russian.md │ │ │ │ ├── problem-132-large-repunit-factors.russian.md │ │ │ │ ├── problem-133-repunit-nonfactors.russian.md │ │ │ │ ├── problem-134-prime-pair-connection.russian.md │ │ │ │ ├── problem-135-same-differences.russian.md │ │ │ │ ├── problem-136-singleton-difference.russian.md │ │ │ │ ├── problem-137-fibonacci-golden-nuggets.russian.md │ │ │ │ ├── problem-138-special-isosceles-triangles.russian.md │ │ │ │ ├── problem-139-pythagorean-tiles.russian.md │ │ │ │ ├── problem-14-longest-collatz-sequence.russian.md │ │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.russian.md │ │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.russian.md │ │ │ │ ├── problem-142-perfect-square-collection.russian.md │ │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.russian.md │ │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.russian.md │ │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.russian.md │ │ │ │ ├── problem-146-investigating-a-prime-pattern.russian.md │ │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.russian.md │ │ │ │ ├── problem-148-exploring-pascals-triangle.russian.md │ │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.russian.md │ │ │ │ ├── problem-15-lattice-paths.russian.md │ │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.russian.md │ │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.russian.md │ │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.russian.md │ │ │ │ ├── problem-153-investigating-gaussian-integers.russian.md │ │ │ │ ├── problem-154-exploring-pascals-pyramid.russian.md │ │ │ │ ├── problem-155-counting-capacitor-circuits.russian.md │ │ │ │ ├── problem-156-counting-digits.russian.md │ │ │ │ ├── problem-157-solving-the-diophantine-equation.russian.md │ │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.russian.md │ │ │ │ ├── problem-159-digital-root-sums-of-factorisations.russian.md │ │ │ │ ├── problem-16-power-digit-sum.russian.md │ │ │ │ ├── problem-160-factorial-trailing-digits.russian.md │ │ │ │ ├── problem-161-triominoes.russian.md │ │ │ │ ├── problem-162-hexadecimal-numbers.russian.md │ │ │ │ ├── problem-163-cross-hatched-triangles.russian.md │ │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.russian.md │ │ │ │ ├── problem-165-intersections.russian.md │ │ │ │ ├── problem-166-criss-cross.russian.md │ │ │ │ ├── problem-167-investigating-ulam-sequences.russian.md │ │ │ │ ├── problem-168-number-rotations.russian.md │ │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.russian.md │ │ │ │ ├── problem-17-number-letter-counts.russian.md │ │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.russian.md │ │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.russian.md │ │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.russian.md │ │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.russian.md │ │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.russian.md │ │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.russian.md │ │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.russian.md │ │ │ │ ├── problem-177-integer-angled-quadrilaterals.russian.md │ │ │ │ ├── problem-178-step-numbers.russian.md │ │ │ │ ├── problem-179-consecutive-positive-divisors.russian.md │ │ │ │ ├── problem-18-maximum-path-sum-i.russian.md │ │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.russian.md │ │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.russian.md │ │ │ │ ├── problem-182-rsa-encryption.russian.md │ │ │ │ ├── problem-183-maximum-product-of-parts.russian.md │ │ │ │ ├── problem-184-triangles-containing-the-origin.russian.md │ │ │ │ ├── problem-185-number-mind.russian.md │ │ │ │ ├── problem-186-connectedness-of-a-network.russian.md │ │ │ │ ├── problem-187-semiprimes.russian.md │ │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.russian.md │ │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.russian.md │ │ │ │ ├── problem-19-counting-sundays.russian.md │ │ │ │ ├── problem-190-maximising-a-weighted-product.russian.md │ │ │ │ ├── problem-191-prize-strings.russian.md │ │ │ │ ├── problem-192-best-approximations.russian.md │ │ │ │ ├── problem-193-squarefree-numbers.russian.md │ │ │ │ ├── problem-194-coloured-configurations.russian.md │ │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.russian.md │ │ │ │ ├── problem-196-prime-triplets.russian.md │ │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.russian.md │ │ │ │ ├── problem-198-ambiguous-numbers.russian.md │ │ │ │ ├── problem-199-iterative-circle-packing.russian.md │ │ │ │ ├── problem-2-even-fibonacci-numbers.russian.md │ │ │ │ ├── problem-20-factorial-digit-sum.russian.md │ │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.russian.md │ │ │ │ ├── problem-201-subsets-with-a-unique-sum.russian.md │ │ │ │ ├── problem-202-laserbeam.russian.md │ │ │ │ ├── problem-203-squarefree-binomial-coefficients.russian.md │ │ │ │ ├── problem-204-generalised-hamming-numbers.russian.md │ │ │ │ ├── problem-205-dice-game.russian.md │ │ │ │ ├── problem-206-concealed-square.russian.md │ │ │ │ ├── problem-207-integer-partition-equations.russian.md │ │ │ │ ├── problem-208-robot-walks.russian.md │ │ │ │ ├── problem-209-circular-logic.russian.md │ │ │ │ ├── problem-21-amicable-numbers.russian.md │ │ │ │ ├── problem-210-obtuse-angled-triangles.russian.md │ │ │ │ ├── problem-211-divisor-square-sum.russian.md │ │ │ │ ├── problem-212-combined-volume-of-cuboids.russian.md │ │ │ │ ├── problem-213-flea-circus.russian.md │ │ │ │ ├── problem-214-totient-chains.russian.md │ │ │ │ ├── problem-215-crack-free-walls.russian.md │ │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.russian.md │ │ │ │ ├── problem-217-balanced-numbers.russian.md │ │ │ │ ├── problem-218-perfect-right-angled-triangles.russian.md │ │ │ │ ├── problem-219-skew-cost-coding.russian.md │ │ │ │ ├── problem-22-names-scores.russian.md │ │ │ │ ├── problem-220-heighway-dragon.russian.md │ │ │ │ ├── problem-221-alexandrian-integers.russian.md │ │ │ │ ├── problem-222-sphere-packing.russian.md │ │ │ │ ├── problem-223-almost-right-angled-triangles-i.russian.md │ │ │ │ ├── problem-224-almost-right-angled-triangles-ii.russian.md │ │ │ │ ├── problem-225-tribonacci-non-divisors.russian.md │ │ │ │ ├── problem-226-a-scoop-of-blancmange.russian.md │ │ │ │ ├── problem-227-the-chase.russian.md │ │ │ │ ├── problem-228-minkowski-sums.russian.md │ │ │ │ ├── problem-229-four-representations-using-squares.russian.md │ │ │ │ ├── problem-23-non-abundant-sums.russian.md │ │ │ │ ├── problem-230-fibonacci-words.russian.md │ │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.russian.md │ │ │ │ ├── problem-232-the-race.russian.md │ │ │ │ ├── problem-233-lattice-points-on-a-circle.russian.md │ │ │ │ ├── problem-234-semidivisible-numbers.russian.md │ │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.russian.md │ │ │ │ ├── problem-236-luxury-hampers.russian.md │ │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.russian.md │ │ │ │ ├── problem-238-infinite-string-tour.russian.md │ │ │ │ ├── problem-239-twenty-two-foolish-primes.russian.md │ │ │ │ ├── problem-24-lexicographic-permutations.russian.md │ │ │ │ ├── problem-240-top-dice.russian.md │ │ │ │ ├── problem-241-perfection-quotients.russian.md │ │ │ │ ├── problem-242-odd-triplets.russian.md │ │ │ │ ├── problem-243-resilience.russian.md │ │ │ │ ├── problem-244-sliders.russian.md │ │ │ │ ├── problem-245-coresilience.russian.md │ │ │ │ ├── problem-246-tangents-to-an-ellipse.russian.md │ │ │ │ ├── problem-247-squares-under-a-hyperbola.russian.md │ │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.russian.md │ │ │ │ ├── problem-249-prime-subset-sums.russian.md │ │ │ │ ├── problem-25-1000-digit-fibonacci-number.russian.md │ │ │ │ ├── problem-250-250250.russian.md │ │ │ │ ├── problem-251-cardano-triplets.russian.md │ │ │ │ ├── problem-252-convex-holes.russian.md │ │ │ │ ├── problem-253-tidying-up.russian.md │ │ │ │ ├── problem-254-sums-of-digit-factorials.russian.md │ │ │ │ ├── problem-255-rounded-square-roots.russian.md │ │ │ │ ├── problem-256-tatami-free-rooms.russian.md │ │ │ │ ├── problem-257-angular-bisectors.russian.md │ │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.russian.md │ │ │ │ ├── problem-259-reachable-numbers.russian.md │ │ │ │ ├── problem-26-reciprocal-cycles.russian.md │ │ │ │ ├── problem-260-stone-game.russian.md │ │ │ │ ├── problem-261-pivotal-square-sums.russian.md │ │ │ │ ├── problem-262-mountain-range.russian.md │ │ │ │ ├── problem-263-an-engineers-dream-come-true.russian.md │ │ │ │ ├── problem-264-triangle-centres.russian.md │ │ │ │ ├── problem-265-binary-circles.russian.md │ │ │ │ ├── problem-266-pseudo-square-root.russian.md │ │ │ │ ├── problem-267-billionaire.russian.md │ │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.russian.md │ │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.russian.md │ │ │ │ ├── problem-27-quadratic-primes.russian.md │ │ │ │ ├── problem-270-cutting-squares.russian.md │ │ │ │ ├── problem-271-modular-cubes-part-1.russian.md │ │ │ │ ├── problem-272-modular-cubes-part-2.russian.md │ │ │ │ ├── problem-273-sum-of-squares.russian.md │ │ │ │ ├── problem-274-divisibility-multipliers.russian.md │ │ │ │ ├── problem-275-balanced-sculptures.russian.md │ │ │ │ ├── problem-276-primitive-triangles.russian.md │ │ │ │ ├── problem-277-a-modified-collatz-sequence.russian.md │ │ │ │ ├── problem-278-linear-combinations-of-semiprimes.russian.md │ │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.russian.md │ │ │ │ ├── problem-28-number-spiral-diagonals.russian.md │ │ │ │ ├── problem-280-ant-and-seeds.russian.md │ │ │ │ ├── problem-281-pizza-toppings.russian.md │ │ │ │ ├── problem-282-the-ackermann-function.russian.md │ │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.russian.md │ │ │ │ ├── problem-284-steady-squares.russian.md │ │ │ │ ├── problem-285-pythagorean-odds.russian.md │ │ │ │ ├── problem-286-scoring-probabilities.russian.md │ │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.russian.md │ │ │ │ ├── problem-288-an-enormous-factorial.russian.md │ │ │ │ ├── problem-289-eulerian-cycles.russian.md │ │ │ │ ├── problem-29-distinct-powers.russian.md │ │ │ │ ├── problem-290-digital-signature.russian.md │ │ │ │ ├── problem-291-panaitopol-primes.russian.md │ │ │ │ ├── problem-292-pythagorean-polygons.russian.md │ │ │ │ ├── problem-293-pseudo-fortunate-numbers.russian.md │ │ │ │ ├── problem-294-sum-of-digits---experience-23.russian.md │ │ │ │ ├── problem-295-lenticular-holes.russian.md │ │ │ │ ├── problem-296-angular-bisector-and-tangent.russian.md │ │ │ │ ├── problem-297-zeckendorf-representation.russian.md │ │ │ │ ├── problem-298-selective-amnesia.russian.md │ │ │ │ ├── problem-299-three-similar-triangles.russian.md │ │ │ │ ├── problem-3-largest-prime-factor.russian.md │ │ │ │ ├── problem-30-digit-n-powers.russian.md │ │ │ │ ├── problem-300-protein-folding.russian.md │ │ │ │ ├── problem-301-nim.russian.md │ │ │ │ ├── problem-302-strong-achilles-numbers.russian.md │ │ │ │ ├── problem-303-multiples-with-small-digits.russian.md │ │ │ │ ├── problem-304-primonacci.russian.md │ │ │ │ ├── problem-305-reflexive-position.russian.md │ │ │ │ ├── problem-306-paper-strip-game.russian.md │ │ │ │ ├── problem-307-chip-defects.russian.md │ │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.russian.md │ │ │ │ ├── problem-309-integer-ladders.russian.md │ │ │ │ ├── problem-31-coin-sums.russian.md │ │ │ │ ├── problem-310-nim-square.russian.md │ │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.russian.md │ │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.russian.md │ │ │ │ ├── problem-313-sliding-game.russian.md │ │ │ │ ├── problem-314-the-mouse-on-the-moon.russian.md │ │ │ │ ├── problem-315-digital-root-clocks.russian.md │ │ │ │ ├── problem-316-numbers-in-decimal-expansions.russian.md │ │ │ │ ├── problem-317-firecracker.russian.md │ │ │ │ ├── problem-318-2011-nines.russian.md │ │ │ │ ├── problem-319-bounded-sequences.russian.md │ │ │ │ ├── problem-32-pandigital-products.russian.md │ │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.russian.md │ │ │ │ ├── problem-321-swapping-counters.russian.md │ │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.russian.md │ │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.russian.md │ │ │ │ ├── problem-324-building-a-tower.russian.md │ │ │ │ ├── problem-325-stone-game-ii.russian.md │ │ │ │ ├── problem-326-modulo-summations.russian.md │ │ │ │ ├── problem-327-rooms-of-doom.russian.md │ │ │ │ ├── problem-328-lowest-cost-search.russian.md │ │ │ │ ├── problem-329-prime-frog.russian.md │ │ │ │ ├── problem-33-digit-cancelling-fractions.russian.md │ │ │ │ ├── problem-330-eulers-number.russian.md │ │ │ │ ├── problem-331-cross-flips.russian.md │ │ │ │ ├── problem-332-spherical-triangles.russian.md │ │ │ │ ├── problem-333-special-partitions.russian.md │ │ │ │ ├── problem-334-spilling-the-beans.russian.md │ │ │ │ ├── problem-335-gathering-the-beans.russian.md │ │ │ │ ├── problem-336-maximix-arrangements.russian.md │ │ │ │ ├── problem-337-totient-stairstep-sequences.russian.md │ │ │ │ ├── problem-338-cutting-rectangular-grid-paper.russian.md │ │ │ │ ├── problem-339-peredur-fab-efrawg.russian.md │ │ │ │ ├── problem-34-digit-factorials.russian.md │ │ │ │ ├── problem-340-crazy-function.russian.md │ │ │ │ ├── problem-341-golombs-self-describing-sequence.russian.md │ │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.russian.md │ │ │ │ ├── problem-343-fractional-sequences.russian.md │ │ │ │ ├── problem-344-silver-dollar-game.russian.md │ │ │ │ ├── problem-345-matrix-sum.russian.md │ │ │ │ ├── problem-346-strong-repunits.russian.md │ │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.russian.md │ │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.russian.md │ │ │ │ ├── problem-349-langtons-ant.russian.md │ │ │ │ ├── problem-35-circular-primes.russian.md │ │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.russian.md │ │ │ │ ├── problem-351-hexagonal-orchards.russian.md │ │ │ │ ├── problem-352-blood-tests.russian.md │ │ │ │ ├── problem-353-risky-moon.russian.md │ │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.russian.md │ │ │ │ ├── problem-355-maximal-coprime-subset.russian.md │ │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.russian.md │ │ │ │ ├── problem-357-prime-generating-integers.russian.md │ │ │ │ ├── problem-358-cyclic-numbers.russian.md │ │ │ │ ├── problem-359-hilberts-new-hotel.russian.md │ │ │ │ ├── problem-36-double-base-palindromes.russian.md │ │ │ │ ├── problem-360-scary-sphere.russian.md │ │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.russian.md │ │ │ │ ├── problem-362-squarefree-factors.russian.md │ │ │ │ ├── problem-363-bzier-curves.russian.md │ │ │ │ ├── problem-364-comfortable-distance.russian.md │ │ │ │ ├── problem-365-a-huge-binomial-coefficient.russian.md │ │ │ │ ├── problem-366-stone-game-iii.russian.md │ │ │ │ ├── problem-367-bozo-sort.russian.md │ │ │ │ ├── problem-368-a-kempner-like-series.russian.md │ │ │ │ ├── problem-369-badugi.russian.md │ │ │ │ ├── problem-37-truncatable-primes.russian.md │ │ │ │ ├── problem-370-geometric-triangles.russian.md │ │ │ │ ├── problem-371-licence-plates.russian.md │ │ │ │ ├── problem-372-pencils-of-rays.russian.md │ │ │ │ ├── problem-373-circumscribed-circles.russian.md │ │ │ │ ├── problem-374-maximum-integer-partition-product.russian.md │ │ │ │ ├── problem-375-minimum-of-subsequences.russian.md │ │ │ │ ├── problem-376-nontransitive-sets-of-dice.russian.md │ │ │ │ ├── problem-377-sum-of-digits-experience-13.russian.md │ │ │ │ ├── problem-378-triangle-triples.russian.md │ │ │ │ ├── problem-379-least-common-multiple-count.russian.md │ │ │ │ ├── problem-38-pandigital-multiples.russian.md │ │ │ │ ├── problem-380-amazing-mazes.russian.md │ │ │ │ ├── problem-381-prime-k-factorial.russian.md │ │ │ │ ├── problem-382-generating-polygons.russian.md │ │ │ │ ├── problem-383-divisibility-comparison-between-factorials.russian.md │ │ │ │ ├── problem-384-rudin-shapiro-sequence.russian.md │ │ │ │ ├── problem-385-ellipses-inside-triangles.russian.md │ │ │ │ ├── problem-386-maximum-length-of-an-antichain.russian.md │ │ │ │ ├── problem-387-harshad-numbers.russian.md │ │ │ │ ├── problem-388-distinct-lines.russian.md │ │ │ │ ├── problem-389-platonic-dice.russian.md │ │ │ │ ├── problem-39-integer-right-triangles.russian.md │ │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.russian.md │ │ │ │ ├── problem-391-hopping-game.russian.md │ │ │ │ ├── problem-392-enmeshed-unit-circle.russian.md │ │ │ │ ├── problem-393-migrating-ants.russian.md │ │ │ │ ├── problem-394-eating-pie.russian.md │ │ │ │ ├── problem-395-pythagorean-tree.russian.md │ │ │ │ ├── problem-396-weak-goodstein-sequence.russian.md │ │ │ │ ├── problem-397-triangle-on-parabola.russian.md │ │ │ │ ├── problem-398-cutting-rope.russian.md │ │ │ │ ├── problem-399-squarefree-fibonacci-numbers.russian.md │ │ │ │ ├── problem-4-largest-palindrome-product.russian.md │ │ │ │ ├── problem-40-champernownes-constant.russian.md │ │ │ │ ├── problem-400-fibonacci-tree-game.russian.md │ │ │ │ ├── problem-401-sum-of-squares-of-divisors.russian.md │ │ │ │ ├── problem-402-integer-valued-polynomials.russian.md │ │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.russian.md │ │ │ │ ├── problem-404-crisscross-ellipses.russian.md │ │ │ │ ├── problem-405-a-rectangular-tiling.russian.md │ │ │ │ ├── problem-406-guessing-game.russian.md │ │ │ │ ├── problem-407-idempotents.russian.md │ │ │ │ ├── problem-408-admissible-paths-through-a-grid.russian.md │ │ │ │ ├── problem-409-nim-extreme.russian.md │ │ │ │ ├── problem-41-pandigital-prime.russian.md │ │ │ │ ├── problem-410-circle-and-tangent-line.russian.md │ │ │ │ ├── problem-411-uphill-paths.russian.md │ │ │ │ ├── problem-412-gnomon-numbering.russian.md │ │ │ │ ├── problem-413-one-child-numbers.russian.md │ │ │ │ ├── problem-414-kaprekar-constant.russian.md │ │ │ │ ├── problem-415-titanic-sets.russian.md │ │ │ │ ├── problem-416-a-frogs-trip.russian.md │ │ │ │ ├── problem-417-reciprocal-cycles-ii.russian.md │ │ │ │ ├── problem-418-factorisation-triples.russian.md │ │ │ │ ├── problem-419-look-and-say-sequence.russian.md │ │ │ │ ├── problem-42-coded-triangle-numbers.russian.md │ │ │ │ ├── problem-420-2x2-positive-integer-matrix.russian.md │ │ │ │ ├── problem-421-prime-factors-of-n151.russian.md │ │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.russian.md │ │ │ │ ├── problem-423-consecutive-die-throws.russian.md │ │ │ │ ├── problem-424-kakuro.russian.md │ │ │ │ ├── problem-425-prime-connection.russian.md │ │ │ │ ├── problem-426-box-ball-system.russian.md │ │ │ │ ├── problem-427-n-sequences.russian.md │ │ │ │ ├── problem-428-necklace-of-circles.russian.md │ │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.russian.md │ │ │ │ ├── problem-43-sub-string-divisibility.russian.md │ │ │ │ ├── problem-430-range-flips.russian.md │ │ │ │ ├── problem-431-square-space-silo.russian.md │ │ │ │ ├── problem-432-totient-sum.russian.md │ │ │ │ ├── problem-433-steps-in-euclids-algorithm.russian.md │ │ │ │ ├── problem-434-rigid-graphs.russian.md │ │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.russian.md │ │ │ │ ├── problem-436-unfair-wager.russian.md │ │ │ │ ├── problem-437-fibonacci-primitive-roots.russian.md │ │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.russian.md │ │ │ │ ├── problem-439-sum-of-sum-of-divisors.russian.md │ │ │ │ ├── problem-44-pentagon-numbers.russian.md │ │ │ │ ├── problem-440-gcd-and-tiling.russian.md │ │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.russian.md │ │ │ │ ├── problem-442-eleven-free-integers.russian.md │ │ │ │ ├── problem-443-gcd-sequence.russian.md │ │ │ │ ├── problem-444-the-roundtable-lottery.russian.md │ │ │ │ ├── problem-445-retractions-a.russian.md │ │ │ │ ├── problem-446-retractions-b.russian.md │ │ │ │ ├── problem-447-retractions-c.russian.md │ │ │ │ ├── problem-448-average-least-common-multiple.russian.md │ │ │ │ ├── problem-449-chocolate-covered-candy.russian.md │ │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.russian.md │ │ │ │ ├── problem-450-hypocycloid-and-lattice-points.russian.md │ │ │ │ ├── problem-451-modular-inverses.russian.md │ │ │ │ ├── problem-452-long-products.russian.md │ │ │ │ ├── problem-453-lattice-quadrilaterals.russian.md │ │ │ │ ├── problem-454-diophantine-reciprocals-iii.russian.md │ │ │ │ ├── problem-455-powers-with-trailing-digits.russian.md │ │ │ │ ├── problem-456-triangles-containing-the-origin-ii.russian.md │ │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.russian.md │ │ │ │ ├── problem-458-permutations-of-project.russian.md │ │ │ │ ├── problem-459-flipping-game.russian.md │ │ │ │ ├── problem-46-goldbachs-other-conjecture.russian.md │ │ │ │ ├── problem-460-an-ant-on-the-move.russian.md │ │ │ │ ├── problem-461-almost-pi.russian.md │ │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.russian.md │ │ │ │ ├── problem-463-a-weird-recurrence-relation.russian.md │ │ │ │ ├── problem-464-mbius-function-and-intervals.russian.md │ │ │ │ ├── problem-465-polar-polygons.russian.md │ │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.russian.md │ │ │ │ ├── problem-467-superinteger.russian.md │ │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.russian.md │ │ │ │ ├── problem-469-empty-chairs.russian.md │ │ │ │ ├── problem-47-distinct-primes-factors.russian.md │ │ │ │ ├── problem-470-super-ramvok.russian.md │ │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.russian.md │ │ │ │ ├── problem-472-comfortable-distance-ii.russian.md │ │ │ │ ├── problem-473-phigital-number-base.russian.md │ │ │ │ ├── problem-474-last-digits-of-divisors.russian.md │ │ │ │ ├── problem-475-music-festival.russian.md │ │ │ │ ├── problem-476-circle-packing-ii.russian.md │ │ │ │ ├── problem-477-number-sequence-game.russian.md │ │ │ │ ├── problem-478-mixtures.russian.md │ │ │ │ ├── problem-479-roots-on-the-rise.russian.md │ │ │ │ ├── problem-48-self-powers.russian.md │ │ │ │ ├── problem-480-the-last-question.russian.md │ │ │ │ ├── problem-49-prime-permutations.russian.md │ │ │ │ ├── problem-5-smallest-multiple.russian.md │ │ │ │ ├── problem-50-consecutive-prime-sum.russian.md │ │ │ │ ├── problem-51-prime-digit-replacements.russian.md │ │ │ │ ├── problem-52-permuted-multiples.russian.md │ │ │ │ ├── problem-53-combinatoric-selections.russian.md │ │ │ │ ├── problem-54-poker-hands.russian.md │ │ │ │ ├── problem-55-lychrel-numbers.russian.md │ │ │ │ ├── problem-56-powerful-digit-sum.russian.md │ │ │ │ ├── problem-57-square-root-convergents.russian.md │ │ │ │ ├── problem-58-spiral-primes.russian.md │ │ │ │ ├── problem-59-xor-decryption.russian.md │ │ │ │ ├── problem-6-sum-square-difference.russian.md │ │ │ │ ├── problem-60-prime-pair-sets.russian.md │ │ │ │ ├── problem-61-cyclical-figurate-numbers.russian.md │ │ │ │ ├── problem-62-cubic-permutations.russian.md │ │ │ │ ├── problem-63-powerful-digit-counts.russian.md │ │ │ │ ├── problem-64-odd-period-square-roots.russian.md │ │ │ │ ├── problem-65-convergents-of-e.russian.md │ │ │ │ ├── problem-66-diophantine-equation.russian.md │ │ │ │ ├── problem-67-maximum-path-sum-ii.russian.md │ │ │ │ ├── problem-68-magic-5-gon-ring.russian.md │ │ │ │ ├── problem-69-totient-maximum.russian.md │ │ │ │ ├── problem-7-10001st-prime.russian.md │ │ │ │ ├── problem-70-totient-permutation.russian.md │ │ │ │ ├── problem-71-ordered-fractions.russian.md │ │ │ │ ├── problem-72-counting-fractions.russian.md │ │ │ │ ├── problem-73-counting-fractions-in-a-range.russian.md │ │ │ │ ├── problem-74-digit-factorial-chains.russian.md │ │ │ │ ├── problem-75-singular-integer-right-triangles.russian.md │ │ │ │ ├── problem-76-counting-summations.russian.md │ │ │ │ ├── problem-77-prime-summations.russian.md │ │ │ │ ├── problem-78-coin-partitions.russian.md │ │ │ │ ├── problem-79-passcode-derivation.russian.md │ │ │ │ ├── problem-8-largest-product-in-a-series.russian.md │ │ │ │ ├── problem-80-square-root-digital-expansion.russian.md │ │ │ │ ├── problem-81-path-sum-two-ways.russian.md │ │ │ │ ├── problem-82-path-sum-three-ways.russian.md │ │ │ │ ├── problem-83-path-sum-four-ways.russian.md │ │ │ │ ├── problem-84-monopoly-odds.russian.md │ │ │ │ ├── problem-85-counting-rectangles.russian.md │ │ │ │ ├── problem-86-cuboid-route.russian.md │ │ │ │ ├── problem-87-prime-power-triples.russian.md │ │ │ │ ├── problem-88-product-sum-numbers.russian.md │ │ │ │ ├── problem-89-roman-numerals.russian.md │ │ │ │ ├── problem-9-special-pythagorean-triplet.russian.md │ │ │ │ ├── problem-90-cube-digit-pairs.russian.md │ │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.russian.md │ │ │ │ ├── problem-92-square-digit-chains.russian.md │ │ │ │ ├── problem-93-arithmetic-expressions.russian.md │ │ │ │ ├── problem-94-almost-equilateral-triangles.russian.md │ │ │ │ ├── problem-95-amicable-chains.russian.md │ │ │ │ ├── problem-96-su-doku.russian.md │ │ │ │ ├── problem-97-large-non-mersenne-prime.russian.md │ │ │ │ ├── problem-98-anagramic-squares.russian.md │ │ │ │ └── problem-99-largest-exponential.russian.md │ │ │ ├── rosetta-code │ │ │ │ ├── 100-doors.russian.md │ │ │ │ ├── 24-game.russian.md │ │ │ │ ├── 9-billion-names-of-god-the-integer.russian.md │ │ │ │ ├── abc-problem.russian.md │ │ │ │ ├── abundant-deficient-and-perfect-number-classifications.russian.md │ │ │ │ ├── accumulator-factory.russian.md │ │ │ │ ├── ackermann-function.russian.md │ │ │ │ ├── align-columns.russian.md │ │ │ │ ├── amicable-pairs.russian.md │ │ │ │ ├── averages-mode.russian.md │ │ │ │ ├── averages-pythagorean-means.russian.md │ │ │ │ ├── averages-root-mean-square.russian.md │ │ │ │ ├── babbage-problem.russian.md │ │ │ │ ├── balanced-brackets.russian.md │ │ │ │ ├── circles-of-given-radius-through-two-points.russian.md │ │ │ │ ├── closest-pair-problem.russian.md │ │ │ │ ├── combinations.russian.md │ │ │ │ ├── comma-quibbling.russian.md │ │ │ │ ├── compare-a-list-of-strings.russian.md │ │ │ │ ├── convert-seconds-to-compound-duration.russian.md │ │ │ │ ├── count-occurrences-of-a-substring.russian.md │ │ │ │ ├── count-the-coins.russian.md │ │ │ │ ├── cramers-rule.russian.md │ │ │ │ ├── date-format.russian.md │ │ │ │ ├── date-manipulation.russian.md │ │ │ │ ├── day-of-the-week.russian.md │ │ │ │ ├── deal-cards-for-freecell.russian.md │ │ │ │ ├── deepcopy.russian.md │ │ │ │ ├── define-a-primitive-data-type.russian.md │ │ │ │ ├── department-numbers.russian.md │ │ │ │ ├── discordian-date.russian.md │ │ │ │ ├── element-wise-operations.russian.md │ │ │ │ ├── emirp-primes.russian.md │ │ │ │ ├── entropy.russian.md │ │ │ │ ├── equilibrium-index.russian.md │ │ │ │ ├── ethiopian-multiplication.russian.md │ │ │ │ ├── euler-method.russian.md │ │ │ │ ├── evaluate-binomial-coefficients.russian.md │ │ │ │ ├── execute-a-markov-algorithm.russian.md │ │ │ │ ├── execute-brain.russian.md │ │ │ │ ├── extensible-prime-generator.russian.md │ │ │ │ ├── factorial.russian.md │ │ │ │ ├── factors-of-a-mersenne-number.russian.md │ │ │ │ ├── factors-of-an-integer.russian.md │ │ │ │ ├── farey-sequence.russian.md │ │ │ │ ├── fibonacci-n-step-number-sequences.russian.md │ │ │ │ ├── fibonacci-sequence.russian.md │ │ │ │ ├── fibonacci-word.russian.md │ │ │ │ ├── fractran.russian.md │ │ │ │ ├── gamma-function.russian.md │ │ │ │ ├── gaussian-elimination.russian.md │ │ │ │ ├── general-fizzbuzz.russian.md │ │ │ │ ├── generate-lower-case-ascii-alphabet.russian.md │ │ │ │ ├── generatorexponential.russian.md │ │ │ │ ├── gray-code.russian.md │ │ │ │ ├── greatest-common-divisor.russian.md │ │ │ │ ├── greatest-subsequential-sum.russian.md │ │ │ │ ├── hailstone-sequence.russian.md │ │ │ │ ├── happy-numbers.russian.md │ │ │ │ ├── harshad-or-niven-series.russian.md │ │ │ │ ├── hash-from-two-arrays.russian.md │ │ │ │ ├── hash-join.russian.md │ │ │ │ ├── heronian-triangles.russian.md │ │ │ │ ├── hofstadter-figure-figure-sequences.russian.md │ │ │ │ ├── hofstadter-q-sequence.russian.md │ │ │ │ ├── i-before-e-except-after-c.russian.md │ │ │ │ ├── iban.russian.md │ │ │ │ ├── identity-matrix.russian.md │ │ │ │ ├── iterated-digits-squaring.russian.md │ │ │ │ ├── jaro-distance.russian.md │ │ │ │ ├── jortsort.russian.md │ │ │ │ ├── josephus-problem.russian.md │ │ │ │ ├── s-expressions.russian.md │ │ │ │ ├── sailors-coconuts-and-a-monkey-problem.russian.md │ │ │ │ ├── sedols.russian.md │ │ │ │ ├── taxicab-numbers.russian.md │ │ │ │ ├── tokenize-a-string-with-escaping.russian.md │ │ │ │ ├── top-rank-per-group.russian.md │ │ │ │ ├── topological-sort.russian.md │ │ │ │ ├── towers-of-hanoi.russian.md │ │ │ │ ├── vector-cross-product.russian.md │ │ │ │ ├── vector-dot-product.russian.md │ │ │ │ ├── word-wrap.russian.md │ │ │ │ ├── y-combinator.russian.md │ │ │ │ ├── zeckendorf-number-representation.russian.md │ │ │ │ ├── zhang-suen-thinning-algorithm.russian.md │ │ │ │ └── zig-zag-matrix.russian.md │ │ │ └── take-home-projects │ │ │ │ ├── build-a-camper-leaderboard.russian.md │ │ │ │ ├── build-a-light-bright-app.russian.md │ │ │ │ ├── build-a-nightlife-coordination-app.russian.md │ │ │ │ ├── build-a-pinterest-clone.russian.md │ │ │ │ ├── build-a-pong-game.russian.md │ │ │ │ ├── build-a-recipe-box.russian.md │ │ │ │ ├── build-a-roguelike-dungeon-crawler-game.russian.md │ │ │ │ ├── build-a-simon-game.russian.md │ │ │ │ ├── build-a-tic-tac-toe-game.russian.md │ │ │ │ ├── build-a-voting-app.russian.md │ │ │ │ ├── build-a-wikipedia-viewer.russian.md │ │ │ │ ├── build-an-image-search-abstraction-layer.russian.md │ │ │ │ ├── build-the-game-of-life.russian.md │ │ │ │ ├── chart-the-stock-market.russian.md │ │ │ │ ├── manage-a-book-trading-club.russian.md │ │ │ │ ├── map-data-across-the-globe.russian.md │ │ │ │ ├── p2p-video-chat-application.russian.md │ │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.russian.md │ │ │ │ ├── show-the-local-weather.russian.md │ │ │ │ └── use-the-twitch-json-api.russian.md │ │ └── 09-certificates │ │ │ ├── apis-and-microservices-certificate │ │ │ └── apis-and-microservices-certificate.russian.md │ │ │ ├── data-visualization-certificate │ │ │ └── data-visualization-certificate.russian.md │ │ │ ├── front-end-libraries-certificate │ │ │ └── front-end-libraries-certificate.russian.md │ │ │ ├── information-securtiy-and-quality-assurance-certificate │ │ │ └── information-securtiy-and-quality-assurance-certificate.russian.md │ │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ │ └── javascript-algorithms-and-data-structures-certificate.russian.md │ │ │ ├── legacy-back-end-certificate │ │ │ └── legacy-back-end-certificate.russian.md │ │ │ ├── legacy-data-visualization-certificate │ │ │ └── legacy-data-visualization-certificate.russian.md │ │ │ ├── legacy-front-end-certificate │ │ │ └── legacy-front-end-certificate.russian.md │ │ │ └── responsive-web-design-certificate │ │ │ └── responsive-web-design-certificate.russian.md │ └── spanish │ │ ├── 01-responsive-web-design │ │ ├── applied-accessibility │ │ │ ├── add-a-text-alternative-to-images-for-visually-impaired-accessibility.spanish.md │ │ │ ├── add-an-accessible-date-picker.spanish.md │ │ │ ├── avoid-colorblindness-issues-by-carefully-choosing-colors-that-convey-information.spanish.md │ │ │ ├── avoid-colorblindness-issues-by-using-sufficient-contrast.spanish.md │ │ │ ├── give-links-meaning-by-using-descriptive-link-text.spanish.md │ │ │ ├── improve-accessibility-of-audio-content-with-the-audio-element.spanish.md │ │ │ ├── improve-chart-accessibility-with-the-figure-element.spanish.md │ │ │ ├── improve-form-field-accessibility-with-the-label-element.spanish.md │ │ │ ├── improve-readability-with-high-contrast-text.spanish.md │ │ │ ├── jump-straight-to-the-content-using-the-main-element.spanish.md │ │ │ ├── know-when-alt-text-should-be-left-blank.spanish.md │ │ │ ├── make-elements-only-visible-to-a-screen-reader-by-using-custom-css.spanish.md │ │ │ ├── make-links-navigatable-with-html-access-keys.spanish.md │ │ │ ├── make-screen-reader-navigation-easier-with-the-footer-landmark.spanish.md │ │ │ ├── make-screen-reader-navigation-easier-with-the-header-landmark.spanish.md │ │ │ ├── make-screen-reader-navigation-easier-with-the-nav-landmark.spanish.md │ │ │ ├── standardize-times-with-the-html5-datetime-attribute.spanish.md │ │ │ ├── use-headings-to-show-hierarchical-relationships-of-content.spanish.md │ │ │ ├── use-tabindex-to-add-keyboard-focus-to-an-element.spanish.md │ │ │ ├── use-tabindex-to-specify-the-order-of-keyboard-focus-for-several-elements.spanish.md │ │ │ ├── wrap-content-in-the-article-element.spanish.md │ │ │ └── wrap-radio-buttons-in-a-fieldset-element-for-better-accessibility.spanish.md │ │ ├── applied-visual-design │ │ │ ├── add-a-box-shadow-to-a-card-like-element.spanish.md │ │ │ ├── adjust-the-background-color-property-of-text.spanish.md │ │ │ ├── adjust-the-color-of-various-elements-to-complementary-colors.spanish.md │ │ │ ├── adjust-the-height-of-an-element-using-the-height-property.spanish.md │ │ │ ├── adjust-the-hover-state-of-an-anchor-tag.spanish.md │ │ │ ├── adjust-the-hue-of-a-color.spanish.md │ │ │ ├── adjust-the-size-of-a-header-versus-a-paragraph-tag.spanish.md │ │ │ ├── adjust-the-tone-of-a-color.spanish.md │ │ │ ├── adjust-the-width-of-an-element-using-the-width-property.spanish.md │ │ │ ├── animate-elements-at-variable-rates.spanish.md │ │ │ ├── animate-elements-continually-using-an-infinite-animation-count.spanish.md │ │ │ ├── animate-multiple-elements-at-variable-rates.spanish.md │ │ │ ├── center-an-element-horizontally-using-the-margin-property.spanish.md │ │ │ ├── change-an-elements-relative-position.spanish.md │ │ │ ├── change-animation-timing-with-keywords.spanish.md │ │ │ ├── change-the-position-of-overlapping-elements-with-the-z-index-property.spanish.md │ │ │ ├── create-a-gradual-css-linear-gradient.spanish.md │ │ │ ├── create-a-graphic-using-css.spanish.md │ │ │ ├── create-a-horizontal-line-using-the-hr-element.spanish.md │ │ │ ├── create-a-more-complex-shape-using-css-and-html.spanish.md │ │ │ ├── create-movement-using-css-animation.spanish.md │ │ │ ├── create-texture-by-adding-a-subtle-pattern-as-a-background-image.spanish.md │ │ │ ├── create-visual-balance-using-the-text-align-property.spanish.md │ │ │ ├── create-visual-direction-by-fading-an-element-from-left-to-right.spanish.md │ │ │ ├── decrease-the-opacity-of-an-element.spanish.md │ │ │ ├── learn-about-complementary-colors.spanish.md │ │ │ ├── learn-about-tertiary-colors.spanish.md │ │ │ ├── learn-how-bezier-curves-work.spanish.md │ │ │ ├── learn-how-the-css-keyframes-and-animation-properties-work.spanish.md │ │ │ ├── lock-an-element-to-its-parent-with-absolute-positioning.spanish.md │ │ │ ├── lock-an-element-to-the-browser-window-with-fixed-positioning.spanish.md │ │ │ ├── make-a-css-heartbeat-using-an-infinite-animation-count.spanish.md │ │ │ ├── make-motion-more-natural-using-a-bezier-curve.spanish.md │ │ │ ├── modify-fill-mode-of-an-animation.spanish.md │ │ │ ├── move-a-relatively-positioned-element-with-css-offsets.spanish.md │ │ │ ├── push-elements-left-or-right-with-the-float-property.spanish.md │ │ │ ├── set-the-font-size-for-multiple-heading-elements.spanish.md │ │ │ ├── set-the-font-size-of-paragraph-text.spanish.md │ │ │ ├── set-the-font-weight-for-multiple-heading-elements.spanish.md │ │ │ ├── set-the-line-height-of-paragraphs.spanish.md │ │ │ ├── use-a-bezier-curve-to-move-a-graphic.spanish.md │ │ │ ├── use-a-css-linear-gradient-to-create-a-striped-element.spanish.md │ │ │ ├── use-css-animation-to-change-the-hover-state-of-a-button.spanish.md │ │ │ ├── use-the-css-transform-property-skewx-to-skew-an-element-along-the-x-axis.spanish.md │ │ │ ├── use-the-css-transform-property-skewy-to-skew-an-element-along-the-y-axis.spanish.md │ │ │ ├── use-the-css-transform-scale-property-to-change-the-size-of-an-element.spanish.md │ │ │ ├── use-the-css-transform-scale-property-to-scale-an-element-on-hover.spanish.md │ │ │ ├── use-the-em-tag-to-italicize-text.spanish.md │ │ │ ├── use-the-s-tag-to-strikethrough-text.spanish.md │ │ │ ├── use-the-strong-tag-to-make-text-bold.spanish.md │ │ │ ├── use-the-text-transform-property-to-make-text-uppercase.spanish.md │ │ │ └── use-the-u-tag-to-underline-text.spanish.md │ │ ├── basic-css │ │ │ ├── add-a-negative-margin-to-an-element.spanish.md │ │ │ ├── add-borders-around-your-elements.spanish.md │ │ │ ├── add-different-margins-to-each-side-of-an-element.spanish.md │ │ │ ├── add-different-padding-to-each-side-of-an-element.spanish.md │ │ │ ├── add-rounded-corners-with-border-radius.spanish.md │ │ │ ├── adjust-the-margin-of-an-element.spanish.md │ │ │ ├── adjust-the-padding-of-an-element.spanish.md │ │ │ ├── attach-a-fallback-value-to-a-css-variable.spanish.md │ │ │ ├── cascading-css-variables.spanish.md │ │ │ ├── change-a-variable-for-a-specific-area.spanish.md │ │ │ ├── change-the-color-of-text.spanish.md │ │ │ ├── change-the-font-size-of-an-element.spanish.md │ │ │ ├── create-a-custom-css-variable.spanish.md │ │ │ ├── give-a-background-color-to-a-div-element.spanish.md │ │ │ ├── import-a-google-font.spanish.md │ │ │ ├── improve-compatibility-with-browser-fallbacks.spanish.md │ │ │ ├── inherit-styles-from-the-body-element.spanish.md │ │ │ ├── make-circular-images-with-a-border-radius.spanish.md │ │ │ ├── override-all-other-styles-by-using-important.spanish.md │ │ │ ├── override-class-declarations-by-styling-id-attributes.spanish.md │ │ │ ├── override-class-declarations-with-inline-styles.spanish.md │ │ │ ├── override-styles-in-subsequent-css.spanish.md │ │ │ ├── prioritize-one-style-over-another.spanish.md │ │ │ ├── set-the-font-family-of-an-element.spanish.md │ │ │ ├── set-the-id-of-an-element.spanish.md │ │ │ ├── size-your-images.spanish.md │ │ │ ├── specify-how-fonts-should-degrade.spanish.md │ │ │ ├── style-multiple-elements-with-a-css-class.spanish.md │ │ │ ├── style-the-html-body-element.spanish.md │ │ │ ├── understand-absolute-versus-relative-units.spanish.md │ │ │ ├── use-a-css-class-to-style-an-element.spanish.md │ │ │ ├── use-a-custom-css-variable.spanish.md │ │ │ ├── use-a-media-query-to-change-a-variable.spanish.md │ │ │ ├── use-abbreviated-hex-code.spanish.md │ │ │ ├── use-an-id-attribute-to-style-an-element.spanish.md │ │ │ ├── use-attribute-selectors-to-style-elements.spanish.md │ │ │ ├── use-clockwise-notation-to-specify-the-margin-of-an-element.spanish.md │ │ │ ├── use-clockwise-notation-to-specify-the-padding-of-an-element.spanish.md │ │ │ ├── use-css-selectors-to-style-elements.spanish.md │ │ │ ├── use-css-variables-to-change-several-elements-at-once.spanish.md │ │ │ ├── use-hex-code-for-specific-colors.spanish.md │ │ │ ├── use-hex-code-to-mix-colors.spanish.md │ │ │ ├── use-rgb-to-mix-colors.spanish.md │ │ │ └── use-rgb-values-to-color-elements.spanish.md │ │ ├── basic-html-and-html5 │ │ │ ├── add-a-submit-button-to-a-form.spanish.md │ │ │ ├── add-images-to-your-website.spanish.md │ │ │ ├── add-placeholder-text-to-a-text-field.spanish.md │ │ │ ├── check-radio-buttons-and-checkboxes-by-default.spanish.md │ │ │ ├── comment-out-html.spanish.md │ │ │ ├── create-a-bulleted-unordered-list.spanish.md │ │ │ ├── create-a-form-element.spanish.md │ │ │ ├── create-a-set-of-checkboxes.spanish.md │ │ │ ├── create-a-set-of-radio-buttons.spanish.md │ │ │ ├── create-a-text-field.spanish.md │ │ │ ├── create-an-ordered-list.spanish.md │ │ │ ├── declare-the-doctype-of-an-html-document.spanish.md │ │ │ ├── define-the-head-and-body-of-an-html-document.spanish.md │ │ │ ├── delete-html-elements.spanish.md │ │ │ ├── fill-in-the-blank-with-placeholder-text.spanish.md │ │ │ ├── headline-with-the-h2-element.spanish.md │ │ │ ├── inform-with-the-paragraph-element.spanish.md │ │ │ ├── introduction-to-html5-elements.spanish.md │ │ │ ├── link-to-external-pages-with-anchor-elements.spanish.md │ │ │ ├── link-to-internal-sections-of-a-page-with-anchor-elements.spanish.md │ │ │ ├── make-dead-links-using-the-hash-symbol.spanish.md │ │ │ ├── nest-an-anchor-element-within-a-paragraph.spanish.md │ │ │ ├── nest-many-elements-within-a-single-div-element.spanish.md │ │ │ ├── say-hello-to-html-elements.spanish.md │ │ │ ├── turn-an-image-into-a-link.spanish.md │ │ │ ├── uncomment-html.spanish.md │ │ │ └── use-html5-to-require-a-field.spanish.md │ │ ├── css-flexbox │ │ │ ├── add-flex-superpowers-to-the-tweet-embed.spanish.md │ │ │ ├── align-elements-using-the-align-items-property.spanish.md │ │ │ ├── align-elements-using-the-justify-content-property.spanish.md │ │ │ ├── apply-the-flex-direction-property-to-create-a-column-in-the-tweet-embed.spanish.md │ │ │ ├── apply-the-flex-direction-property-to-create-rows-in-the-tweet-embed.spanish.md │ │ │ ├── use-display-flex-to-position-two-boxes.spanish.md │ │ │ ├── use-the-align-items-property-in-the-tweet-embed.spanish.md │ │ │ ├── use-the-align-self-property.spanish.md │ │ │ ├── use-the-flex-basis-property-to-set-the-initial-size-of-an-item.spanish.md │ │ │ ├── use-the-flex-direction-property-to-make-a-column.spanish.md │ │ │ ├── use-the-flex-direction-property-to-make-a-row.spanish.md │ │ │ ├── use-the-flex-grow-property-to-expand-items.spanish.md │ │ │ ├── use-the-flex-shorthand-property.spanish.md │ │ │ ├── use-the-flex-shrink-property-to-shrink-items.spanish.md │ │ │ ├── use-the-flex-wrap-property-to-wrap-a-row-or-column.spanish.md │ │ │ ├── use-the-justify-content-property-in-the-tweet-embed.spanish.md │ │ │ └── use-the-order-property-to-rearrange-items.spanish.md │ │ ├── css-grid │ │ │ ├── add-columns-with-grid-template-columns.spanish.md │ │ │ ├── add-gaps-faster-with-grid-gap.spanish.md │ │ │ ├── add-rows-with-grid-template-rows.spanish.md │ │ │ ├── align-all-items-horizontally-using-justify-items.spanish.md │ │ │ ├── align-all-items-vertically-using-align-items.spanish.md │ │ │ ├── align-an-item-horizontally-using-justify-self.spanish.md │ │ │ ├── align-an-item-vertically-using-align-self.spanish.md │ │ │ ├── create-a-column-gap-using-grid-column-gap.spanish.md │ │ │ ├── create-a-row-gap-using-grid-row-gap.spanish.md │ │ │ ├── create-flexible-layouts-using-auto-fill.spanish.md │ │ │ ├── create-flexible-layouts-using-auto-fit.spanish.md │ │ │ ├── create-grids-within-grids.spanish.md │ │ │ ├── create-your-first-css-grid.spanish.md │ │ │ ├── divide-the-grid-into-an-area-template.spanish.md │ │ │ ├── limit-item-size-using-the-minmax-function.spanish.md │ │ │ ├── place-items-in-grid-areas-using-the-grid-area-property.spanish.md │ │ │ ├── reduce-repetition-using-the-repeat-function.spanish.md │ │ │ ├── use-css-grid-units-to-change-the-size-of-columns-and-rows.spanish.md │ │ │ ├── use-grid-area-without-creating-an-areas-template.spanish.md │ │ │ ├── use-grid-column-to-control-spacing.spanish.md │ │ │ ├── use-grid-row-to-control-spacing.spanish.md │ │ │ └── use-media-queries-to-create-responsive-layouts.spanish.md │ │ ├── responsive-web-design-principles │ │ │ ├── create-a-media-query.spanish.md │ │ │ ├── make-an-image-responsive.spanish.md │ │ │ ├── make-typography-responsive.spanish.md │ │ │ └── use-a-retina-image-for-higher-resolution-displays.spanish.md │ │ └── responsive-web-design-projects │ │ │ ├── build-a-personal-portfolio-webpage.spanish.md │ │ │ ├── build-a-product-landing-page.spanish.md │ │ │ ├── build-a-survey-form.spanish.md │ │ │ ├── build-a-technical-documentation-page.spanish.md │ │ │ └── build-a-tribute-page.spanish.md │ │ ├── 02-javascript-algorithms-and-data-structures │ │ ├── basic-algorithm-scripting │ │ │ ├── boo-who.spanish.md │ │ │ ├── chunky-monkey.spanish.md │ │ │ ├── confirm-the-ending.spanish.md │ │ │ ├── convert-celsius-to-fahrenheit.spanish.md │ │ │ ├── factorialize-a-number.spanish.md │ │ │ ├── falsy-bouncer.spanish.md │ │ │ ├── find-the-longest-word-in-a-string.spanish.md │ │ │ ├── finders-keepers.spanish.md │ │ │ ├── mutations.spanish.md │ │ │ ├── repeat-a-string-repeat-a-string.spanish.md │ │ │ ├── return-largest-numbers-in-arrays.spanish.md │ │ │ ├── reverse-a-string.spanish.md │ │ │ ├── slice-and-splice.spanish.md │ │ │ ├── title-case-a-sentence.spanish.md │ │ │ ├── truncate-a-string.spanish.md │ │ │ └── where-do-i-belong.spanish.md │ │ ├── basic-data-structures │ │ │ ├── access-an-arrays-contents-using-bracket-notation.spanish.md │ │ │ ├── access-property-names-with-bracket-notation.spanish.md │ │ │ ├── add-items-to-an-array-with-push-and-unshift.spanish.md │ │ │ ├── add-items-using-splice.spanish.md │ │ │ ├── add-key-value-pairs-to-javascript-objects.spanish.md │ │ │ ├── check-for-the-presence-of-an-element-with-indexof.spanish.md │ │ │ ├── check-if-an-object-has-a-property.spanish.md │ │ │ ├── combine-arrays-with-the-spread-operator.spanish.md │ │ │ ├── copy-an-array-with-the-spread-operator.spanish.md │ │ │ ├── copy-array-items-using-slice.spanish.md │ │ │ ├── create-complex-multi-dimensional-arrays.spanish.md │ │ │ ├── generate-an-array-of-all-object-keys-with-object.keys.spanish.md │ │ │ ├── iterate-through-all-an-arrays-items-using-for-loops.spanish.md │ │ │ ├── iterate-through-the-keys-of-an-object-with-a-for...in-statement.spanish.md │ │ │ ├── modify-an-array-stored-in-an-object.spanish.md │ │ │ ├── modify-an-object-nested-within-an-object.spanish.md │ │ │ ├── remove-items-from-an-array-with-pop-and-shift.spanish.md │ │ │ ├── remove-items-using-splice.spanish.md │ │ │ ├── use-an-array-to-store-a-collection-of-data.spanish.md │ │ │ └── use-the-delete-keyword-to-remove-object-properties.spanish.md │ │ ├── basic-javascript │ │ │ ├── access-array-data-with-indexes.spanish.md │ │ │ ├── access-multi-dimensional-arrays-with-indexes.spanish.md │ │ │ ├── accessing-nested-arrays.spanish.md │ │ │ ├── accessing-nested-objects.spanish.md │ │ │ ├── accessing-object-properties-with-bracket-notation.spanish.md │ │ │ ├── accessing-object-properties-with-dot-notation.spanish.md │ │ │ ├── accessing-object-properties-with-variables.spanish.md │ │ │ ├── add-new-properties-to-a-javascript-object.spanish.md │ │ │ ├── add-two-numbers-with-javascript.spanish.md │ │ │ ├── adding-a-default-option-in-switch-statements.spanish.md │ │ │ ├── appending-variables-to-strings.spanish.md │ │ │ ├── assignment-with-a-returned-value.spanish.md │ │ │ ├── build-javascript-objects.spanish.md │ │ │ ├── chaining-if-else-statements.spanish.md │ │ │ ├── comment-your-javascript-code.spanish.md │ │ │ ├── comparison-with-the-equality-operator.spanish.md │ │ │ ├── comparison-with-the-greater-than-operator.spanish.md │ │ │ ├── comparison-with-the-greater-than-or-equal-to-operator.spanish.md │ │ │ ├── comparison-with-the-inequality-operator.spanish.md │ │ │ ├── comparison-with-the-less-than-operator.spanish.md │ │ │ ├── comparison-with-the-less-than-or-equal-to-operator.spanish.md │ │ │ ├── comparison-with-the-strict-equality-operator.spanish.md │ │ │ ├── comparison-with-the-strict-inequality-operator.spanish.md │ │ │ ├── comparisons-with-the-logical-and-operator.spanish.md │ │ │ ├── comparisons-with-the-logical-or-operator.spanish.md │ │ │ ├── compound-assignment-with-augmented-addition.spanish.md │ │ │ ├── compound-assignment-with-augmented-division.spanish.md │ │ │ ├── compound-assignment-with-augmented-multiplication.spanish.md │ │ │ ├── compound-assignment-with-augmented-subtraction.spanish.md │ │ │ ├── concatenating-strings-with-plus-operator.spanish.md │ │ │ ├── concatenating-strings-with-the-plus-equals-operator.spanish.md │ │ │ ├── constructing-strings-with-variables.spanish.md │ │ │ ├── count-backwards-with-a-for-loop.spanish.md │ │ │ ├── counting-cards.spanish.md │ │ │ ├── create-decimal-numbers-with-javascript.spanish.md │ │ │ ├── declare-javascript-variables.spanish.md │ │ │ ├── declare-string-variables.spanish.md │ │ │ ├── decrement-a-number-with-javascript.spanish.md │ │ │ ├── delete-properties-from-a-javascript-object.spanish.md │ │ │ ├── divide-one-decimal-by-another-with-javascript.spanish.md │ │ │ ├── divide-one-number-by-another-with-javascript.spanish.md │ │ │ ├── escape-sequences-in-strings.spanish.md │ │ │ ├── escaping-literal-quotes-in-strings.spanish.md │ │ │ ├── find-the-length-of-a-string.spanish.md │ │ │ ├── finding-a-remainder-in-javascript.spanish.md │ │ │ ├── generate-random-fractions-with-javascript.spanish.md │ │ │ ├── generate-random-whole-numbers-with-javascript.spanish.md │ │ │ ├── generate-random-whole-numbers-within-a-range.spanish.md │ │ │ ├── global-scope-and-functions.spanish.md │ │ │ ├── global-vs.-local-scope-in-functions.spanish.md │ │ │ ├── golf-code.spanish.md │ │ │ ├── increment-a-number-with-javascript.spanish.md │ │ │ ├── initializing-variables-with-the-assignment-operator.spanish.md │ │ │ ├── introducing-else-if-statements.spanish.md │ │ │ ├── introducing-else-statements.spanish.md │ │ │ ├── iterate-odd-numbers-with-a-for-loop.spanish.md │ │ │ ├── iterate-through-an-array-with-a-for-loop.spanish.md │ │ │ ├── iterate-with-javascript-do...while-loops.spanish.md │ │ │ ├── iterate-with-javascript-for-loops.spanish.md │ │ │ ├── iterate-with-javascript-while-loops.spanish.md │ │ │ ├── local-scope-and-functions.spanish.md │ │ │ ├── logical-order-in-if-else-statements.spanish.md │ │ │ ├── manipulate-arrays-with-pop.spanish.md │ │ │ ├── manipulate-arrays-with-push.spanish.md │ │ │ ├── manipulate-arrays-with-shift.spanish.md │ │ │ ├── manipulate-arrays-with-unshift.spanish.md │ │ │ ├── manipulating-complex-objects.spanish.md │ │ │ ├── modify-array-data-with-indexes.spanish.md │ │ │ ├── multiple-identical-options-in-switch-statements.spanish.md │ │ │ ├── multiply-two-decimals-with-javascript.spanish.md │ │ │ ├── multiply-two-numbers-with-javascript.spanish.md │ │ │ ├── nest-one-array-within-another-array.spanish.md │ │ │ ├── nesting-for-loops.spanish.md │ │ │ ├── passing-values-to-functions-with-arguments.spanish.md │ │ │ ├── practice-comparing-different-values.spanish.md │ │ │ ├── profile-lookup.spanish.md │ │ │ ├── quoting-strings-with-single-quotes.spanish.md │ │ │ ├── record-collection.spanish.md │ │ │ ├── replacing-if-else-chains-with-switch.spanish.md │ │ │ ├── return-a-value-from-a-function-with-return.spanish.md │ │ │ ├── return-early-pattern-for-functions.spanish.md │ │ │ ├── returning-boolean-values-from-functions.spanish.md │ │ │ ├── selecting-from-many-options-with-switch-statements.spanish.md │ │ │ ├── shopping-list.spanish.md │ │ │ ├── stand-in-line.spanish.md │ │ │ ├── store-multiple-values-in-one-variable-using-javascript-arrays.spanish.md │ │ │ ├── storing-values-with-the-assignment-operator.spanish.md │ │ │ ├── subtract-one-number-from-another-with-javascript.spanish.md │ │ │ ├── testing-objects-for-properties.spanish.md │ │ │ ├── understand-string-immutability.spanish.md │ │ │ ├── understanding-boolean-values.spanish.md │ │ │ ├── understanding-case-sensitivity-in-variables.spanish.md │ │ │ ├── understanding-undefined-value-returned-from-a-function.spanish.md │ │ │ ├── understanding-uninitialized-variables.spanish.md │ │ │ ├── updating-object-properties.spanish.md │ │ │ ├── use-bracket-notation-to-find-the-first-character-in-a-string.spanish.md │ │ │ ├── use-bracket-notation-to-find-the-last-character-in-a-string.spanish.md │ │ │ ├── use-bracket-notation-to-find-the-nth-character-in-a-string.spanish.md │ │ │ ├── use-bracket-notation-to-find-the-nth-to-last-character-in-a-string.spanish.md │ │ │ ├── use-conditional-logic-with-if-statements.spanish.md │ │ │ ├── use-multiple-conditional-ternary-operators.spanish.md │ │ │ ├── use-the-conditional-ternary-operator.spanish.md │ │ │ ├── use-the-parseint-function-with-a-radix.spanish.md │ │ │ ├── use-the-parseint-function.spanish.md │ │ │ ├── using-objects-for-lookups.spanish.md │ │ │ ├── word-blanks.spanish.md │ │ │ └── write-reusable-javascript-with-functions.spanish.md │ │ ├── debugging │ │ │ ├── catch-arguments-passed-in-the-wrong-order-when-calling-a-function.spanish.md │ │ │ ├── catch-missing-open-and-closing-parenthesis-after-a-function-call.spanish.md │ │ │ ├── catch-misspelled-variable-and-function-names.spanish.md │ │ │ ├── catch-mixed-usage-of-single-and-double-quotes.spanish.md │ │ │ ├── catch-off-by-one-errors-when-using-indexing.spanish.md │ │ │ ├── catch-unclosed-parentheses-brackets-braces-and-quotes.spanish.md │ │ │ ├── catch-use-of-assignment-operator-instead-of-equality-operator.spanish.md │ │ │ ├── prevent-infinite-loops-with-a-valid-terminal-condition.spanish.md │ │ │ ├── understanding-the-differences-between-the-freecodecamp-and-browser-console.spanish.md │ │ │ ├── use-caution-when-reinitializing-variables-inside-a-loop.spanish.md │ │ │ ├── use-the-javascript-console-to-check-the-value-of-a-variable.spanish.md │ │ │ └── use-typeof-to-check-the-type-of-a-variable.spanish.md │ │ ├── es6 │ │ │ ├── compare-scopes-of-the-var-and-let-keywords.spanish.md │ │ │ ├── create-an-export-fallback-with-export-default.spanish.md │ │ │ ├── create-strings-using-template-literals.spanish.md │ │ │ ├── declare-a-read-only-variable-with-the-const-keyword.spanish.md │ │ │ ├── explore-differences-between-the-var-and-let-keywords.spanish.md │ │ │ ├── import-a-default-export.spanish.md │ │ │ ├── mutate-an-array-declared-with-const.spanish.md │ │ │ ├── prevent-object-mutation.spanish.md │ │ │ ├── set-default-parameters-for-your-functions.spanish.md │ │ │ ├── understand-the-differences-between-import-and-require.spanish.md │ │ │ ├── use--to-import-everything-from-a-file.spanish.md │ │ │ ├── use-arrow-functions-to-write-concise-anonymous-functions.spanish.md │ │ │ ├── use-class-syntax-to-define-a-constructor-function.spanish.md │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-arrays.spanish.md │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-nested-objects.spanish.md │ │ │ ├── use-destructuring-assignment-to-assign-variables-from-objects.spanish.md │ │ │ ├── use-destructuring-assignment-to-pass-an-object-as-a-functions-parameters.spanish.md │ │ │ ├── use-destructuring-assignment-with-the-rest-operator-to-reassign-array-elements.spanish.md │ │ │ ├── use-export-to-reuse-a-code-block.spanish.md │ │ │ ├── use-getters-and-setters-to-control-access-to-an-object.spanish.md │ │ │ ├── use-the-rest-operator-with-function-parameters.spanish.md │ │ │ ├── use-the-spread-operator-to-evaluate-arrays-in-place.spanish.md │ │ │ ├── write-arrow-functions-with-parameters.spanish.md │ │ │ ├── write-concise-declarative-functions-with-es6.spanish.md │ │ │ ├── write-concise-object-literal-declarations-using-simple-fields.spanish.md │ │ │ └── write-higher-order-arrow-functions.spanish.md │ │ ├── functional-programming │ │ │ ├── add-elements-to-the-end-of-an-array-using-concat-instead-of-push.spanish.md │ │ │ ├── apply-functional-programming-to-convert-strings-to-url-slugs.spanish.md │ │ │ ├── avoid-mutations-and-side-effects-using-functional-programming.spanish.md │ │ │ ├── combine-an-array-into-a-string-using-the-join-method.spanish.md │ │ │ ├── combine-two-arrays-using-the-concat-method.spanish.md │ │ │ ├── implement-map-on-a-prototype.spanish.md │ │ │ ├── implement-the-filter-method-on-a-prototype.spanish.md │ │ │ ├── introduction-to-currying-and-partial-application.spanish.md │ │ │ ├── learn-about-functional-programming.spanish.md │ │ │ ├── pass-arguments-to-avoid-external-dependence-in-a-function.spanish.md │ │ │ ├── refactor-global-variables-out-of-functions.spanish.md │ │ │ ├── remove-elements-from-an-array-using-slice-instead-of-splice.spanish.md │ │ │ ├── return-a-sorted-array-without-changing-the-original-array.spanish.md │ │ │ ├── return-part-of-an-array-using-the-slice-method.spanish.md │ │ │ ├── sort-an-array-alphabetically-using-the-sort-method.spanish.md │ │ │ ├── split-a-string-into-an-array-using-the-split-method.spanish.md │ │ │ ├── understand-functional-programming-terminology.spanish.md │ │ │ ├── understand-the-hazards-of-using-imperative-code.spanish.md │ │ │ ├── use-the-every-method-to-check-that-every-element-in-an-array-meets-a-criteria.spanish.md │ │ │ ├── use-the-filter-method-to-extract-data-from-an-array.spanish.md │ │ │ ├── use-the-map-method-to-extract-data-from-an-array.spanish.md │ │ │ ├── use-the-reduce-method-to-analyze-data.spanish.md │ │ │ └── use-the-some-method-to-check-that-any-elements-in-an-array-meet-a-criteria.spanish.md │ │ ├── intermediate-algorithm-scripting │ │ │ ├── arguments-optional.spanish.md │ │ │ ├── binary-agents.spanish.md │ │ │ ├── convert-html-entities.spanish.md │ │ │ ├── diff-two-arrays.spanish.md │ │ │ ├── dna-pairing.spanish.md │ │ │ ├── drop-it.spanish.md │ │ │ ├── everything-be-true.spanish.md │ │ │ ├── make-a-person.spanish.md │ │ │ ├── map-the-debris.spanish.md │ │ │ ├── missing-letters.spanish.md │ │ │ ├── pig-latin.spanish.md │ │ │ ├── search-and-replace.spanish.md │ │ │ ├── seek-and-destroy.spanish.md │ │ │ ├── smallest-common-multiple.spanish.md │ │ │ ├── sorted-union.spanish.md │ │ │ ├── spinal-tap-case.spanish.md │ │ │ ├── steamroller.spanish.md │ │ │ ├── sum-all-numbers-in-a-range.spanish.md │ │ │ ├── sum-all-odd-fibonacci-numbers.spanish.md │ │ │ ├── sum-all-primes.spanish.md │ │ │ └── wherefore-art-thou.spanish.md │ │ ├── javascript-algorithms-and-data-structures-projects │ │ │ ├── caesars-cipher.spanish.md │ │ │ ├── cash-register.spanish.md │ │ │ ├── palindrome-checker.spanish.md │ │ │ ├── roman-numeral-converter.spanish.md │ │ │ └── telephone-number-validator.spanish.md │ │ ├── object-oriented-programming │ │ │ ├── add-methods-after-inheritance.spanish.md │ │ │ ├── change-the-prototype-to-a-new-object.spanish.md │ │ │ ├── create-a-basic-javascript-object.spanish.md │ │ │ ├── create-a-method-on-an-object.spanish.md │ │ │ ├── define-a-constructor-function.spanish.md │ │ │ ├── extend-constructors-to-receive-arguments.spanish.md │ │ │ ├── inherit-behaviors-from-a-supertype.spanish.md │ │ │ ├── iterate-over-all-properties.spanish.md │ │ │ ├── make-code-more-reusable-with-the-this-keyword.spanish.md │ │ │ ├── override-inherited-methods.spanish.md │ │ │ ├── remember-to-set-the-constructor-property-when-changing-the-prototype.spanish.md │ │ │ ├── reset-an-inherited-constructor-property.spanish.md │ │ │ ├── set-the-childs-prototype-to-an-instance-of-the-parent.spanish.md │ │ │ ├── understand-own-properties.spanish.md │ │ │ ├── understand-the-constructor-property.spanish.md │ │ │ ├── understand-the-immediately-invoked-function-expression-iife.spanish.md │ │ │ ├── understand-the-prototype-chain.spanish.md │ │ │ ├── understand-where-an-objects-prototype-comes-from.spanish.md │ │ │ ├── use-a-constructor-to-create-objects.spanish.md │ │ │ ├── use-a-mixin-to-add-common-behavior-between-unrelated-objects.spanish.md │ │ │ ├── use-an-iife-to-create-a-module.spanish.md │ │ │ ├── use-closure-to-protect-properties-within-an-object-from-being-modified-externally.spanish.md │ │ │ ├── use-dot-notation-to-access-the-properties-of-an-object.spanish.md │ │ │ ├── use-inheritance-so-you-dont-repeat-yourself.spanish.md │ │ │ ├── use-prototype-properties-to-reduce-duplicate-code.spanish.md │ │ │ └── verify-an-objects-constructor-with-instanceof.spanish.md │ │ └── regular-expressions │ │ │ ├── check-for-all-or-none.spanish.md │ │ │ ├── extract-matches.spanish.md │ │ │ ├── find-characters-with-lazy-matching.spanish.md │ │ │ ├── find-more-than-the-first-match.spanish.md │ │ │ ├── find-one-or-more-criminals-in-a-hunt.spanish.md │ │ │ ├── ignore-case-while-matching.spanish.md │ │ │ ├── match-a-literal-string-with-different-possibilities.spanish.md │ │ │ ├── match-all-letters-and-numbers.spanish.md │ │ │ ├── match-all-non-numbers.spanish.md │ │ │ ├── match-all-numbers.spanish.md │ │ │ ├── match-anything-with-wildcard-period.spanish.md │ │ │ ├── match-beginning-string-patterns.spanish.md │ │ │ ├── match-characters-that-occur-one-or-more-times.spanish.md │ │ │ ├── match-characters-that-occur-zero-or-more-times.spanish.md │ │ │ ├── match-ending-string-patterns.spanish.md │ │ │ ├── match-everything-but-letters-and-numbers.spanish.md │ │ │ ├── match-letters-of-the-alphabet.spanish.md │ │ │ ├── match-literal-strings.spanish.md │ │ │ ├── match-non-whitespace-characters.spanish.md │ │ │ ├── match-numbers-and-letters-of-the-alphabet.spanish.md │ │ │ ├── match-single-character-with-multiple-possibilities.spanish.md │ │ │ ├── match-single-characters-not-specified.spanish.md │ │ │ ├── match-whitespace.spanish.md │ │ │ ├── positive-and-negative-lookahead.spanish.md │ │ │ ├── remove-whitespace-from-start-and-end.spanish.md │ │ │ ├── restrict-possible-usernames.spanish.md │ │ │ ├── reuse-patterns-using-capture-groups.spanish.md │ │ │ ├── specify-exact-number-of-matches.spanish.md │ │ │ ├── specify-only-the-lower-number-of-matches.spanish.md │ │ │ ├── specify-upper-and-lower-number-of-matches.spanish.md │ │ │ ├── use-capture-groups-to-search-and-replace.spanish.md │ │ │ └── using-the-test-method.spanish.md │ │ ├── 03-front-end-libraries │ │ ├── bootstrap │ │ │ ├── add-elements-within-your-bootstrap-wells.spanish.md │ │ │ ├── add-font-awesome-icons-to-all-of-our-buttons.spanish.md │ │ │ ├── add-font-awesome-icons-to-our-buttons.spanish.md │ │ │ ├── add-id-attributes-to-bootstrap-elements.spanish.md │ │ │ ├── apply-the-default-bootstrap-button-style.spanish.md │ │ │ ├── call-out-optional-actions-with-btn-info.spanish.md │ │ │ ├── center-text-with-bootstrap.spanish.md │ │ │ ├── create-a-block-element-bootstrap-button.spanish.md │ │ │ ├── create-a-bootstrap-button.spanish.md │ │ │ ├── create-a-bootstrap-headline.spanish.md │ │ │ ├── create-a-bootstrap-row.spanish.md │ │ │ ├── create-a-class-to-target-with-jquery-selectors.spanish.md │ │ │ ├── create-a-custom-heading.spanish.md │ │ │ ├── create-bootstrap-wells.spanish.md │ │ │ ├── ditch-custom-css-for-bootstrap.spanish.md │ │ │ ├── give-each-element-a-unique-id.spanish.md │ │ │ ├── house-our-page-within-a-bootstrap-container-fluid-div.spanish.md │ │ │ ├── label-bootstrap-buttons.spanish.md │ │ │ ├── label-bootstrap-wells.spanish.md │ │ │ ├── line-up-form-elements-responsively-with-bootstrap.spanish.md │ │ │ ├── make-images-mobile-responsive.spanish.md │ │ │ ├── responsively-style-checkboxes.spanish.md │ │ │ ├── responsively-style-radio-buttons.spanish.md │ │ │ ├── split-your-bootstrap-row.spanish.md │ │ │ ├── style-text-inputs-as-form-controls.spanish.md │ │ │ ├── taste-the-bootstrap-button-color-rainbow.spanish.md │ │ │ ├── use-a-span-to-target-inline-elements.spanish.md │ │ │ ├── use-comments-to-clarify-code.spanish.md │ │ │ ├── use-responsive-design-with-bootstrap-fluid-containers.spanish.md │ │ │ ├── use-the-bootstrap-grid-to-put-elements-side-by-side.spanish.md │ │ │ └── warn-your-users-of-a-dangerous-action-with-btn-danger.spanish.md │ │ ├── front-end-libraries-projects │ │ │ ├── build-a-drum-machine.spanish.md │ │ │ ├── build-a-javascript-calculator.spanish.md │ │ │ ├── build-a-markdown-previewer.spanish.md │ │ │ ├── build-a-pomodoro-clock.spanish.md │ │ │ └── build-a-random-quote-machine.spanish.md │ │ ├── jquery │ │ │ ├── change-text-inside-an-element-using-jquery.spanish.md │ │ │ ├── change-the-css-of-an-element-using-jquery.spanish.md │ │ │ ├── clone-an-element-using-jquery.spanish.md │ │ │ ├── delete-your-jquery-functions.spanish.md │ │ │ ├── disable-an-element-using-jquery.spanish.md │ │ │ ├── learn-how-script-tags-and-document-ready-work.spanish.md │ │ │ ├── remove-an-element-using-jquery.spanish.md │ │ │ ├── remove-classes-from-an-element-with-jquery.spanish.md │ │ │ ├── target-a-specific-child-of-an-element-using-jquery.spanish.md │ │ │ ├── target-elements-by-class-using-jquery.spanish.md │ │ │ ├── target-elements-by-id-using-jquery.spanish.md │ │ │ ├── target-even-elements-using-jquery.spanish.md │ │ │ ├── target-html-elements-with-selectors-using-jquery.spanish.md │ │ │ ├── target-the-children-of-an-element-using-jquery.spanish.md │ │ │ ├── target-the-parent-of-an-element-using-jquery.spanish.md │ │ │ ├── target-the-same-element-with-multiple-jquery-selectors.spanish.md │ │ │ ├── use-appendto-to-move-elements-with-jquery.spanish.md │ │ │ └── use-jquery-to-modify-the-entire-page.spanish.md │ │ ├── react-and-redux │ │ │ ├── connect-redux-to-react.spanish.md │ │ │ ├── connect-redux-to-the-messages-app.spanish.md │ │ │ ├── extract-local-state-into-redux.spanish.md │ │ │ ├── extract-state-logic-to-redux.spanish.md │ │ │ ├── getting-started-with-react-redux.spanish.md │ │ │ ├── manage-state-locally-first.spanish.md │ │ │ ├── map-dispatch-to-props.spanish.md │ │ │ ├── map-state-to-props.spanish.md │ │ │ ├── moving-forward-from-here.spanish.md │ │ │ └── use-provider-to-connect-redux-to-react.spanish.md │ │ ├── react │ │ │ ├── access-props-using-this.props.spanish.md │ │ │ ├── add-comments-in-jsx.spanish.md │ │ │ ├── add-event-listeners.spanish.md │ │ │ ├── add-inline-styles-in-react.spanish.md │ │ │ ├── bind-this-to-a-class-method.spanish.md │ │ │ ├── change-inline-css-conditionally-based-on-component-state.spanish.md │ │ │ ├── compose-react-components.spanish.md │ │ │ ├── create-a-complex-jsx-element.spanish.md │ │ │ ├── create-a-component-with-composition.spanish.md │ │ │ ├── create-a-controlled-form.spanish.md │ │ │ ├── create-a-controlled-input.spanish.md │ │ │ ├── create-a-react-component.spanish.md │ │ │ ├── create-a-simple-jsx-element.spanish.md │ │ │ ├── create-a-stateful-component.spanish.md │ │ │ ├── create-a-stateless-functional-component.spanish.md │ │ │ ├── define-an-html-class-in-jsx.spanish.md │ │ │ ├── give-sibling-elements-a-unique-key-attribute.spanish.md │ │ │ ├── introducing-inline-styles.spanish.md │ │ │ ├── learn-about-self-closing-jsx-tags.spanish.md │ │ │ ├── manage-updates-with-lifecycle-methods.spanish.md │ │ │ ├── optimize-re-renders-with-shouldcomponentupdate.spanish.md │ │ │ ├── override-default-props.spanish.md │ │ │ ├── pass-a-callback-as-props.spanish.md │ │ │ ├── pass-an-array-as-props.spanish.md │ │ │ ├── pass-props-to-a-stateless-functional-component.spanish.md │ │ │ ├── pass-state-as-props-to-child-components.spanish.md │ │ │ ├── render-a-class-component-to-the-dom.spanish.md │ │ │ ├── render-conditionally-from-props.spanish.md │ │ │ ├── render-html-elements-to-the-dom.spanish.md │ │ │ ├── render-react-on-the-server-with-rendertostring.spanish.md │ │ │ ├── render-state-in-the-user-interface-another-way.spanish.md │ │ │ ├── render-state-in-the-user-interface.spanish.md │ │ │ ├── render-with-an-if-else-condition.spanish.md │ │ │ ├── review-using-props-with-stateless-functional-components.spanish.md │ │ │ ├── set-state-with-this.setstate.spanish.md │ │ │ ├── use--for-a-more-concise-conditional.spanish.md │ │ │ ├── use-a-ternary-expression-for-conditional-rendering.spanish.md │ │ │ ├── use-advanced-javascript-in-react-render-method.spanish.md │ │ │ ├── use-array.filter-to-dynamically-filter-an-array.spanish.md │ │ │ ├── use-array.map-to-dynamically-render-elements.spanish.md │ │ │ ├── use-default-props.spanish.md │ │ │ ├── use-proptypes-to-define-the-props-you-expect.spanish.md │ │ │ ├── use-react-to-render-nested-components.spanish.md │ │ │ ├── use-state-to-toggle-an-element.spanish.md │ │ │ ├── use-the-lifecycle-method-componentdidmount.spanish.md │ │ │ ├── use-the-lifecycle-method-componentwillmount.spanish.md │ │ │ ├── write-a-react-component-from-scratch.spanish.md │ │ │ └── write-a-simple-counter.spanish.md │ │ ├── redux │ │ │ ├── combine-multiple-reducers.spanish.md │ │ │ ├── copy-an-object-with-object.assign.spanish.md │ │ │ ├── create-a-redux-store.spanish.md │ │ │ ├── define-a-redux-action.spanish.md │ │ │ ├── define-an-action-creator.spanish.md │ │ │ ├── dispatch-an-action-event.spanish.md │ │ │ ├── get-state-from-the-redux-store.spanish.md │ │ │ ├── handle-an-action-in-the-store.spanish.md │ │ │ ├── never-mutate-state.spanish.md │ │ │ ├── register-a-store-listener.spanish.md │ │ │ ├── remove-an-item-from-an-array.spanish.md │ │ │ ├── send-action-data-to-the-store.spanish.md │ │ │ ├── use-a-switch-statement-to-handle-multiple-actions.spanish.md │ │ │ ├── use-const-for-action-types.spanish.md │ │ │ ├── use-middleware-to-handle-asynchronous-actions.spanish.md │ │ │ ├── use-the-spread-operator-on-arrays.spanish.md │ │ │ └── write-a-counter-with-redux.spanish.md │ │ └── sass │ │ │ ├── apply-a-style-until-a-condition-is-met-with-while.spanish.md │ │ │ ├── create-reusable-css-with-mixins.spanish.md │ │ │ ├── extend-one-set-of-css-styles-to-another-element.spanish.md │ │ │ ├── nest-css-with-sass.spanish.md │ │ │ ├── split-your-styles-into-smaller-chunks-with-partials.spanish.md │ │ │ ├── store-data-with-sass-variables.spanish.md │ │ │ ├── use-each-to-map-over-items-in-a-list.spanish.md │ │ │ ├── use-for-to-create-a-sass-loop.spanish.md │ │ │ └── use-if-and-else-to-add-logic-to-your-styles.spanish.md │ │ ├── 04-data-visualization │ │ ├── data-visualization-projects │ │ │ ├── visualize-data-with-a-bar-chart.spanish.md │ │ │ ├── visualize-data-with-a-choropleth-map.spanish.md │ │ │ ├── visualize-data-with-a-heat-map.spanish.md │ │ │ ├── visualize-data-with-a-scatterplot-graph.spanish.md │ │ │ └── visualize-data-with-a-treemap-diagram.spanish.md │ │ ├── data-visualization-with-d3 │ │ │ ├── add-a-hover-effect-to-a-d3-element.spanish.md │ │ │ ├── add-a-tooltip-to-a-d3-element.spanish.md │ │ │ ├── add-attributes-to-the-circle-elements.spanish.md │ │ │ ├── add-axes-to-a-visualization.spanish.md │ │ │ ├── add-classes-with-d3.spanish.md │ │ │ ├── add-document-elements-with-d3.spanish.md │ │ │ ├── add-inline-styling-to-elements.spanish.md │ │ │ ├── add-labels-to-d3-elements.spanish.md │ │ │ ├── add-labels-to-scatter-plot-circles.spanish.md │ │ │ ├── change-styles-based-on-data.spanish.md │ │ │ ├── change-the-color-of-an-svg-element.spanish.md │ │ │ ├── change-the-presentation-of-a-bar-chart.spanish.md │ │ │ ├── create-a-bar-for-each-data-point-in-the-set.spanish.md │ │ │ ├── create-a-linear-scale-with-d3.spanish.md │ │ │ ├── create-a-scatterplot-with-svg-circles.spanish.md │ │ │ ├── display-shapes-with-svg.spanish.md │ │ │ ├── dynamically-change-the-height-of-each-bar.spanish.md │ │ │ ├── dynamically-set-the-coordinates-for-each-bar.spanish.md │ │ │ ├── invert-svg-elements.spanish.md │ │ │ ├── learn-about-svg-in-d3.spanish.md │ │ │ ├── select-a-group-of-elements-with-d3.spanish.md │ │ │ ├── set-a-domain-and-a-range-on-a-scale.spanish.md │ │ │ ├── style-d3-labels.spanish.md │ │ │ ├── update-the-height-of-an-element-dynamically.spanish.md │ │ │ ├── use-a-pre-defined-scale-to-place-elements.spanish.md │ │ │ ├── use-dynamic-scales.spanish.md │ │ │ ├── use-the-d3.max-and-d3.min-functions-to-find-minimum-and-maximum-values-in-a-dataset.spanish.md │ │ │ ├── work-with-data-in-d3.spanish.md │ │ │ └── work-with-dynamic-data-in-d3.spanish.md │ │ └── json-apis-and-ajax │ │ │ ├── access-the-json-data-from-an-api.spanish.md │ │ │ ├── change-text-with-click-events.spanish.md │ │ │ ├── convert-json-data-to-html.spanish.md │ │ │ ├── get-geolocation-data-to-find-a-users-gps-coordinates.spanish.md │ │ │ ├── get-json-with-the-javascript-xmlhttprequest-method.spanish.md │ │ │ ├── handle-click-events-with-javascript-using-the-onclick-property.spanish.md │ │ │ ├── post-data-with-the-javascript-xmlhttprequest-method.spanish.md │ │ │ ├── pre-filter-json-to-get-the-data-you-need.spanish.md │ │ │ └── render-images-from-data-sources.spanish.md │ │ ├── 05-apis-and-microservices │ │ ├── apis-and-microservices-projects │ │ │ ├── exercise-tracker.spanish.md │ │ │ ├── file-metadata-microservice.spanish.md │ │ │ ├── request-header-parser-microservice.spanish.md │ │ │ ├── timestamp-microservice.spanish.md │ │ │ └── url-shortener-microservice.spanish.md │ │ ├── basic-node-and-express │ │ │ ├── chain-middleware-to-create-a-time-server.spanish.md │ │ │ ├── get-data-from-post-requests.spanish.md │ │ │ ├── get-query-parameter-input-from-the-client.spanish.md │ │ │ ├── get-route-parameter-input-from-the-client.spanish.md │ │ │ ├── implement-a-root-level-request-logger-middleware.spanish.md │ │ │ ├── meet-the-node-console.spanish.md │ │ │ ├── serve-an-html-file.spanish.md │ │ │ ├── serve-json-on-a-specific-route.spanish.md │ │ │ ├── serve-static-assets.spanish.md │ │ │ ├── start-a-working-express-server.spanish.md │ │ │ ├── use-body-parser-to-parse-post-requests.spanish.md │ │ │ └── use-the-.env-file.spanish.md │ │ ├── managing-packages-with-npm │ │ │ ├── add-a-description-to-your-package.json.spanish.md │ │ │ ├── add-a-license-to-your-package.json.spanish.md │ │ │ ├── add-a-version-to-your-package.json.spanish.md │ │ │ ├── add-keywords-to-your-package.json.spanish.md │ │ │ ├── expand-your-project-with-external-packages-from-npm.spanish.md │ │ │ ├── how-to-use-package.json-the-core-of-any-node.js-project-or-npm-package.spanish.md │ │ │ ├── manage-npm-dependencies-by-understanding-semantic-versioning.spanish.md │ │ │ ├── remove-a-package-from-your-dependencies.spanish.md │ │ │ ├── use-the-caret-character-to-use-the-latest-minor-version-of-a-dependency.spanish.md │ │ │ └── use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency.spanish.md │ │ └── mongodb-and-mongoose │ │ │ ├── chain-search-query-helpers-to-narrow-search-results.spanish.md │ │ │ ├── create-a-model.spanish.md │ │ │ ├── create-and-save-a-record-of-a-model.spanish.md │ │ │ ├── create-many-records-with-model.create.spanish.md │ │ │ ├── delete-many-documents-with-model.remove.spanish.md │ │ │ ├── delete-one-document-using-model.findbyidandremove.spanish.md │ │ │ ├── install-and-set-up-mongoose.spanish.md │ │ │ ├── perform-classic-updates-by-running-find-edit-then-save.spanish.md │ │ │ ├── perform-new-updates-on-a-document-using-model.findoneandupdate.spanish.md │ │ │ ├── use-model.find-to-search-your-database.spanish.md │ │ │ ├── use-model.findbyid-to-search-your-database-by-id.spanish.md │ │ │ └── use-model.findone-to-return-a-single-matching-document-from-your-database.spanish.md │ │ ├── 06-information-security-and-quality-assurance │ │ ├── advanced-node-and-express │ │ │ ├── announce-new-users.spanish.md │ │ │ ├── authentication-strategies.spanish.md │ │ │ ├── authentication-with-socket.io.spanish.md │ │ │ ├── clean-up-your-project-with-modules.spanish.md │ │ │ ├── communicate-by-emitting.spanish.md │ │ │ ├── create-new-middleware.spanish.md │ │ │ ├── handle-a-disconnect.spanish.md │ │ │ ├── hashing-your-passwords.spanish.md │ │ │ ├── how-to-put-a-profile-together.spanish.md │ │ │ ├── how-to-use-passport-strategies.spanish.md │ │ │ ├── implement-the-serialization-of-a-passport-user.spanish.md │ │ │ ├── implementation-of-social-authentication-ii.spanish.md │ │ │ ├── implementation-of-social-authentication-iii.spanish.md │ │ │ ├── implementation-of-social-authentication.spanish.md │ │ │ ├── logging-a-user-out.spanish.md │ │ │ ├── registration-of-new-users.spanish.md │ │ │ ├── send-and-display-chat-messages.spanish.md │ │ │ ├── serialization-of-a-user-object.spanish.md │ │ │ ├── set-up-a-template-engine.spanish.md │ │ │ ├── set-up-passport.spanish.md │ │ │ ├── set-up-the-environment.spanish.md │ │ │ └── use-a-template-engines-powers.spanish.md │ │ ├── information-security-and-quality-assurance-projects │ │ │ ├── anonymous-message-board.spanish.md │ │ │ ├── issue-tracker.spanish.md │ │ │ ├── metric-imperial-converter.spanish.md │ │ │ ├── personal-library.spanish.md │ │ │ └── stock-price-checker.spanish.md │ │ ├── information-security-with-helmetjs │ │ │ ├── ask-browsers-to-access-your-site-via-https-only-with-helmet.hsts.spanish.md │ │ │ ├── avoid-inferring-the-response-mime-type-with-helmet.nosniff.spanish.md │ │ │ ├── configure-helmet-using-the-parent-helmet-middleware.spanish.md │ │ │ ├── disable-client-side-caching-with-helmet.nocache.spanish.md │ │ │ ├── disable-dns-prefetching-with-helmet.dnsprefetchcontrol.spanish.md │ │ │ ├── hash-and-compare-passwords-asynchronously.spanish.md │ │ │ ├── hash-and-compare-passwords-synchronously.spanish.md │ │ │ ├── hide-potentially-dangerous-information-using-helmet.hidepoweredby.spanish.md │ │ │ ├── install-and-require-helmet.spanish.md │ │ │ ├── mitigate-the-risk-of-clickjacking-with-helmet.frameguard.spanish.md │ │ │ ├── mitigate-the-risk-of-cross-site-scripting-xss-attacks-with-helmet.xssfilter.spanish.md │ │ │ ├── prevent-ie-from-opening-untrusted-html-with-helmet.ienoopen.spanish.md │ │ │ ├── set-a-content-security-policy-with-helmet.contentsecuritypolicy.spanish.md │ │ │ └── understand-bcrypt-hashes.spanish.md │ │ └── quality-assurance-and-testing-with-chai │ │ │ ├── assert-deep-equality-with-.deepequal-and-.notdeepequal.spanish.md │ │ │ ├── compare-the-properties-of-two-elements.spanish.md │ │ │ ├── learn-how-javascript-assertions-work.spanish.md │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iii---put-method.spanish.md │ │ │ ├── run-functional-tests-on-an-api-response-using-chai-http-iv---put-method.spanish.md │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http-ii.spanish.md │ │ │ ├── run-functional-tests-on-api-endpoints-using-chai-http.spanish.md │ │ │ ├── run-functional-tests-using-a-headless-browser-ii.spanish.md │ │ │ ├── run-functional-tests-using-a-headless-browser.spanish.md │ │ │ ├── test-for-truthiness.spanish.md │ │ │ ├── test-if-a-string-contains-a-substring.spanish.md │ │ │ ├── test-if-a-value-falls-within-a-specific-range.spanish.md │ │ │ ├── test-if-a-value-is-a-string.spanish.md │ │ │ ├── test-if-a-value-is-an-array.spanish.md │ │ │ ├── test-if-a-value-is-of-a-specific-data-structure-type.spanish.md │ │ │ ├── test-if-a-variable-or-function-is-defined.spanish.md │ │ │ ├── test-if-an-array-contains-an-item.spanish.md │ │ │ ├── test-if-an-object-has-a-property.spanish.md │ │ │ ├── test-if-an-object-is-an-instance-of-a-constructor.spanish.md │ │ │ ├── test-if-one-value-is-below-or-at-least-as-large-as-another.spanish.md │ │ │ ├── use-assert.isok-and-assert.isnotok.spanish.md │ │ │ ├── use-regular-expressions-to-test-a-string.spanish.md │ │ │ ├── use-the-double-equals-to-assert-equality.spanish.md │ │ │ └── use-the-triple-equals-to-assert-strict-equality.spanish.md │ │ ├── 08-coding-interview-prep │ │ ├── algorithms │ │ │ ├── find-the-symmetric-difference.spanish.md │ │ │ ├── implement-bubble-sort.spanish.md │ │ │ ├── implement-insertion-sort.spanish.md │ │ │ ├── implement-merge-sort.spanish.md │ │ │ ├── implement-quick-sort.spanish.md │ │ │ ├── implement-selection-sort.spanish.md │ │ │ ├── inventory-update.spanish.md │ │ │ ├── no-repeats-please.spanish.md │ │ │ └── pairwise.spanish.md │ │ ├── data-structures │ │ │ ├── add-a-new-element-to-a-binary-search-tree.spanish.md │ │ │ ├── add-elements-at-a-specific-index-in-a-linked-list.spanish.md │ │ │ ├── adjacency-list.spanish.md │ │ │ ├── adjacency-matrix.spanish.md │ │ │ ├── breadth-first-search.spanish.md │ │ │ ├── check-if-an-element-is-present-in-a-binary-search-tree.spanish.md │ │ │ ├── create-a-circular-queue.spanish.md │ │ │ ├── create-a-doubly-linked-list.spanish.md │ │ │ ├── create-a-hash-table.spanish.md │ │ │ ├── create-a-linked-list-class.spanish.md │ │ │ ├── create-a-map-data-structure.spanish.md │ │ │ ├── create-a-priority-queue-class.spanish.md │ │ │ ├── create-a-queue-class.spanish.md │ │ │ ├── create-a-set-class.spanish.md │ │ │ ├── create-a-stack-class.spanish.md │ │ │ ├── create-a-trie-search-tree.spanish.md │ │ │ ├── create-an-es6-javascript-map.spanish.md │ │ │ ├── create-and-add-to-sets-in-es6.spanish.md │ │ │ ├── delete-a-leaf-node-in-a-binary-search-tree.spanish.md │ │ │ ├── delete-a-node-with-one-child-in-a-binary-search-tree.spanish.md │ │ │ ├── delete-a-node-with-two-children-in-a-binary-search-tree.spanish.md │ │ │ ├── depth-first-search.spanish.md │ │ │ ├── find-the-minimum-and-maximum-height-of-a-binary-search-tree.spanish.md │ │ │ ├── find-the-minimum-and-maximum-value-in-a-binary-search-tree.spanish.md │ │ │ ├── implement-heap-sort-with-a-min-heap.spanish.md │ │ │ ├── incidence-matrix.spanish.md │ │ │ ├── insert-an-element-into-a-max-heap.spanish.md │ │ │ ├── invert-a-binary-tree.spanish.md │ │ │ ├── learn-how-a-stack-works.spanish.md │ │ │ ├── perform-a-difference-on-two-sets-of-data.spanish.md │ │ │ ├── perform-a-subset-check-on-two-sets-of-data.spanish.md │ │ │ ├── perform-a-union-on-two-sets.spanish.md │ │ │ ├── perform-an-intersection-on-two-sets-of-data.spanish.md │ │ │ ├── remove-an-element-from-a-max-heap.spanish.md │ │ │ ├── remove-elements-from-a-linked-list-by-index.spanish.md │ │ │ ├── remove-elements-from-a-linked-list.spanish.md │ │ │ ├── remove-from-a-set.spanish.md │ │ │ ├── remove-items-from-a-set-in-es6.spanish.md │ │ │ ├── reverse-a-doubly-linked-list.spanish.md │ │ │ ├── search-within-a-linked-list.spanish.md │ │ │ ├── size-of-the-set.spanish.md │ │ │ ├── typed-arrays.spanish.md │ │ │ ├── use-.has-and-.size-on-an-es6-set.spanish.md │ │ │ ├── use-breadth-first-search-in-a-binary-search-tree.spanish.md │ │ │ ├── use-depth-first-search-in-a-binary-search-tree.spanish.md │ │ │ ├── use-spread-and-notes-for-es5-set-integration.spanish.md │ │ │ └── work-with-nodes-in-a-linked-list.spanish.md │ │ ├── project-euler │ │ │ ├── problem-1-multiples-of-3-and-5.spanish.md │ │ │ ├── problem-10-summation-of-primes.spanish.md │ │ │ ├── problem-100-arranged-probability.spanish.md │ │ │ ├── problem-101-optimum-polynomial.spanish.md │ │ │ ├── problem-102-triangle-containment.spanish.md │ │ │ ├── problem-103-special-subset-sums-optimum.spanish.md │ │ │ ├── problem-104-pandigital-fibonacci-ends.spanish.md │ │ │ ├── problem-105-special-subset-sums-testing.spanish.md │ │ │ ├── problem-106-special-subset-sums-meta-testing.spanish.md │ │ │ ├── problem-107-minimal-network.spanish.md │ │ │ ├── problem-108-diophantine-reciprocals-i.spanish.md │ │ │ ├── problem-109-darts.spanish.md │ │ │ ├── problem-11-largest-product-in-a-grid.spanish.md │ │ │ ├── problem-110-diophantine-reciprocals-ii.spanish.md │ │ │ ├── problem-111-primes-with-runs.spanish.md │ │ │ ├── problem-112-bouncy-numbers.spanish.md │ │ │ ├── problem-113-non-bouncy-numbers.spanish.md │ │ │ ├── problem-114-counting-block-combinations-i.spanish.md │ │ │ ├── problem-115-counting-block-combinations-ii.spanish.md │ │ │ ├── problem-116-red-green-or-blue-tiles.spanish.md │ │ │ ├── problem-117-red-green-and-blue-tiles.spanish.md │ │ │ ├── problem-118-pandigital-prime-sets.spanish.md │ │ │ ├── problem-119-digit-power-sum.spanish.md │ │ │ ├── problem-12-highly-divisible-triangular-number.spanish.md │ │ │ ├── problem-120-square-remainders.spanish.md │ │ │ ├── problem-121-disc-game-prize-fund.spanish.md │ │ │ ├── problem-122-efficient-exponentiation.spanish.md │ │ │ ├── problem-123-prime-square-remainders.spanish.md │ │ │ ├── problem-124-ordered-radicals.spanish.md │ │ │ ├── problem-125-palindromic-sums.spanish.md │ │ │ ├── problem-126-cuboid-layers.spanish.md │ │ │ ├── problem-127-abc-hits.spanish.md │ │ │ ├── problem-128-hexagonal-tile-differences.spanish.md │ │ │ ├── problem-129-repunit-divisibility.spanish.md │ │ │ ├── problem-13-large-sum.spanish.md │ │ │ ├── problem-130-composites-with-prime-repunit-property.spanish.md │ │ │ ├── problem-131-prime-cube-partnership.spanish.md │ │ │ ├── problem-132-large-repunit-factors.spanish.md │ │ │ ├── problem-133-repunit-nonfactors.spanish.md │ │ │ ├── problem-134-prime-pair-connection.spanish.md │ │ │ ├── problem-135-same-differences.spanish.md │ │ │ ├── problem-136-singleton-difference.spanish.md │ │ │ ├── problem-137-fibonacci-golden-nuggets.spanish.md │ │ │ ├── problem-138-special-isosceles-triangles.spanish.md │ │ │ ├── problem-139-pythagorean-tiles.spanish.md │ │ │ ├── problem-14-longest-collatz-sequence.spanish.md │ │ │ ├── problem-140-modified-fibonacci-golden-nuggets.spanish.md │ │ │ ├── problem-141-investigating-progressive-numbers-n-which-are-also-square.spanish.md │ │ │ ├── problem-142-perfect-square-collection.spanish.md │ │ │ ├── problem-143-investigating-the-torricelli-point-of-a-triangle.spanish.md │ │ │ ├── problem-144-investigating-multiple-reflections-of-a-laser-beam.spanish.md │ │ │ ├── problem-145-how-many-reversible-numbers-are-there-below-one-billion.spanish.md │ │ │ ├── problem-146-investigating-a-prime-pattern.spanish.md │ │ │ ├── problem-147-rectangles-in-cross-hatched-grids.spanish.md │ │ │ ├── problem-148-exploring-pascals-triangle.spanish.md │ │ │ ├── problem-149-searching-for-a-maximum-sum-subsequence.spanish.md │ │ │ ├── problem-15-lattice-paths.spanish.md │ │ │ ├── problem-150-searching-a-triangular-array-for-a-sub-triangle-having-minimum-sum.spanish.md │ │ │ ├── problem-151-paper-sheets-of-standard-sizes-an-expected-value-problem.spanish.md │ │ │ ├── problem-152-writing-one-half-as-a-sum-of-inverse-squares.spanish.md │ │ │ ├── problem-153-investigating-gaussian-integers.spanish.md │ │ │ ├── problem-154-exploring-pascals-pyramid.spanish.md │ │ │ ├── problem-155-counting-capacitor-circuits.spanish.md │ │ │ ├── problem-156-counting-digits.spanish.md │ │ │ ├── problem-157-solving-the-diophantine-equation.spanish.md │ │ │ ├── problem-158-exploring-strings-for-which-only-one-character-comes-lexicographically-after-its-neighbour-to-the-left.spanish.md │ │ │ ├── problem-159-digital-root-sums-of-factorisations.spanish.md │ │ │ ├── problem-16-power-digit-sum.spanish.md │ │ │ ├── problem-160-factorial-trailing-digits.spanish.md │ │ │ ├── problem-161-triominoes.spanish.md │ │ │ ├── problem-162-hexadecimal-numbers.spanish.md │ │ │ ├── problem-163-cross-hatched-triangles.spanish.md │ │ │ ├── problem-164-numbers-for-which-no-three-consecutive-digits-have-a-sum-greater-than-a-given-value.spanish.md │ │ │ ├── problem-165-intersections.spanish.md │ │ │ ├── problem-166-criss-cross.spanish.md │ │ │ ├── problem-167-investigating-ulam-sequences.spanish.md │ │ │ ├── problem-168-number-rotations.spanish.md │ │ │ ├── problem-169-exploring-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.spanish.md │ │ │ ├── problem-17-number-letter-counts.spanish.md │ │ │ ├── problem-170-find-the-largest-0-to-9-pandigital-that-can-be-formed-by-concatenating-products.spanish.md │ │ │ ├── problem-171-finding-numbers-for-which-the-sum-of-the-squares-of-the-digits-is-a-square.spanish.md │ │ │ ├── problem-172-investigating-numbers-with-few-repeated-digits.spanish.md │ │ │ ├── problem-173-using-up-to-one-million-tiles-how-many-different-hollow-square-laminae-can-be-formed.spanish.md │ │ │ ├── problem-174-counting-the-number-of-hollow-square-laminae-that-can-form-one-two-three-...-distinct-arrangements.spanish.md │ │ │ ├── problem-175-fractions-involving-the-number-of-different-ways-a-number-can-be-expressed-as-a-sum-of-powers-of-2.spanish.md │ │ │ ├── problem-176-right-angled-triangles-that-share-a-cathetus.spanish.md │ │ │ ├── problem-177-integer-angled-quadrilaterals.spanish.md │ │ │ ├── problem-178-step-numbers.spanish.md │ │ │ ├── problem-179-consecutive-positive-divisors.spanish.md │ │ │ ├── problem-18-maximum-path-sum-i.spanish.md │ │ │ ├── problem-180-rational-zeros-of-a-function-of-three-variables.spanish.md │ │ │ ├── problem-181-investigating-in-how-many-ways-objects-of-two-different-colours-can-be-grouped.spanish.md │ │ │ ├── problem-182-rsa-encryption.spanish.md │ │ │ ├── problem-183-maximum-product-of-parts.spanish.md │ │ │ ├── problem-184-triangles-containing-the-origin.spanish.md │ │ │ ├── problem-185-number-mind.spanish.md │ │ │ ├── problem-186-connectedness-of-a-network.spanish.md │ │ │ ├── problem-187-semiprimes.spanish.md │ │ │ ├── problem-188-the-hyperexponentiation-of-a-number.spanish.md │ │ │ ├── problem-189-tri-colouring-a-triangular-grid.spanish.md │ │ │ ├── problem-19-counting-sundays.spanish.md │ │ │ ├── problem-190-maximising-a-weighted-product.spanish.md │ │ │ ├── problem-191-prize-strings.spanish.md │ │ │ ├── problem-192-best-approximations.spanish.md │ │ │ ├── problem-193-squarefree-numbers.spanish.md │ │ │ ├── problem-194-coloured-configurations.spanish.md │ │ │ ├── problem-195-inscribed-circles-of-triangles-with-one-angle-of-60-degrees.spanish.md │ │ │ ├── problem-196-prime-triplets.spanish.md │ │ │ ├── problem-197-investigating-the-behaviour-of-a-recursively-defined-sequence.spanish.md │ │ │ ├── problem-198-ambiguous-numbers.spanish.md │ │ │ ├── problem-199-iterative-circle-packing.spanish.md │ │ │ ├── problem-2-even-fibonacci-numbers.spanish.md │ │ │ ├── problem-20-factorial-digit-sum.spanish.md │ │ │ ├── problem-200-find-the-200th-prime-proof-sqube-containing-the-contiguous-sub-string-200.spanish.md │ │ │ ├── problem-201-subsets-with-a-unique-sum.spanish.md │ │ │ ├── problem-202-laserbeam.spanish.md │ │ │ ├── problem-203-squarefree-binomial-coefficients.spanish.md │ │ │ ├── problem-204-generalised-hamming-numbers.spanish.md │ │ │ ├── problem-205-dice-game.spanish.md │ │ │ ├── problem-206-concealed-square.spanish.md │ │ │ ├── problem-207-integer-partition-equations.spanish.md │ │ │ ├── problem-208-robot-walks.spanish.md │ │ │ ├── problem-209-circular-logic.spanish.md │ │ │ ├── problem-21-amicable-numbers.spanish.md │ │ │ ├── problem-210-obtuse-angled-triangles.spanish.md │ │ │ ├── problem-211-divisor-square-sum.spanish.md │ │ │ ├── problem-212-combined-volume-of-cuboids.spanish.md │ │ │ ├── problem-213-flea-circus.spanish.md │ │ │ ├── problem-214-totient-chains.spanish.md │ │ │ ├── problem-215-crack-free-walls.spanish.md │ │ │ ├── problem-216-investigating-the-primality-of-numbers-of-the-form-2n2-1.spanish.md │ │ │ ├── problem-217-balanced-numbers.spanish.md │ │ │ ├── problem-218-perfect-right-angled-triangles.spanish.md │ │ │ ├── problem-219-skew-cost-coding.spanish.md │ │ │ ├── problem-22-names-scores.spanish.md │ │ │ ├── problem-220-heighway-dragon.spanish.md │ │ │ ├── problem-221-alexandrian-integers.spanish.md │ │ │ ├── problem-222-sphere-packing.spanish.md │ │ │ ├── problem-223-almost-right-angled-triangles-i.spanish.md │ │ │ ├── problem-224-almost-right-angled-triangles-ii.spanish.md │ │ │ ├── problem-225-tribonacci-non-divisors.spanish.md │ │ │ ├── problem-226-a-scoop-of-blancmange.spanish.md │ │ │ ├── problem-227-the-chase.spanish.md │ │ │ ├── problem-228-minkowski-sums.spanish.md │ │ │ ├── problem-229-four-representations-using-squares.spanish.md │ │ │ ├── problem-23-non-abundant-sums.spanish.md │ │ │ ├── problem-230-fibonacci-words.spanish.md │ │ │ ├── problem-231-the-prime-factorisation-of-binomial-coefficients.spanish.md │ │ │ ├── problem-232-the-race.spanish.md │ │ │ ├── problem-233-lattice-points-on-a-circle.spanish.md │ │ │ ├── problem-234-semidivisible-numbers.spanish.md │ │ │ ├── problem-235-an-arithmetic-geometric-sequence.spanish.md │ │ │ ├── problem-236-luxury-hampers.spanish.md │ │ │ ├── problem-237-tours-on-a-4-x-n-playing-board.spanish.md │ │ │ ├── problem-238-infinite-string-tour.spanish.md │ │ │ ├── problem-239-twenty-two-foolish-primes.spanish.md │ │ │ ├── problem-24-lexicographic-permutations.spanish.md │ │ │ ├── problem-240-top-dice.spanish.md │ │ │ ├── problem-241-perfection-quotients.spanish.md │ │ │ ├── problem-242-odd-triplets.spanish.md │ │ │ ├── problem-243-resilience.spanish.md │ │ │ ├── problem-244-sliders.spanish.md │ │ │ ├── problem-245-coresilience.spanish.md │ │ │ ├── problem-246-tangents-to-an-ellipse.spanish.md │ │ │ ├── problem-247-squares-under-a-hyperbola.spanish.md │ │ │ ├── problem-248-numbers-for-which-eulers-totient-function-equals-13.spanish.md │ │ │ ├── problem-249-prime-subset-sums.spanish.md │ │ │ ├── problem-25-1000-digit-fibonacci-number.spanish.md │ │ │ ├── problem-250-250250.spanish.md │ │ │ ├── problem-251-cardano-triplets.spanish.md │ │ │ ├── problem-252-convex-holes.spanish.md │ │ │ ├── problem-253-tidying-up.spanish.md │ │ │ ├── problem-254-sums-of-digit-factorials.spanish.md │ │ │ ├── problem-255-rounded-square-roots.spanish.md │ │ │ ├── problem-256-tatami-free-rooms.spanish.md │ │ │ ├── problem-257-angular-bisectors.spanish.md │ │ │ ├── problem-258-a-lagged-fibonacci-sequence.spanish.md │ │ │ ├── problem-259-reachable-numbers.spanish.md │ │ │ ├── problem-26-reciprocal-cycles.spanish.md │ │ │ ├── problem-260-stone-game.spanish.md │ │ │ ├── problem-261-pivotal-square-sums.spanish.md │ │ │ ├── problem-262-mountain-range.spanish.md │ │ │ ├── problem-263-an-engineers-dream-come-true.spanish.md │ │ │ ├── problem-264-triangle-centres.spanish.md │ │ │ ├── problem-265-binary-circles.spanish.md │ │ │ ├── problem-266-pseudo-square-root.spanish.md │ │ │ ├── problem-267-billionaire.spanish.md │ │ │ ├── problem-268-counting-numbers-with-at-least-four-distinct-prime-factors-less-than-100.spanish.md │ │ │ ├── problem-269-polynomials-with-at-least-one-integer-root.spanish.md │ │ │ ├── problem-27-quadratic-primes.spanish.md │ │ │ ├── problem-270-cutting-squares.spanish.md │ │ │ ├── problem-271-modular-cubes-part-1.spanish.md │ │ │ ├── problem-272-modular-cubes-part-2.spanish.md │ │ │ ├── problem-273-sum-of-squares.spanish.md │ │ │ ├── problem-274-divisibility-multipliers.spanish.md │ │ │ ├── problem-275-balanced-sculptures.spanish.md │ │ │ ├── problem-276-primitive-triangles.spanish.md │ │ │ ├── problem-277-a-modified-collatz-sequence.spanish.md │ │ │ ├── problem-278-linear-combinations-of-semiprimes.spanish.md │ │ │ ├── problem-279-triangles-with-integral-sides-and-an-integral-angle.spanish.md │ │ │ ├── problem-28-number-spiral-diagonals.spanish.md │ │ │ ├── problem-280-ant-and-seeds.spanish.md │ │ │ ├── problem-281-pizza-toppings.spanish.md │ │ │ ├── problem-282-the-ackermann-function.spanish.md │ │ │ ├── problem-283-integer-sided-triangles-for-which-the-area--perimeter-ratio-is-integral.spanish.md │ │ │ ├── problem-284-steady-squares.spanish.md │ │ │ ├── problem-285-pythagorean-odds.spanish.md │ │ │ ├── problem-286-scoring-probabilities.spanish.md │ │ │ ├── problem-287-quadtree-encoding-a-simple-compression-algorithm.spanish.md │ │ │ ├── problem-288-an-enormous-factorial.spanish.md │ │ │ ├── problem-289-eulerian-cycles.spanish.md │ │ │ ├── problem-29-distinct-powers.spanish.md │ │ │ ├── problem-290-digital-signature.spanish.md │ │ │ ├── problem-291-panaitopol-primes.spanish.md │ │ │ ├── problem-292-pythagorean-polygons.spanish.md │ │ │ ├── problem-293-pseudo-fortunate-numbers.spanish.md │ │ │ ├── problem-294-sum-of-digits---experience-23.spanish.md │ │ │ ├── problem-295-lenticular-holes.spanish.md │ │ │ ├── problem-296-angular-bisector-and-tangent.spanish.md │ │ │ ├── problem-297-zeckendorf-representation.spanish.md │ │ │ ├── problem-298-selective-amnesia.spanish.md │ │ │ ├── problem-299-three-similar-triangles.spanish.md │ │ │ ├── problem-3-largest-prime-factor.spanish.md │ │ │ ├── problem-30-digit-n-powers.spanish.md │ │ │ ├── problem-300-protein-folding.spanish.md │ │ │ ├── problem-301-nim.spanish.md │ │ │ ├── problem-302-strong-achilles-numbers.spanish.md │ │ │ ├── problem-303-multiples-with-small-digits.spanish.md │ │ │ ├── problem-304-primonacci.spanish.md │ │ │ ├── problem-305-reflexive-position.spanish.md │ │ │ ├── problem-306-paper-strip-game.spanish.md │ │ │ ├── problem-307-chip-defects.spanish.md │ │ │ ├── problem-308-an-amazing-prime-generating-automaton.spanish.md │ │ │ ├── problem-309-integer-ladders.spanish.md │ │ │ ├── problem-31-coin-sums.spanish.md │ │ │ ├── problem-310-nim-square.spanish.md │ │ │ ├── problem-311-biclinic-integral-quadrilaterals.spanish.md │ │ │ ├── problem-312-cyclic-paths-on-sierpiski-graphs.spanish.md │ │ │ ├── problem-313-sliding-game.spanish.md │ │ │ ├── problem-314-the-mouse-on-the-moon.spanish.md │ │ │ ├── problem-315-digital-root-clocks.spanish.md │ │ │ ├── problem-316-numbers-in-decimal-expansions.spanish.md │ │ │ ├── problem-317-firecracker.spanish.md │ │ │ ├── problem-318-2011-nines.spanish.md │ │ │ ├── problem-319-bounded-sequences.spanish.md │ │ │ ├── problem-32-pandigital-products.spanish.md │ │ │ ├── problem-320-factorials-divisible-by-a-huge-integer.spanish.md │ │ │ ├── problem-321-swapping-counters.spanish.md │ │ │ ├── problem-322-binomial-coefficients-divisible-by-10.spanish.md │ │ │ ├── problem-323-bitwise-or-operations-on-random-integers.spanish.md │ │ │ ├── problem-324-building-a-tower.spanish.md │ │ │ ├── problem-325-stone-game-ii.spanish.md │ │ │ ├── problem-326-modulo-summations.spanish.md │ │ │ ├── problem-327-rooms-of-doom.spanish.md │ │ │ ├── problem-328-lowest-cost-search.spanish.md │ │ │ ├── problem-329-prime-frog.spanish.md │ │ │ ├── problem-33-digit-cancelling-fractions.spanish.md │ │ │ ├── problem-330-eulers-number.spanish.md │ │ │ ├── problem-331-cross-flips.spanish.md │ │ │ ├── problem-332-spherical-triangles.spanish.md │ │ │ ├── problem-333-special-partitions.spanish.md │ │ │ ├── problem-334-spilling-the-beans.spanish.md │ │ │ ├── problem-335-gathering-the-beans.spanish.md │ │ │ ├── problem-336-maximix-arrangements.spanish.md │ │ │ ├── problem-337-totient-stairstep-sequences.spanish.md │ │ │ ├── problem-338-cutting-rectangular-grid-paper.spanish.md │ │ │ ├── problem-339-peredur-fab-efrawg.spanish.md │ │ │ ├── problem-34-digit-factorials.spanish.md │ │ │ ├── problem-340-crazy-function.spanish.md │ │ │ ├── problem-341-golombs-self-describing-sequence.spanish.md │ │ │ ├── problem-342-the-totient-of-a-square-is-a-cube.spanish.md │ │ │ ├── problem-343-fractional-sequences.spanish.md │ │ │ ├── problem-344-silver-dollar-game.spanish.md │ │ │ ├── problem-345-matrix-sum.spanish.md │ │ │ ├── problem-346-strong-repunits.spanish.md │ │ │ ├── problem-347-largest-integer-divisible-by-two-primes.spanish.md │ │ │ ├── problem-348-sum-of-a-square-and-a-cube.spanish.md │ │ │ ├── problem-349-langtons-ant.spanish.md │ │ │ ├── problem-35-circular-primes.spanish.md │ │ │ ├── problem-350-constraining-the-least-greatest-and-the-greatest-least.spanish.md │ │ │ ├── problem-351-hexagonal-orchards.spanish.md │ │ │ ├── problem-352-blood-tests.spanish.md │ │ │ ├── problem-353-risky-moon.spanish.md │ │ │ ├── problem-354-distances-in-a-bees-honeycomb.spanish.md │ │ │ ├── problem-355-maximal-coprime-subset.spanish.md │ │ │ ├── problem-356-largest-roots-of-cubic-polynomials.spanish.md │ │ │ ├── problem-357-prime-generating-integers.spanish.md │ │ │ ├── problem-358-cyclic-numbers.spanish.md │ │ │ ├── problem-359-hilberts-new-hotel.spanish.md │ │ │ ├── problem-36-double-base-palindromes.spanish.md │ │ │ ├── problem-360-scary-sphere.spanish.md │ │ │ ├── problem-361-subsequence-of-thue-morse-sequence.spanish.md │ │ │ ├── problem-362-squarefree-factors.spanish.md │ │ │ ├── problem-363-bzier-curves.spanish.md │ │ │ ├── problem-364-comfortable-distance.spanish.md │ │ │ ├── problem-365-a-huge-binomial-coefficient.spanish.md │ │ │ ├── problem-366-stone-game-iii.spanish.md │ │ │ ├── problem-367-bozo-sort.spanish.md │ │ │ ├── problem-368-a-kempner-like-series.spanish.md │ │ │ ├── problem-369-badugi.spanish.md │ │ │ ├── problem-37-truncatable-primes.spanish.md │ │ │ ├── problem-370-geometric-triangles.spanish.md │ │ │ ├── problem-371-licence-plates.spanish.md │ │ │ ├── problem-372-pencils-of-rays.spanish.md │ │ │ ├── problem-373-circumscribed-circles.spanish.md │ │ │ ├── problem-374-maximum-integer-partition-product.spanish.md │ │ │ ├── problem-375-minimum-of-subsequences.spanish.md │ │ │ ├── problem-376-nontransitive-sets-of-dice.spanish.md │ │ │ ├── problem-377-sum-of-digits-experience-13.spanish.md │ │ │ ├── problem-378-triangle-triples.spanish.md │ │ │ ├── problem-379-least-common-multiple-count.spanish.md │ │ │ ├── problem-38-pandigital-multiples.spanish.md │ │ │ ├── problem-380-amazing-mazes.spanish.md │ │ │ ├── problem-381-prime-k-factorial.spanish.md │ │ │ ├── problem-382-generating-polygons.spanish.md │ │ │ ├── problem-383-divisibility-comparison-between-factorials.spanish.md │ │ │ ├── problem-384-rudin-shapiro-sequence.spanish.md │ │ │ ├── problem-385-ellipses-inside-triangles.spanish.md │ │ │ ├── problem-386-maximum-length-of-an-antichain.spanish.md │ │ │ ├── problem-387-harshad-numbers.spanish.md │ │ │ ├── problem-388-distinct-lines.spanish.md │ │ │ ├── problem-389-platonic-dice.spanish.md │ │ │ ├── problem-39-integer-right-triangles.spanish.md │ │ │ ├── problem-390-triangles-with-non-rational-sides-and-integral-area.spanish.md │ │ │ ├── problem-391-hopping-game.spanish.md │ │ │ ├── problem-392-enmeshed-unit-circle.spanish.md │ │ │ ├── problem-393-migrating-ants.spanish.md │ │ │ ├── problem-394-eating-pie.spanish.md │ │ │ ├── problem-395-pythagorean-tree.spanish.md │ │ │ ├── problem-396-weak-goodstein-sequence.spanish.md │ │ │ ├── problem-397-triangle-on-parabola.spanish.md │ │ │ ├── problem-398-cutting-rope.spanish.md │ │ │ ├── problem-399-squarefree-fibonacci-numbers.spanish.md │ │ │ ├── problem-4-largest-palindrome-product.spanish.md │ │ │ ├── problem-40-champernownes-constant.spanish.md │ │ │ ├── problem-400-fibonacci-tree-game.spanish.md │ │ │ ├── problem-401-sum-of-squares-of-divisors.spanish.md │ │ │ ├── problem-402-integer-valued-polynomials.spanish.md │ │ │ ├── problem-403-lattice-points-enclosed-by-parabola-and-line.spanish.md │ │ │ ├── problem-404-crisscross-ellipses.spanish.md │ │ │ ├── problem-405-a-rectangular-tiling.spanish.md │ │ │ ├── problem-406-guessing-game.spanish.md │ │ │ ├── problem-407-idempotents.spanish.md │ │ │ ├── problem-408-admissible-paths-through-a-grid.spanish.md │ │ │ ├── problem-409-nim-extreme.spanish.md │ │ │ ├── problem-41-pandigital-prime.spanish.md │ │ │ ├── problem-410-circle-and-tangent-line.spanish.md │ │ │ ├── problem-411-uphill-paths.spanish.md │ │ │ ├── problem-412-gnomon-numbering.spanish.md │ │ │ ├── problem-413-one-child-numbers.spanish.md │ │ │ ├── problem-414-kaprekar-constant.spanish.md │ │ │ ├── problem-415-titanic-sets.spanish.md │ │ │ ├── problem-416-a-frogs-trip.spanish.md │ │ │ ├── problem-417-reciprocal-cycles-ii.spanish.md │ │ │ ├── problem-418-factorisation-triples.spanish.md │ │ │ ├── problem-419-look-and-say-sequence.spanish.md │ │ │ ├── problem-42-coded-triangle-numbers.spanish.md │ │ │ ├── problem-420-2x2-positive-integer-matrix.spanish.md │ │ │ ├── problem-421-prime-factors-of-n151.spanish.md │ │ │ ├── problem-422-sequence-of-points-on-a-hyperbola.spanish.md │ │ │ ├── problem-423-consecutive-die-throws.spanish.md │ │ │ ├── problem-424-kakuro.spanish.md │ │ │ ├── problem-425-prime-connection.spanish.md │ │ │ ├── problem-426-box-ball-system.spanish.md │ │ │ ├── problem-427-n-sequences.spanish.md │ │ │ ├── problem-428-necklace-of-circles.spanish.md │ │ │ ├── problem-429-sum-of-squares-of-unitary-divisors.spanish.md │ │ │ ├── problem-43-sub-string-divisibility.spanish.md │ │ │ ├── problem-430-range-flips.spanish.md │ │ │ ├── problem-431-square-space-silo.spanish.md │ │ │ ├── problem-432-totient-sum.spanish.md │ │ │ ├── problem-433-steps-in-euclids-algorithm.spanish.md │ │ │ ├── problem-434-rigid-graphs.spanish.md │ │ │ ├── problem-435-polynomials-of-fibonacci-numbers.spanish.md │ │ │ ├── problem-436-unfair-wager.spanish.md │ │ │ ├── problem-437-fibonacci-primitive-roots.spanish.md │ │ │ ├── problem-438-integer-part-of-polynomial-equations-solutions.spanish.md │ │ │ ├── problem-439-sum-of-sum-of-divisors.spanish.md │ │ │ ├── problem-44-pentagon-numbers.spanish.md │ │ │ ├── problem-440-gcd-and-tiling.spanish.md │ │ │ ├── problem-441-the-inverse-summation-of-coprime-couples.spanish.md │ │ │ ├── problem-442-eleven-free-integers.spanish.md │ │ │ ├── problem-443-gcd-sequence.spanish.md │ │ │ ├── problem-444-the-roundtable-lottery.spanish.md │ │ │ ├── problem-445-retractions-a.spanish.md │ │ │ ├── problem-446-retractions-b.spanish.md │ │ │ ├── problem-447-retractions-c.spanish.md │ │ │ ├── problem-448-average-least-common-multiple.spanish.md │ │ │ ├── problem-449-chocolate-covered-candy.spanish.md │ │ │ ├── problem-45-triangular-pentagonal-and-hexagonal.spanish.md │ │ │ ├── problem-450-hypocycloid-and-lattice-points.spanish.md │ │ │ ├── problem-451-modular-inverses.spanish.md │ │ │ ├── problem-452-long-products.spanish.md │ │ │ ├── problem-453-lattice-quadrilaterals.spanish.md │ │ │ ├── problem-454-diophantine-reciprocals-iii.spanish.md │ │ │ ├── problem-455-powers-with-trailing-digits.spanish.md │ │ │ ├── problem-456-triangles-containing-the-origin-ii.spanish.md │ │ │ ├── problem-457-a-polynomial-modulo-the-square-of-a-prime.spanish.md │ │ │ ├── problem-458-permutations-of-project.spanish.md │ │ │ ├── problem-459-flipping-game.spanish.md │ │ │ ├── problem-46-goldbachs-other-conjecture.spanish.md │ │ │ ├── problem-460-an-ant-on-the-move.spanish.md │ │ │ ├── problem-461-almost-pi.spanish.md │ │ │ ├── problem-462-permutation-of-3-smooth-numbers.spanish.md │ │ │ ├── problem-463-a-weird-recurrence-relation.spanish.md │ │ │ ├── problem-464-mbius-function-and-intervals.spanish.md │ │ │ ├── problem-465-polar-polygons.spanish.md │ │ │ ├── problem-466-distinct-terms-in-a-multiplication-table.spanish.md │ │ │ ├── problem-467-superinteger.spanish.md │ │ │ ├── problem-468-smooth-divisors-of-binomial-coefficients.spanish.md │ │ │ ├── problem-469-empty-chairs.spanish.md │ │ │ ├── problem-47-distinct-primes-factors.spanish.md │ │ │ ├── problem-470-super-ramvok.spanish.md │ │ │ ├── problem-471-triangle-inscribed-in-ellipse.spanish.md │ │ │ ├── problem-472-comfortable-distance-ii.spanish.md │ │ │ ├── problem-473-phigital-number-base.spanish.md │ │ │ ├── problem-474-last-digits-of-divisors.spanish.md │ │ │ ├── problem-475-music-festival.spanish.md │ │ │ ├── problem-476-circle-packing-ii.spanish.md │ │ │ ├── problem-477-number-sequence-game.spanish.md │ │ │ ├── problem-478-mixtures.spanish.md │ │ │ ├── problem-479-roots-on-the-rise.spanish.md │ │ │ ├── problem-48-self-powers.spanish.md │ │ │ ├── problem-480-the-last-question.spanish.md │ │ │ ├── problem-49-prime-permutations.spanish.md │ │ │ ├── problem-5-smallest-multiple.spanish.md │ │ │ ├── problem-50-consecutive-prime-sum.spanish.md │ │ │ ├── problem-51-prime-digit-replacements.spanish.md │ │ │ ├── problem-52-permuted-multiples.spanish.md │ │ │ ├── problem-53-combinatoric-selections.spanish.md │ │ │ ├── problem-54-poker-hands.spanish.md │ │ │ ├── problem-55-lychrel-numbers.spanish.md │ │ │ ├── problem-56-powerful-digit-sum.spanish.md │ │ │ ├── problem-57-square-root-convergents.spanish.md │ │ │ ├── problem-58-spiral-primes.spanish.md │ │ │ ├── problem-59-xor-decryption.spanish.md │ │ │ ├── problem-6-sum-square-difference.spanish.md │ │ │ ├── problem-60-prime-pair-sets.spanish.md │ │ │ ├── problem-61-cyclical-figurate-numbers.spanish.md │ │ │ ├── problem-62-cubic-permutations.spanish.md │ │ │ ├── problem-63-powerful-digit-counts.spanish.md │ │ │ ├── problem-64-odd-period-square-roots.spanish.md │ │ │ ├── problem-65-convergents-of-e.spanish.md │ │ │ ├── problem-66-diophantine-equation.spanish.md │ │ │ ├── problem-67-maximum-path-sum-ii.spanish.md │ │ │ ├── problem-68-magic-5-gon-ring.spanish.md │ │ │ ├── problem-69-totient-maximum.spanish.md │ │ │ ├── problem-7-10001st-prime.spanish.md │ │ │ ├── problem-70-totient-permutation.spanish.md │ │ │ ├── problem-71-ordered-fractions.spanish.md │ │ │ ├── problem-72-counting-fractions.spanish.md │ │ │ ├── problem-73-counting-fractions-in-a-range.spanish.md │ │ │ ├── problem-74-digit-factorial-chains.spanish.md │ │ │ ├── problem-75-singular-integer-right-triangles.spanish.md │ │ │ ├── problem-76-counting-summations.spanish.md │ │ │ ├── problem-77-prime-summations.spanish.md │ │ │ ├── problem-78-coin-partitions.spanish.md │ │ │ ├── problem-79-passcode-derivation.spanish.md │ │ │ ├── problem-8-largest-product-in-a-series.spanish.md │ │ │ ├── problem-80-square-root-digital-expansion.spanish.md │ │ │ ├── problem-81-path-sum-two-ways.spanish.md │ │ │ ├── problem-82-path-sum-three-ways.spanish.md │ │ │ ├── problem-83-path-sum-four-ways.spanish.md │ │ │ ├── problem-84-monopoly-odds.spanish.md │ │ │ ├── problem-85-counting-rectangles.spanish.md │ │ │ ├── problem-86-cuboid-route.spanish.md │ │ │ ├── problem-87-prime-power-triples.spanish.md │ │ │ ├── problem-88-product-sum-numbers.spanish.md │ │ │ ├── problem-89-roman-numerals.spanish.md │ │ │ ├── problem-9-special-pythagorean-triplet.spanish.md │ │ │ ├── problem-90-cube-digit-pairs.spanish.md │ │ │ ├── problem-91-right-triangles-with-integer-coordinates.spanish.md │ │ │ ├── problem-92-square-digit-chains.spanish.md │ │ │ ├── problem-93-arithmetic-expressions.spanish.md │ │ │ ├── problem-94-almost-equilateral-triangles.spanish.md │ │ │ ├── problem-95-amicable-chains.spanish.md │ │ │ ├── problem-96-su-doku.spanish.md │ │ │ ├── problem-97-large-non-mersenne-prime.spanish.md │ │ │ ├── problem-98-anagramic-squares.spanish.md │ │ │ └── problem-99-largest-exponential.spanish.md │ │ ├── rosetta-code │ │ │ ├── 100-doors.spanish.md │ │ │ ├── 24-game.spanish.md │ │ │ ├── 9-billion-names-of-god-the-integer.spanish.md │ │ │ ├── abc-problem.spanish.md │ │ │ ├── abundant-deficient-and-perfect-number-classifications.spanish.md │ │ │ ├── accumulator-factory.spanish.md │ │ │ ├── ackermann-function.spanish.md │ │ │ ├── align-columns.spanish.md │ │ │ ├── amicable-pairs.spanish.md │ │ │ ├── averages-mode.spanish.md │ │ │ ├── averages-pythagorean-means.spanish.md │ │ │ ├── averages-root-mean-square.spanish.md │ │ │ ├── babbage-problem.spanish.md │ │ │ ├── balanced-brackets.spanish.md │ │ │ ├── circles-of-given-radius-through-two-points.spanish.md │ │ │ ├── closest-pair-problem.spanish.md │ │ │ ├── combinations.spanish.md │ │ │ ├── comma-quibbling.spanish.md │ │ │ ├── compare-a-list-of-strings.spanish.md │ │ │ ├── convert-seconds-to-compound-duration.spanish.md │ │ │ ├── count-occurrences-of-a-substring.spanish.md │ │ │ ├── count-the-coins.spanish.md │ │ │ ├── cramers-rule.spanish.md │ │ │ ├── date-format.spanish.md │ │ │ ├── date-manipulation.spanish.md │ │ │ ├── day-of-the-week.spanish.md │ │ │ ├── deal-cards-for-freecell.spanish.md │ │ │ ├── deepcopy.spanish.md │ │ │ ├── define-a-primitive-data-type.spanish.md │ │ │ ├── department-numbers.spanish.md │ │ │ ├── discordian-date.spanish.md │ │ │ ├── element-wise-operations.spanish.md │ │ │ ├── emirp-primes.spanish.md │ │ │ ├── entropy.spanish.md │ │ │ ├── equilibrium-index.spanish.md │ │ │ ├── ethiopian-multiplication.spanish.md │ │ │ ├── euler-method.spanish.md │ │ │ ├── evaluate-binomial-coefficients.spanish.md │ │ │ ├── execute-a-markov-algorithm.spanish.md │ │ │ ├── execute-brain.spanish.md │ │ │ ├── extensible-prime-generator.spanish.md │ │ │ ├── factorial.spanish.md │ │ │ ├── factors-of-a-mersenne-number.spanish.md │ │ │ ├── factors-of-an-integer.spanish.md │ │ │ ├── farey-sequence.spanish.md │ │ │ ├── fibonacci-n-step-number-sequences.spanish.md │ │ │ ├── fibonacci-sequence.spanish.md │ │ │ ├── fibonacci-word.spanish.md │ │ │ ├── fractran.spanish.md │ │ │ ├── gamma-function.spanish.md │ │ │ ├── gaussian-elimination.spanish.md │ │ │ ├── general-fizzbuzz.spanish.md │ │ │ ├── generate-lower-case-ascii-alphabet.spanish.md │ │ │ ├── generatorexponential.spanish.md │ │ │ ├── gray-code.spanish.md │ │ │ ├── greatest-common-divisor.spanish.md │ │ │ ├── greatest-subsequential-sum.spanish.md │ │ │ ├── hailstone-sequence.spanish.md │ │ │ ├── happy-numbers.spanish.md │ │ │ ├── harshad-or-niven-series.spanish.md │ │ │ ├── hash-from-two-arrays.spanish.md │ │ │ ├── hash-join.spanish.md │ │ │ ├── heronian-triangles.spanish.md │ │ │ ├── hofstadter-figure-figure-sequences.spanish.md │ │ │ ├── hofstadter-q-sequence.spanish.md │ │ │ ├── i-before-e-except-after-c.spanish.md │ │ │ ├── iban.spanish.md │ │ │ ├── identity-matrix.spanish.md │ │ │ ├── iterated-digits-squaring.spanish.md │ │ │ ├── jaro-distance.spanish.md │ │ │ ├── jortsort.spanish.md │ │ │ ├── josephus-problem.spanish.md │ │ │ ├── s-expressions.spanish.md │ │ │ ├── sailors-coconuts-and-a-monkey-problem.spanish.md │ │ │ ├── sedols.spanish.md │ │ │ ├── taxicab-numbers.spanish.md │ │ │ ├── tokenize-a-string-with-escaping.spanish.md │ │ │ ├── top-rank-per-group.spanish.md │ │ │ ├── topological-sort.spanish.md │ │ │ ├── towers-of-hanoi.spanish.md │ │ │ ├── vector-cross-product.spanish.md │ │ │ ├── vector-dot-product.spanish.md │ │ │ ├── word-wrap.spanish.md │ │ │ ├── y-combinator.spanish.md │ │ │ ├── zeckendorf-number-representation.spanish.md │ │ │ ├── zhang-suen-thinning-algorithm.spanish.md │ │ │ └── zig-zag-matrix.spanish.md │ │ └── take-home-projects │ │ │ ├── build-a-camper-leaderboard.spanish.md │ │ │ ├── build-a-light-bright-app.spanish.md │ │ │ ├── build-a-nightlife-coordination-app.spanish.md │ │ │ ├── build-a-pinterest-clone.spanish.md │ │ │ ├── build-a-pong-game.spanish.md │ │ │ ├── build-a-recipe-box.spanish.md │ │ │ ├── build-a-roguelike-dungeon-crawler-game.spanish.md │ │ │ ├── build-a-simon-game.spanish.md │ │ │ ├── build-a-tic-tac-toe-game.spanish.md │ │ │ ├── build-a-voting-app.spanish.md │ │ │ ├── build-a-wikipedia-viewer.spanish.md │ │ │ ├── build-an-image-search-abstraction-layer.spanish.md │ │ │ ├── build-the-game-of-life.spanish.md │ │ │ ├── chart-the-stock-market.spanish.md │ │ │ ├── manage-a-book-trading-club.spanish.md │ │ │ ├── map-data-across-the-globe.spanish.md │ │ │ ├── p2p-video-chat-application.spanish.md │ │ │ ├── show-national-contiguity-with-a-force-directed-graph.spanish.md │ │ │ ├── show-the-local-weather.spanish.md │ │ │ └── use-the-twitch-json-api.spanish.md │ │ └── 09-certificates │ │ ├── apis-and-microservices-certificate │ │ └── apis-and-microservices-certificate.spanish.md │ │ ├── data-visualization-certificate │ │ └── data-visualization-certificate.spanish.md │ │ ├── front-end-libraries-certificate │ │ └── front-end-libraries-certificate.spanish.md │ │ ├── information-securtiy-and-quality-assurance-certificate │ │ └── information-securtiy-and-quality-assurance-certificate.spanish.md │ │ ├── javascript-algorithms-and-data-structures-certificate │ │ └── javascript-algorithms-and-data-structures-certificate.spanish.md │ │ ├── legacy-back-end-certificate │ │ └── legacy-back-end-certificate.spanish.md │ │ ├── legacy-data-visualization-certificate │ │ └── legacy-data-visualization-certificate.spanish.md │ │ ├── legacy-front-end-certificate │ │ └── legacy-front-end-certificate.spanish.md │ │ └── responsive-web-design-certificate │ │ └── responsive-web-design-certificate.spanish.md ├── comment-dictionary.js ├── commitizen.config.js ├── commitlint.config.js ├── create-challenge-bundle.js ├── getChallenges.acceptance.test.js ├── getChallenges.js ├── getChallenges.test.js ├── gulpfile.js ├── lib.js ├── package-entry.js ├── package-lock.json ├── package.json ├── schema │ └── challengeSchema.js ├── test │ ├── stubs │ │ └── index.html │ ├── test-challenges.js │ └── utils │ │ ├── challengeTitles.js │ │ ├── mongoIds.js │ │ └── pseudo-worker.js └── utils.js ├── cypress-install.js ├── cypress.json ├── cypress ├── fixtures │ └── example.json ├── integration │ ├── landing.js │ └── learn │ │ ├── challenges │ │ └── output.js │ │ ├── index.js │ │ └── responsive-web-design │ │ └── basic-css │ │ └── index.js ├── plugins │ └── index.js └── support │ ├── commands.js │ └── index.js ├── docker-compose-shared.yml ├── docker-compose.tests.yml ├── docker-compose.yml ├── docs ├── .nojekyll ├── CNAME ├── README.md ├── _coverpage.md ├── _navbar.md ├── _sidebar.md ├── _theme.css ├── chinese-guides │ ├── news-author-application.md │ ├── news-translations.md │ └── video-translations.md ├── devops.md ├── flight-manuals │ ├── moderator-handbook.md │ ├── using-reply-templates.md │ └── working-on-virtual-machines.md ├── how-to-catch-outgoing-emails-locally.md ├── how-to-help-with-video-challenges.md ├── how-to-open-a-pull-request.md ├── how-to-setup-freecodecamp-locally.md ├── how-to-setup-wsl.md ├── how-to-use-docker-on-windows-home.md ├── how-to-work-on-coding-challenges.md ├── how-to-work-on-the-docs-theme.md ├── how-to-work-on-the-news-theme.md ├── i18n-languages │ ├── README.md │ ├── arabic │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ ├── devops.md │ │ └── how-to-open-a-pull-request.md │ ├── chinese │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ ├── how-to-catch-outgoing-emails-locally.md │ │ ├── how-to-setup-freecodecamp-locally.md │ │ └── how-to-work-on-coding-challenges.md │ ├── french │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ └── how-to-open-a-pull-request.md │ ├── german │ │ ├── CONTRIBUTING.md │ │ ├── how-to-catch-outgoing-emails-locally.md │ │ ├── how-to-open-a-pull-request.md │ │ └── how-to-work-on-coding-challenges.md │ ├── italian │ │ ├── CONTRIBUTING.md │ │ └── README.md │ ├── japanese │ │ └── README.md │ ├── korean │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ └── how-to-setup-freecodecamp-locally.md │ ├── polish │ │ ├── CONTRIBUTING.md │ │ ├── devops.md │ │ ├── how-to-open-a-pull-request.md │ │ └── how-to-work-on-coding-challenges.md │ ├── portuguese │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ ├── how-to-catch-outgoing-emails-locally.md │ │ ├── how-to-setup-freecodecamp-locally.md │ │ └── how-to-work-on-coding-challenges.md │ ├── romanian │ │ └── CONTRIBUTING.md │ ├── russian │ │ ├── CONTRIBUTING.md │ │ ├── how-to-catch-outgoing-emails-locally.md │ │ ├── how-to-open-a-pull-request.md │ │ ├── how-to-setup-freecodecamp-locally.md │ │ └── how-to-work-on-coding-challenges.md │ ├── spanish │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ ├── document-quick-reference.md │ │ ├── how-to-catch-outgoing-emails-locally.md │ │ ├── how-to-setup-freecodecamp-locally.md │ │ └── how-to-work-on-coding-challenges.md │ ├── turkish │ │ ├── CONTRIBUTING.md │ │ └── how-to-open-a-pull-request.md │ ├── ukrainian │ │ ├── CONTRIBUTING.md │ │ ├── README.md │ │ ├── how-to-open-a-pull-request.md │ │ └── how-to-setup-freecodecamp-locally.md │ └── vietnamese │ │ └── README.md ├── images │ ├── branding │ │ ├── favicon.ico │ │ └── primary_logo.svg │ ├── devops │ │ └── travis-build.png │ ├── github │ │ ├── compare-pull-request-prompt.png │ │ ├── comparing-forks-for-pull-request.png │ │ └── how-to-fork-freeCodeCamp.gif │ └── mailhog │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ └── 3.jpg ├── index.html └── index.md ├── jest.config.js ├── lerna.json ├── lighthouserc.js ├── package.json ├── sample.env ├── tools ├── challenge-md-parser │ ├── .npmignore │ ├── __snapshots__ │ │ ├── challengeSeed-to-data.test.js.snap │ │ ├── frontmatter-to-data.test.js.snap │ │ ├── solution-to-data.test.js.snap │ │ ├── tests-to-data.test.js.snap │ │ └── text-to-data.test.js.snap │ ├── challengeSeed-to-data.js │ ├── challengeSeed-to-data.test.js │ ├── fixtures │ │ ├── adjacent-tags-ast.json │ │ ├── challenge-html-ast.json │ │ ├── challenge-md-ast.json │ │ └── video-challenge-md-ast.json │ ├── frontmatter-to-data.js │ ├── frontmatter-to-data.test.js │ ├── index.js │ ├── package-lock.json │ ├── package.json │ ├── solution-to-data.js │ ├── solution-to-data.test.js │ ├── tests-to-data.js │ ├── tests-to-data.test.js │ ├── text-to-data.js │ ├── text-to-data.test.js │ ├── translation-parser │ │ ├── __fixtures__ │ │ │ └── challenge-objects.js │ │ ├── __mocks__ │ │ │ └── mock-comments.js │ │ ├── translation-parser.js │ │ └── translation-parser.test.js │ └── utils │ │ └── index.js ├── dashboard │ ├── .gitignore │ ├── .prettierrc │ ├── CODE_OF_CONDUCT.md │ ├── LICENSE.md │ ├── README.md │ ├── config │ │ └── index.js │ ├── docs │ │ ├── CONTRIBUTING.md │ │ └── README.md │ ├── lerna.json │ ├── lib │ │ ├── constants.js │ │ ├── defaults.js │ │ ├── get-prs │ │ │ ├── index.js │ │ │ └── pr-stats.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── pr-tasks │ │ │ ├── add-comment.js │ │ │ ├── add-labels.js │ │ │ ├── close-open.js │ │ │ ├── index.js │ │ │ └── labeler.js │ │ ├── utils │ │ │ ├── index.js │ │ │ ├── open-json-file.js │ │ │ ├── processing-log.js │ │ │ ├── rate-limiter.js │ │ │ ├── save-pr-data.js │ │ │ └── save-to-file.js │ │ └── validation │ │ │ ├── index.js │ │ │ └── valid-labels.js │ ├── one-off-scripts │ │ ├── add-comment-on-frontmatter-issues.js │ │ ├── add-language-labels-to-files.js │ │ ├── add-test-locally-label.js │ │ ├── close-open-specific-failures.js │ │ ├── comments-and-labels-summary.js │ │ ├── find-failures.js │ │ ├── get-unknown-repo-prs.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── prs-with-merge-conflicts.js │ │ └── sweeper.js │ ├── package-lock.json │ ├── package.json │ ├── probot │ │ ├── app.yml │ │ ├── client │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── public │ │ │ │ ├── favicon.ico │ │ │ │ ├── index.html │ │ │ │ └── manifest.json │ │ │ └── src │ │ │ │ ├── App.js │ │ │ │ ├── App.test.mjs │ │ │ │ ├── components │ │ │ │ ├── FilenameResults.js │ │ │ │ ├── FilterOption.js │ │ │ │ ├── Footer.js │ │ │ │ ├── FullWidthDiv.js │ │ │ │ ├── Input.js │ │ │ │ ├── ListItem.js │ │ │ │ ├── Pareto.js │ │ │ │ ├── PrResults.js │ │ │ │ ├── Result.js │ │ │ │ ├── Search.js │ │ │ │ ├── SearchOption.js │ │ │ │ └── Tabs.js │ │ │ │ ├── constants │ │ │ │ └── index.js │ │ │ │ ├── fonts │ │ │ │ ├── Lato-Bold.ttf │ │ │ │ ├── Lato-Light.ttf │ │ │ │ └── Lato-Regular.ttf │ │ │ │ ├── index.css │ │ │ │ ├── index.js │ │ │ │ ├── serviceWorker.js │ │ │ │ └── theme │ │ │ │ └── index.js │ │ ├── index.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── public │ │ │ ├── fonts │ │ │ │ ├── Lato-Bold.ttf │ │ │ │ ├── Lato-Light.ttf │ │ │ │ └── Lato-Regular.ttf │ │ │ ├── index.html │ │ │ └── style.css │ │ ├── sample.env │ │ ├── server │ │ │ ├── models │ │ │ │ └── index.js │ │ │ ├── presolver.js │ │ │ ├── routes │ │ │ │ ├── index.js │ │ │ │ ├── info.js │ │ │ │ ├── pareto.js │ │ │ │ ├── pr.js │ │ │ │ ├── probot.js │ │ │ │ └── search.js │ │ │ └── tools │ │ │ │ └── update-db.js │ │ ├── test │ │ │ ├── index.test.js │ │ │ ├── payloads │ │ │ │ ├── events │ │ │ │ │ ├── pullRequests.closed.json │ │ │ │ │ ├── pullRequests.existing.json │ │ │ │ │ ├── pullRequests.opened.json │ │ │ │ │ └── pullRequests.unrelated.json │ │ │ │ └── files │ │ │ │ │ ├── files.existing.json │ │ │ │ │ ├── files.opened.json │ │ │ │ │ └── files.unrelated.json │ │ │ └── utils │ │ │ │ └── testmodels.js │ │ └── travis.yml │ └── work-logs │ │ └── .gitignore ├── scripts │ ├── build │ │ ├── __snapshots__ │ │ │ └── create-redirects.test.js.snap │ │ ├── create-redirects.js │ │ ├── create-redirects.test.js │ │ ├── ensure-env.js │ │ ├── ensure-path-migration-map.js │ │ ├── package-lock.json │ │ └── package.json │ ├── ci │ │ ├── ensure-challenge-formatting.js │ │ ├── ensure-guide-formatting.js │ │ └── md-testing-utils.js │ ├── lint │ │ ├── .markdownlintrc.js │ │ ├── fixtures │ │ │ ├── badFencing.md │ │ │ ├── badYML.md │ │ │ └── good.md │ │ ├── index.js │ │ ├── index.test.js │ │ └── linter │ │ │ ├── index.js │ │ │ ├── markdown-prism.js │ │ │ └── markdown-yaml.js │ └── seed │ │ ├── __mocks__ │ │ └── curriculum.json │ │ ├── __snapshots__ │ │ └── createPathMigrationMap.test.js.snap │ │ ├── create-path-migration.js │ │ ├── createPathMigrationMap.js │ │ ├── createPathMigrationMap.test.js │ │ ├── package-lock.json │ │ ├── package.json │ │ └── seedAuthUser.js └── search-indexing │ ├── algolia │ └── index.js │ ├── data-push │ ├── init │ │ ├── challenges.js │ │ ├── guides.js │ │ ├── index.js │ │ └── youtube.js │ └── update │ │ └── guides.js │ ├── data-sources │ ├── challenges │ │ └── index.js │ ├── guides │ │ └── index.js │ ├── news │ │ └── getAllPosts.js │ └── youtube │ │ └── index.js │ ├── package-lock.json │ ├── package.json │ └── utils │ ├── index.js │ └── tests │ └── utils.test.js └── utils ├── block-nameify.js ├── index.js ├── is-audited.js ├── polyvinyl.js ├── slugs.js ├── slugs.test.js ├── validate.js └── validate.test.js /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: freecodecamp 2 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/workflows/codeql-analysis.yml -------------------------------------------------------------------------------- /.github/workflows/cypress.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/workflows/cypress.yml -------------------------------------------------------------------------------- /.github/workflows/lighthouse-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/workflows/lighthouse-ci.yml -------------------------------------------------------------------------------- /.github/workflows/node.js-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.github/workflows/node.js-tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitpod.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.gitpod.yml -------------------------------------------------------------------------------- /.node-inspectorrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.node-inspectorrc -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | CYPRESS_INSTALL_BINARY=0 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | **/.cache 2 | **/public 3 | client/static 4 | fixtures 5 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.prettierrc -------------------------------------------------------------------------------- /.snyk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.snyk -------------------------------------------------------------------------------- /.vcmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/.vcmrc -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Dockerfile.tests: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/Dockerfile.tests -------------------------------------------------------------------------------- /HoF.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/HoF.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/SECURITY.md -------------------------------------------------------------------------------- /api-server/.babelrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/.babelrc.js -------------------------------------------------------------------------------- /api-server/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/.gitignore -------------------------------------------------------------------------------- /api-server/common/config.global.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/config.global.js -------------------------------------------------------------------------------- /api-server/common/index.less: -------------------------------------------------------------------------------- 1 | &{ @import "./app/index.less"; } 2 | -------------------------------------------------------------------------------- /api-server/common/models/User-Credential.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/User-Credential.js -------------------------------------------------------------------------------- /api-server/common/models/User-Credential.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/User-Credential.json -------------------------------------------------------------------------------- /api-server/common/models/User-Identity.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/User-Identity.js -------------------------------------------------------------------------------- /api-server/common/models/User-Identity.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/User-Identity.json -------------------------------------------------------------------------------- /api-server/common/models/User-Identity.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/User-Identity.test.js -------------------------------------------------------------------------------- /api-server/common/models/article.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/article.js -------------------------------------------------------------------------------- /api-server/common/models/article.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/article.json -------------------------------------------------------------------------------- /api-server/common/models/block.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/block.js -------------------------------------------------------------------------------- /api-server/common/models/block.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/block.json -------------------------------------------------------------------------------- /api-server/common/models/challenge.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/challenge.json -------------------------------------------------------------------------------- /api-server/common/models/nonprofit.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/nonprofit.json -------------------------------------------------------------------------------- /api-server/common/models/pledge.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/pledge.json -------------------------------------------------------------------------------- /api-server/common/models/popularity.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/popularity.js -------------------------------------------------------------------------------- /api-server/common/models/popularity.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/popularity.json -------------------------------------------------------------------------------- /api-server/common/models/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/user.js -------------------------------------------------------------------------------- /api-server/common/models/user.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/models/user.json -------------------------------------------------------------------------------- /api-server/common/utils/auth.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/auth.js -------------------------------------------------------------------------------- /api-server/common/utils/constantStrings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/constantStrings.json -------------------------------------------------------------------------------- /api-server/common/utils/empty-protector.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/empty-protector.js -------------------------------------------------------------------------------- /api-server/common/utils/flash.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/flash.js -------------------------------------------------------------------------------- /api-server/common/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/index.js -------------------------------------------------------------------------------- /api-server/common/utils/legacyProjectData.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/legacyProjectData.js -------------------------------------------------------------------------------- /api-server/common/utils/themes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/common/utils/themes.js -------------------------------------------------------------------------------- /api-server/development-start.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/development-start.js -------------------------------------------------------------------------------- /api-server/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/jest.config.js -------------------------------------------------------------------------------- /api-server/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/package-lock.json -------------------------------------------------------------------------------- /api-server/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/package.json -------------------------------------------------------------------------------- /api-server/post-seed.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/post-seed.js -------------------------------------------------------------------------------- /api-server/production-start.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/production-start.js -------------------------------------------------------------------------------- /api-server/public/browserconfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/browserconfig.xml -------------------------------------------------------------------------------- /api-server/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/favicon.ico -------------------------------------------------------------------------------- /api-server/public/fonts/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/Lato-Bold.ttf -------------------------------------------------------------------------------- /api-server/public/fonts/Lato-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/Lato-Light.ttf -------------------------------------------------------------------------------- /api-server/public/fonts/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/Lato-Regular.ttf -------------------------------------------------------------------------------- /api-server/public/fonts/Ubuntu-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/Ubuntu-Regular.ttf -------------------------------------------------------------------------------- /api-server/public/fonts/UbuntuMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/UbuntuMono-Regular.ttf -------------------------------------------------------------------------------- /api-server/public/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /api-server/public/fonts/saxmono.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/fonts/saxmono.ttf -------------------------------------------------------------------------------- /api-server/public/images/freeCodeCamp-puck.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/images/freeCodeCamp-puck.svg -------------------------------------------------------------------------------- /api-server/public/js/.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/.jshintrc -------------------------------------------------------------------------------- /api-server/public/js/calculator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/calculator.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-brands.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-brands.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-brands.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-brands.min.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-regular.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-regular.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-regular.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-regular.min.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-solid.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-solid.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fa-solid.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fa-solid.min.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fontawesome-all.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fontawesome-all.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fontawesome-all.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fontawesome-all.min.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fontawesome.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fontawesome.js -------------------------------------------------------------------------------- /api-server/public/js/lib/fontawesome/fontawesome.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/js/lib/fontawesome/fontawesome.min.js -------------------------------------------------------------------------------- /api-server/public/json/bootcamps.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/json/bootcamps.json -------------------------------------------------------------------------------- /api-server/public/json/cats.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/json/cats.json -------------------------------------------------------------------------------- /api-server/public/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/public/robots.txt -------------------------------------------------------------------------------- /api-server/server/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/README.md -------------------------------------------------------------------------------- /api-server/server/boot/a-extend-built-ins.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/a-extend-built-ins.js -------------------------------------------------------------------------------- /api-server/server/boot/a-increase-listeners.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/a-increase-listeners.js -------------------------------------------------------------------------------- /api-server/server/boot/authentication.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/authentication.js -------------------------------------------------------------------------------- /api-server/server/boot/certificate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/certificate.js -------------------------------------------------------------------------------- /api-server/server/boot/challenge.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/challenge.js -------------------------------------------------------------------------------- /api-server/server/boot/commit.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/commit.js -------------------------------------------------------------------------------- /api-server/server/boot/donate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/donate.js -------------------------------------------------------------------------------- /api-server/server/boot/explorer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/explorer.js -------------------------------------------------------------------------------- /api-server/server/boot/news.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/news.js -------------------------------------------------------------------------------- /api-server/server/boot/randomAPIs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/randomAPIs.js -------------------------------------------------------------------------------- /api-server/server/boot/restApi.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/restApi.js -------------------------------------------------------------------------------- /api-server/server/boot/sentry-debug.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/sentry-debug.js -------------------------------------------------------------------------------- /api-server/server/boot/settings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/settings.js -------------------------------------------------------------------------------- /api-server/server/boot/status.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/status.js -------------------------------------------------------------------------------- /api-server/server/boot/t-wiki.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/t-wiki.js -------------------------------------------------------------------------------- /api-server/server/boot/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/user.js -------------------------------------------------------------------------------- /api-server/server/boot/z-not-found.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot/z-not-found.js -------------------------------------------------------------------------------- /api-server/server/boot_tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot_tests/README.md -------------------------------------------------------------------------------- /api-server/server/boot_tests/certificate.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot_tests/certificate.test.js -------------------------------------------------------------------------------- /api-server/server/boot_tests/challenge.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot_tests/challenge.test.js -------------------------------------------------------------------------------- /api-server/server/boot_tests/fixtures.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/boot_tests/fixtures.js -------------------------------------------------------------------------------- /api-server/server/component-passport.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/component-passport.js -------------------------------------------------------------------------------- /api-server/server/config.development.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/config.development.js -------------------------------------------------------------------------------- /api-server/server/config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/config.json -------------------------------------------------------------------------------- /api-server/server/config.local.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/config.local.js -------------------------------------------------------------------------------- /api-server/server/config.production.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | host: process.env.HOST || 'localhost' 3 | }; 4 | -------------------------------------------------------------------------------- /api-server/server/datasources.development.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/datasources.development.js -------------------------------------------------------------------------------- /api-server/server/datasources.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/datasources.json -------------------------------------------------------------------------------- /api-server/server/datasources.production.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/datasources.production.js -------------------------------------------------------------------------------- /api-server/server/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/index.js -------------------------------------------------------------------------------- /api-server/server/manifests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/manifests/README.md -------------------------------------------------------------------------------- /api-server/server/middleware.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middleware.json -------------------------------------------------------------------------------- /api-server/server/middlewares/add-return-to.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/add-return-to.js -------------------------------------------------------------------------------- /api-server/server/middlewares/constant-headers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/constant-headers.js -------------------------------------------------------------------------------- /api-server/server/middlewares/cookie-parser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/cookie-parser.js -------------------------------------------------------------------------------- /api-server/server/middlewares/csp.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/csp.js -------------------------------------------------------------------------------- /api-server/server/middlewares/csurf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/csurf.js -------------------------------------------------------------------------------- /api-server/server/middlewares/error-handlers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/error-handlers.js -------------------------------------------------------------------------------- /api-server/server/middlewares/express-extensions.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/express-extensions.js -------------------------------------------------------------------------------- /api-server/server/middlewares/flash-cheaters.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/flash-cheaters.js -------------------------------------------------------------------------------- /api-server/server/middlewares/passport-login.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/passport-login.js -------------------------------------------------------------------------------- /api-server/server/middlewares/request-authorization.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/request-authorization.js -------------------------------------------------------------------------------- /api-server/server/middlewares/sentry-error-handler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/sentry-error-handler.js -------------------------------------------------------------------------------- /api-server/server/middlewares/sentry-request-handler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/sentry-request-handler.js -------------------------------------------------------------------------------- /api-server/server/middlewares/sessions.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/sessions.js -------------------------------------------------------------------------------- /api-server/server/middlewares/validator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/middlewares/validator.js -------------------------------------------------------------------------------- /api-server/server/model-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/model-config.json -------------------------------------------------------------------------------- /api-server/server/models/about.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/about.js -------------------------------------------------------------------------------- /api-server/server/models/about.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/about.json -------------------------------------------------------------------------------- /api-server/server/models/auth-token.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/auth-token.js -------------------------------------------------------------------------------- /api-server/server/models/auth-token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/auth-token.json -------------------------------------------------------------------------------- /api-server/server/models/donation.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/donation.js -------------------------------------------------------------------------------- /api-server/server/models/donation.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/models/donation.json -------------------------------------------------------------------------------- /api-server/server/passport-providers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/passport-providers.js -------------------------------------------------------------------------------- /api-server/server/resources/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/resources/.gitkeep -------------------------------------------------------------------------------- /api-server/server/rss/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/rss/index.js -------------------------------------------------------------------------------- /api-server/server/rss/lybsyn.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/rss/lybsyn.js -------------------------------------------------------------------------------- /api-server/server/utils/__mocks__/donation.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/__mocks__/donation.js -------------------------------------------------------------------------------- /api-server/server/utils/about.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/about.js -------------------------------------------------------------------------------- /api-server/server/utils/auth.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/auth.js -------------------------------------------------------------------------------- /api-server/server/utils/bad-id-map.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/bad-id-map.js -------------------------------------------------------------------------------- /api-server/server/utils/cast-to-observable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/cast-to-observable.js -------------------------------------------------------------------------------- /api-server/server/utils/certTypes.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/certTypes.json -------------------------------------------------------------------------------- /api-server/server/utils/commit-goals.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/commit-goals.json -------------------------------------------------------------------------------- /api-server/server/utils/commit.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/commit.js -------------------------------------------------------------------------------- /api-server/server/utils/commit.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/commit.json -------------------------------------------------------------------------------- /api-server/server/utils/constantStrings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/constantStrings.json -------------------------------------------------------------------------------- /api-server/server/utils/constants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/constants.js -------------------------------------------------------------------------------- /api-server/server/utils/cookieConfig.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/cookieConfig.js -------------------------------------------------------------------------------- /api-server/server/utils/create-handled-error.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/create-handled-error.js -------------------------------------------------------------------------------- /api-server/server/utils/date-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/date-utils.js -------------------------------------------------------------------------------- /api-server/server/utils/date-utils.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/date-utils.test.js -------------------------------------------------------------------------------- /api-server/server/utils/donation.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/donation.js -------------------------------------------------------------------------------- /api-server/server/utils/donation.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/donation.test.js -------------------------------------------------------------------------------- /api-server/server/utils/get-curriculum.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/get-curriculum.js -------------------------------------------------------------------------------- /api-server/server/utils/getDynamicPropsForUser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/getDynamicPropsForUser.js -------------------------------------------------------------------------------- /api-server/server/utils/getSetAccessToken.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/getSetAccessToken.js -------------------------------------------------------------------------------- /api-server/server/utils/getSetAccessToken.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/getSetAccessToken.test.js -------------------------------------------------------------------------------- /api-server/server/utils/in-memory-cache.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/in-memory-cache.js -------------------------------------------------------------------------------- /api-server/server/utils/in-memory-cache.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/in-memory-cache.test.js -------------------------------------------------------------------------------- /api-server/server/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/index.js -------------------------------------------------------------------------------- /api-server/server/utils/lang-passthrough-urls.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/lang-passthrough-urls.js -------------------------------------------------------------------------------- /api-server/server/utils/middleware.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/middleware.js -------------------------------------------------------------------------------- /api-server/server/utils/publicUserProps.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/publicUserProps.js -------------------------------------------------------------------------------- /api-server/server/utils/react.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/react.js -------------------------------------------------------------------------------- /api-server/server/utils/rx.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/rx.js -------------------------------------------------------------------------------- /api-server/server/utils/superBlockCertTypeMap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/superBlockCertTypeMap.js -------------------------------------------------------------------------------- /api-server/server/utils/url-utils.js: -------------------------------------------------------------------------------- 1 | export function getEmailSender() { 2 | return process.env.SES_MAIL_FROM || 'team@freecodecamp.org'; 3 | } 4 | -------------------------------------------------------------------------------- /api-server/server/utils/user-stats.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/user-stats.js -------------------------------------------------------------------------------- /api-server/server/utils/user-stats.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/utils/user-stats.test.js -------------------------------------------------------------------------------- /api-server/server/views/commit/directory.jade: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/commit/directory.jade -------------------------------------------------------------------------------- /api-server/server/views/commit/index.jade: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/commit/index.jade -------------------------------------------------------------------------------- /api-server/server/views/commit/pledge.jade: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/commit/pledge.jade -------------------------------------------------------------------------------- /api-server/server/views/emails/a-new-user.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/emails/a-new-user.ejs -------------------------------------------------------------------------------- /api-server/server/views/emails/certified.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/emails/certified.ejs -------------------------------------------------------------------------------- /api-server/server/views/emails/user-request-sign-in.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/emails/user-request-sign-in.ejs -------------------------------------------------------------------------------- /api-server/server/views/emails/user-request-sign-up.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/emails/user-request-sign-up.ejs -------------------------------------------------------------------------------- /api-server/server/views/resources/calculator.jade: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/api-server/server/views/resources/calculator.jade -------------------------------------------------------------------------------- /change_volumes_owner.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/change_volumes_owner.sh -------------------------------------------------------------------------------- /client/.babelrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/.babelrc -------------------------------------------------------------------------------- /client/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/.gitignore -------------------------------------------------------------------------------- /client/config/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/config/.gitkeep -------------------------------------------------------------------------------- /client/gatsby-browser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/gatsby-browser.js -------------------------------------------------------------------------------- /client/gatsby-config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/gatsby-config.js -------------------------------------------------------------------------------- /client/gatsby-node.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/gatsby-node.js -------------------------------------------------------------------------------- /client/gatsby-ssr.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/gatsby-ssr.js -------------------------------------------------------------------------------- /client/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/jest.config.js -------------------------------------------------------------------------------- /client/jest.transform.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/jest.transform.js -------------------------------------------------------------------------------- /client/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/package-lock.json -------------------------------------------------------------------------------- /client/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/package.json -------------------------------------------------------------------------------- /client/plugins/fcc-source-challenges/gatsby-node.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/plugins/fcc-source-challenges/gatsby-node.js -------------------------------------------------------------------------------- /client/plugins/fcc-source-challenges/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/plugins/fcc-source-challenges/package-lock.json -------------------------------------------------------------------------------- /client/plugins/fcc-source-challenges/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/plugins/fcc-source-challenges/package.json -------------------------------------------------------------------------------- /client/plugins/gatsby-remark-fcc-forum-emoji/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/plugins/gatsby-remark-fcc-forum-emoji/index.js -------------------------------------------------------------------------------- /client/plugins/gatsby-remark-node-identity/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/plugins/gatsby-remark-node-identity/package.json -------------------------------------------------------------------------------- /client/postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/postcss.config.js -------------------------------------------------------------------------------- /client/src/__mocks__/analyticsMock.js: -------------------------------------------------------------------------------- 1 | export default { 2 | event: () => {} 3 | }; 4 | -------------------------------------------------------------------------------- /client/src/__mocks__/challenge-nodes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__mocks__/challenge-nodes.js -------------------------------------------------------------------------------- /client/src/__mocks__/completedChallengesMock.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__mocks__/completedChallengesMock.js -------------------------------------------------------------------------------- /client/src/__mocks__/fileMock.js: -------------------------------------------------------------------------------- 1 | module.exports = {}; 2 | -------------------------------------------------------------------------------- /client/src/__mocks__/gatsby-link.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__mocks__/gatsby-link.js -------------------------------------------------------------------------------- /client/src/__mocks__/gatsby.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__mocks__/gatsby.js -------------------------------------------------------------------------------- /client/src/__mocks__/intro-nodes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__mocks__/intro-nodes.js -------------------------------------------------------------------------------- /client/src/__mocks__/styleMock.js: -------------------------------------------------------------------------------- 1 | module.exports = {}; 2 | -------------------------------------------------------------------------------- /client/src/__tests__/integration/handled-error.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/__tests__/integration/handled-error.test.js -------------------------------------------------------------------------------- /client/src/analytics/gtag.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/analytics/gtag.js -------------------------------------------------------------------------------- /client/src/analytics/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/analytics/index.js -------------------------------------------------------------------------------- /client/src/assets/icons/Caret.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Caret.js -------------------------------------------------------------------------------- /client/src/assets/icons/CertificationIcon.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/CertificationIcon.js -------------------------------------------------------------------------------- /client/src/assets/icons/Cup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Cup.js -------------------------------------------------------------------------------- /client/src/assets/icons/DonateWithPayPal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/DonateWithPayPal.js -------------------------------------------------------------------------------- /client/src/assets/icons/Fail.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Fail.js -------------------------------------------------------------------------------- /client/src/assets/icons/GreenNotCompleted.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/GreenNotCompleted.js -------------------------------------------------------------------------------- /client/src/assets/icons/GreenPass.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/GreenPass.js -------------------------------------------------------------------------------- /client/src/assets/icons/Heart.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Heart.js -------------------------------------------------------------------------------- /client/src/assets/icons/Initial.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Initial.js -------------------------------------------------------------------------------- /client/src/assets/icons/IntroInformation.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/IntroInformation.js -------------------------------------------------------------------------------- /client/src/assets/icons/Spacer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/Spacer.js -------------------------------------------------------------------------------- /client/src/assets/icons/ToggleCheck.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/ToggleCheck.js -------------------------------------------------------------------------------- /client/src/assets/icons/freeCodeCampLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/icons/freeCodeCampLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/AmazonLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/AmazonLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/AppleLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/AppleLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/AsFeatureLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/AsFeatureLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/GoogleLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/GoogleLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/MicrosoftLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/MicrosoftLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/SpotifyLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/SpotifyLogo.js -------------------------------------------------------------------------------- /client/src/assets/images/freeCodeCamp-404.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/freeCodeCamp-404.svg -------------------------------------------------------------------------------- /client/src/assets/images/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/index.js -------------------------------------------------------------------------------- /client/src/assets/images/square_puck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/assets/images/square_puck.png -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowCertification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowCertification.js -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowProfileOrFourOhFour.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowProfileOrFourOhFour.js -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowSettings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowSettings.js -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowSettings.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowSettings.test.js -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowUnsubscribed.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowUnsubscribed.js -------------------------------------------------------------------------------- /client/src/client-only-routes/ShowUser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/ShowUser.js -------------------------------------------------------------------------------- /client/src/client-only-routes/showuser.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client-only-routes/showuser.css -------------------------------------------------------------------------------- /client/src/client/frame-runner.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client/frame-runner.js -------------------------------------------------------------------------------- /client/src/client/workers/sass-compile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client/workers/sass-compile.js -------------------------------------------------------------------------------- /client/src/client/workers/test-evaluator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/client/workers/test-evaluator.js -------------------------------------------------------------------------------- /client/src/components/AppMountNotifier.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/AppMountNotifier.js -------------------------------------------------------------------------------- /client/src/components/Donation/DonateCompletion.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/DonateCompletion.js -------------------------------------------------------------------------------- /client/src/components/Donation/DonateForm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/DonateForm.js -------------------------------------------------------------------------------- /client/src/components/Donation/DonateText.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/DonateText.js -------------------------------------------------------------------------------- /client/src/components/Donation/Donation.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/Donation.css -------------------------------------------------------------------------------- /client/src/components/Donation/DonationModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/DonationModal.js -------------------------------------------------------------------------------- /client/src/components/Donation/MinimalDonateForm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/MinimalDonateForm.js -------------------------------------------------------------------------------- /client/src/components/Donation/PaypalButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/PaypalButton.js -------------------------------------------------------------------------------- /client/src/components/Donation/StripeCardForm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/StripeCardForm.js -------------------------------------------------------------------------------- /client/src/components/Donation/assets/ApplePay.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/assets/ApplePay.js -------------------------------------------------------------------------------- /client/src/components/Donation/assets/GooglePay.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/assets/GooglePay.js -------------------------------------------------------------------------------- /client/src/components/Donation/assets/accepted-cards.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Donation/assets/accepted-cards.png -------------------------------------------------------------------------------- /client/src/components/Flash/flash.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Flash/flash.css -------------------------------------------------------------------------------- /client/src/components/Flash/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Flash/index.js -------------------------------------------------------------------------------- /client/src/components/Flash/redux/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Flash/redux/index.js -------------------------------------------------------------------------------- /client/src/components/Footer/Footer.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Footer/Footer.test.js -------------------------------------------------------------------------------- /client/src/components/Footer/footer.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Footer/footer.css -------------------------------------------------------------------------------- /client/src/components/Footer/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Footer/index.js -------------------------------------------------------------------------------- /client/src/components/FourOhFour/404.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/FourOhFour/404.css -------------------------------------------------------------------------------- /client/src/components/FourOhFour/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/FourOhFour/index.js -------------------------------------------------------------------------------- /client/src/components/Header/Header.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/Header.test.js -------------------------------------------------------------------------------- /client/src/components/Header/components/Login.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/Login.js -------------------------------------------------------------------------------- /client/src/components/Header/components/MenuButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/MenuButton.js -------------------------------------------------------------------------------- /client/src/components/Header/components/NavLinks.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/NavLinks.js -------------------------------------------------------------------------------- /client/src/components/Header/components/NavLogo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/NavLogo.js -------------------------------------------------------------------------------- /client/src/components/Header/components/UniversalNav.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/UniversalNav.js -------------------------------------------------------------------------------- /client/src/components/Header/components/UserState.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/UserState.js -------------------------------------------------------------------------------- /client/src/components/Header/components/login.css: -------------------------------------------------------------------------------- 1 | .signup-btn { 2 | padding: 4px 12px; 3 | } 4 | -------------------------------------------------------------------------------- /client/src/components/Header/components/universalNav.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/components/universalNav.css -------------------------------------------------------------------------------- /client/src/components/Header/header.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/header.css -------------------------------------------------------------------------------- /client/src/components/Header/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/index.js -------------------------------------------------------------------------------- /client/src/components/Header/stripeIframesFix.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Header/stripeIframesFix.js -------------------------------------------------------------------------------- /client/src/components/Intro/Intro.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Intro/Intro.test.js -------------------------------------------------------------------------------- /client/src/components/Intro/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Intro/index.js -------------------------------------------------------------------------------- /client/src/components/Intro/intro.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Intro/intro.css -------------------------------------------------------------------------------- /client/src/components/Map/Map.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/Map.test.js -------------------------------------------------------------------------------- /client/src/components/Map/__snapshots__/Map.test.js.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/__snapshots__/Map.test.js.snap -------------------------------------------------------------------------------- /client/src/components/Map/components/Block.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/components/Block.js -------------------------------------------------------------------------------- /client/src/components/Map/components/Block.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/components/Block.test.js -------------------------------------------------------------------------------- /client/src/components/Map/components/SuperBlock.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/components/SuperBlock.js -------------------------------------------------------------------------------- /client/src/components/Map/components/SuperBlock.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/components/SuperBlock.test.js -------------------------------------------------------------------------------- /client/src/components/Map/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/index.js -------------------------------------------------------------------------------- /client/src/components/Map/map.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/map.css -------------------------------------------------------------------------------- /client/src/components/Map/redux/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/Map/redux/index.js -------------------------------------------------------------------------------- /client/src/components/OfflineWarning/OfflineWarning.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/OfflineWarning/OfflineWarning.js -------------------------------------------------------------------------------- /client/src/components/OfflineWarning/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './OfflineWarning'; 2 | -------------------------------------------------------------------------------- /client/src/components/OfflineWarning/offline-warning.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/OfflineWarning/offline-warning.css -------------------------------------------------------------------------------- /client/src/components/RedirectHome.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/RedirectHome.js -------------------------------------------------------------------------------- /client/src/components/createRedirect.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/createRedirect.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/BlockSaveButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/BlockSaveButton.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/BlockSaveWrapper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/BlockSaveWrapper.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/Form.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/Form.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/Form.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/Form.test.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/FormFields.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/FormFields.js -------------------------------------------------------------------------------- /client/src/components/formHelpers/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/formHelpers/index.js -------------------------------------------------------------------------------- /client/src/components/helpers/ButtonSpacer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/ButtonSpacer.js -------------------------------------------------------------------------------- /client/src/components/helpers/CurrentChallengeLink.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/CurrentChallengeLink.js -------------------------------------------------------------------------------- /client/src/components/helpers/FullWidthRow.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/FullWidthRow.js -------------------------------------------------------------------------------- /client/src/components/helpers/Link.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/Link.js -------------------------------------------------------------------------------- /client/src/components/helpers/Link.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/Link.test.js -------------------------------------------------------------------------------- /client/src/components/helpers/Loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/Loader.js -------------------------------------------------------------------------------- /client/src/components/helpers/Loader.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/Loader.test.js -------------------------------------------------------------------------------- /client/src/components/helpers/SkeletonSprite.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/SkeletonSprite.js -------------------------------------------------------------------------------- /client/src/components/helpers/SlimWidthRow.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/SlimWidthRow.js -------------------------------------------------------------------------------- /client/src/components/helpers/Spacer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/Spacer.js -------------------------------------------------------------------------------- /client/src/components/helpers/ToggleButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/ToggleButton.js -------------------------------------------------------------------------------- /client/src/components/helpers/form/BlockSaveButton.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/form/BlockSaveButton.js -------------------------------------------------------------------------------- /client/src/components/helpers/form/BlockSaveWrapper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/form/BlockSaveWrapper.js -------------------------------------------------------------------------------- /client/src/components/helpers/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/index.js -------------------------------------------------------------------------------- /client/src/components/helpers/loader.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/loader.css -------------------------------------------------------------------------------- /client/src/components/helpers/skeletonStyles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/skeletonStyles.js -------------------------------------------------------------------------------- /client/src/components/helpers/toggle-button.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/helpers/toggle-button.css -------------------------------------------------------------------------------- /client/src/components/landing/Landing.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/landing/Landing.test.js -------------------------------------------------------------------------------- /client/src/components/landing/components/CompanyLogos.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/landing/components/CompanyLogos.js -------------------------------------------------------------------------------- /client/src/components/landing/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/landing/index.js -------------------------------------------------------------------------------- /client/src/components/landing/landing.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/landing/landing.css -------------------------------------------------------------------------------- /client/src/components/layouts/Certification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/Certification.js -------------------------------------------------------------------------------- /client/src/components/layouts/Default.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/Default.js -------------------------------------------------------------------------------- /client/src/components/layouts/Learn.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/Learn.js -------------------------------------------------------------------------------- /client/src/components/layouts/fonts.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/fonts.css -------------------------------------------------------------------------------- /client/src/components/layouts/global.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/global.css -------------------------------------------------------------------------------- /client/src/components/layouts/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/index.js -------------------------------------------------------------------------------- /client/src/components/layouts/learn.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/learn.css -------------------------------------------------------------------------------- /client/src/components/layouts/prism-night.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/prism-night.css -------------------------------------------------------------------------------- /client/src/components/layouts/prism.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/prism.css -------------------------------------------------------------------------------- /client/src/components/layouts/variables.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/layouts/variables.css -------------------------------------------------------------------------------- /client/src/components/profile/Profile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/Profile.js -------------------------------------------------------------------------------- /client/src/components/profile/Profile.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/Profile.test.js -------------------------------------------------------------------------------- /client/src/components/profile/components/Camper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/Camper.js -------------------------------------------------------------------------------- /client/src/components/profile/components/HeatMap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/HeatMap.js -------------------------------------------------------------------------------- /client/src/components/profile/components/HeatMap.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/HeatMap.test.js -------------------------------------------------------------------------------- /client/src/components/profile/components/Portfolio.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/Portfolio.js -------------------------------------------------------------------------------- /client/src/components/profile/components/SocialIcons.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/SocialIcons.js -------------------------------------------------------------------------------- /client/src/components/profile/components/TimeLine.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/TimeLine.js -------------------------------------------------------------------------------- /client/src/components/profile/components/camper.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/camper.css -------------------------------------------------------------------------------- /client/src/components/profile/components/certifications.css: -------------------------------------------------------------------------------- 1 | .certifications .btn { 2 | white-space: normal; 3 | } 4 | -------------------------------------------------------------------------------- /client/src/components/profile/components/heatmap.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/heatmap.css -------------------------------------------------------------------------------- /client/src/components/profile/components/portfolio.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/profile/components/portfolio.css -------------------------------------------------------------------------------- /client/src/components/search/WithInstantSearch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/WithInstantSearch.js -------------------------------------------------------------------------------- /client/src/components/search/redux/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/redux/index.js -------------------------------------------------------------------------------- /client/src/components/search/searchBar/SearchBar.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchBar/SearchBar.js -------------------------------------------------------------------------------- /client/src/components/search/searchBar/SearchBar.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchBar/SearchBar.test.js -------------------------------------------------------------------------------- /client/src/components/search/searchBar/SearchHits.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchBar/SearchHits.js -------------------------------------------------------------------------------- /client/src/components/search/searchBar/searchbar.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchBar/searchbar.css -------------------------------------------------------------------------------- /client/src/components/search/searchPage/EmptySearch.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchPage/EmptySearch.js -------------------------------------------------------------------------------- /client/src/components/search/searchPage/NoResults.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchPage/NoResults.js -------------------------------------------------------------------------------- /client/src/components/search/searchPage/empty-search.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchPage/empty-search.css -------------------------------------------------------------------------------- /client/src/components/search/searchPage/no-results.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/search/searchPage/no-results.css -------------------------------------------------------------------------------- /client/src/components/settings/About.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/About.js -------------------------------------------------------------------------------- /client/src/components/settings/Certification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Certification.js -------------------------------------------------------------------------------- /client/src/components/settings/Certification.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Certification.test.js -------------------------------------------------------------------------------- /client/src/components/settings/DangerZone.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/DangerZone.js -------------------------------------------------------------------------------- /client/src/components/settings/DeleteModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/DeleteModal.js -------------------------------------------------------------------------------- /client/src/components/settings/Email.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Email.js -------------------------------------------------------------------------------- /client/src/components/settings/Honesty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Honesty.js -------------------------------------------------------------------------------- /client/src/components/settings/Honesty.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Honesty.test.js -------------------------------------------------------------------------------- /client/src/components/settings/Internet.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Internet.js -------------------------------------------------------------------------------- /client/src/components/settings/Portfolio.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Portfolio.js -------------------------------------------------------------------------------- /client/src/components/settings/Privacy.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Privacy.js -------------------------------------------------------------------------------- /client/src/components/settings/ResetModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/ResetModal.js -------------------------------------------------------------------------------- /client/src/components/settings/SectionHeader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/SectionHeader.js -------------------------------------------------------------------------------- /client/src/components/settings/SolutionViewer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/SolutionViewer.js -------------------------------------------------------------------------------- /client/src/components/settings/Theme.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Theme.js -------------------------------------------------------------------------------- /client/src/components/settings/ToggleSetting.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/ToggleSetting.js -------------------------------------------------------------------------------- /client/src/components/settings/Username.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/Username.js -------------------------------------------------------------------------------- /client/src/components/settings/certification.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/certification.css -------------------------------------------------------------------------------- /client/src/components/settings/danger-zone.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/danger-zone.css -------------------------------------------------------------------------------- /client/src/components/settings/honesty.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/honesty.css -------------------------------------------------------------------------------- /client/src/components/settings/solution-viewer.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/solution-viewer.css -------------------------------------------------------------------------------- /client/src/components/settings/toggle-setting.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/components/settings/toggle-setting.css -------------------------------------------------------------------------------- /client/src/head/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/head/index.js -------------------------------------------------------------------------------- /client/src/head/meta.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/head/meta.js -------------------------------------------------------------------------------- /client/src/head/preloads.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/head/preloads.js -------------------------------------------------------------------------------- /client/src/head/styleSheets.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/head/styleSheets.js -------------------------------------------------------------------------------- /client/src/html.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/html.js -------------------------------------------------------------------------------- /client/src/pages/404.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/404.js -------------------------------------------------------------------------------- /client/src/pages/certification.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/certification.css -------------------------------------------------------------------------------- /client/src/pages/certification.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/certification.js -------------------------------------------------------------------------------- /client/src/pages/common-pages.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/common-pages.css -------------------------------------------------------------------------------- /client/src/pages/donate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/donate.js -------------------------------------------------------------------------------- /client/src/pages/email-sign-up.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/email-sign-up.css -------------------------------------------------------------------------------- /client/src/pages/email-sign-up.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/email-sign-up.js -------------------------------------------------------------------------------- /client/src/pages/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/index.js -------------------------------------------------------------------------------- /client/src/pages/learn.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn.js -------------------------------------------------------------------------------- /client/src/pages/learn/apis-and-microservices/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/apis-and-microservices/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/data-visualization/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/data-visualization/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/front-end-libraries/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/front-end-libraries/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/front-end-libraries/sass/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/front-end-libraries/sass/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/information-security/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/information-security/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/quality-assurance/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/quality-assurance/index.md -------------------------------------------------------------------------------- /client/src/pages/learn/responsive-web-design/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/learn/responsive-web-design/index.md -------------------------------------------------------------------------------- /client/src/pages/search.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/search.css -------------------------------------------------------------------------------- /client/src/pages/search.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/search.js -------------------------------------------------------------------------------- /client/src/pages/settings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/settings.js -------------------------------------------------------------------------------- /client/src/pages/unsubscribed.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/unsubscribed.js -------------------------------------------------------------------------------- /client/src/pages/update-email.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/update-email.css -------------------------------------------------------------------------------- /client/src/pages/update-email.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/update-email.js -------------------------------------------------------------------------------- /client/src/pages/user.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/pages/user.js -------------------------------------------------------------------------------- /client/src/redux/accept-terms-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/accept-terms-saga.js -------------------------------------------------------------------------------- /client/src/redux/app-mount-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/app-mount-saga.js -------------------------------------------------------------------------------- /client/src/redux/cookieValues.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/cookieValues.js -------------------------------------------------------------------------------- /client/src/redux/createStore.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/createStore.js -------------------------------------------------------------------------------- /client/src/redux/donation-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/donation-saga.js -------------------------------------------------------------------------------- /client/src/redux/error-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/error-saga.js -------------------------------------------------------------------------------- /client/src/redux/failed-updates-epic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/failed-updates-epic.js -------------------------------------------------------------------------------- /client/src/redux/failed-updates-epic.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/failed-updates-epic.test.js -------------------------------------------------------------------------------- /client/src/redux/fetch-user-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/fetch-user-saga.js -------------------------------------------------------------------------------- /client/src/redux/ga-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/ga-saga.js -------------------------------------------------------------------------------- /client/src/redux/ga-saga.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/ga-saga.test.js -------------------------------------------------------------------------------- /client/src/redux/hard-go-to-epic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/hard-go-to-epic.js -------------------------------------------------------------------------------- /client/src/redux/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/index.js -------------------------------------------------------------------------------- /client/src/redux/night-mode-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/night-mode-saga.js -------------------------------------------------------------------------------- /client/src/redux/propTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/propTypes.js -------------------------------------------------------------------------------- /client/src/redux/report-user-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/report-user-saga.js -------------------------------------------------------------------------------- /client/src/redux/rootEpic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/rootEpic.js -------------------------------------------------------------------------------- /client/src/redux/rootReducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/rootReducer.js -------------------------------------------------------------------------------- /client/src/redux/rootSaga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/rootSaga.js -------------------------------------------------------------------------------- /client/src/redux/settings/danger-zone-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/settings/danger-zone-saga.js -------------------------------------------------------------------------------- /client/src/redux/settings/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/settings/index.js -------------------------------------------------------------------------------- /client/src/redux/settings/settings-sagas.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/settings/settings-sagas.js -------------------------------------------------------------------------------- /client/src/redux/settings/update-email-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/settings/update-email-saga.js -------------------------------------------------------------------------------- /client/src/redux/show-cert-saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/show-cert-saga.js -------------------------------------------------------------------------------- /client/src/redux/update-complete-epic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/redux/update-complete-epic.js -------------------------------------------------------------------------------- /client/src/resources/certAndProjectMap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/resources/certAndProjectMap.js -------------------------------------------------------------------------------- /client/src/resources/honesty-policy.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/resources/honesty-policy.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/classic/DesktopLayout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/classic/DesktopLayout.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/classic/Editor.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/classic/Editor.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/classic/MobileLayout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/classic/MobileLayout.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/classic/Show.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/classic/Show.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/classic/classic.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/classic/classic.css -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/HelpModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/HelpModal.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Hotkeys.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Hotkeys.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Output.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Preview.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Preview.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/ResetModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/ResetModal.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Side-Panel.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Side-Panel.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Test-Suite.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Test-Suite.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/Tool-Panel.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/Tool-Panel.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/VideoModal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/VideoModal.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/challenge-title.css: -------------------------------------------------------------------------------- 1 | .challenge-title { 2 | padding: 0 15px; 3 | } 4 | -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/hotkeys.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/hotkeys.css -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/output.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/output.css -------------------------------------------------------------------------------- /client/src/templates/Challenges/components/preview.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/components/preview.css -------------------------------------------------------------------------------- /client/src/templates/Challenges/projects/SolutionForm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/projects/SolutionForm.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/projects/Tool-Panel.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/projects/Tool-Panel.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/projects/backend/Show.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/projects/backend/Show.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/projects/ns.json: -------------------------------------------------------------------------------- 1 | "project" 2 | -------------------------------------------------------------------------------- /client/src/templates/Challenges/projects/tool-panel.css: -------------------------------------------------------------------------------- 1 | .project-tool-panel { 2 | width: 100%; 3 | padding: 0 15px; 4 | } 5 | -------------------------------------------------------------------------------- /client/src/templates/Challenges/rechallenge/builders.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/rechallenge/builders.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/rechallenge/throwers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/rechallenge/throwers.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/redux/code-lock-epic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/redux/code-lock-epic.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/redux/completion-epic.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/redux/completion-epic.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/redux/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/redux/index.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/build.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/build.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/fetch-and-cache.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/fetch-and-cache.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/frame.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/frame.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/index.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/index.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/index.test.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/postUpdate$.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/postUpdate$.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/utils/worker-executor.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/utils/worker-executor.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/video/Show.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/video/Show.js -------------------------------------------------------------------------------- /client/src/templates/Challenges/video/show.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Challenges/video/show.css -------------------------------------------------------------------------------- /client/src/templates/Introduction/Intro.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Introduction/Intro.js -------------------------------------------------------------------------------- /client/src/templates/Introduction/SuperBlockIntro.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Introduction/SuperBlockIntro.js -------------------------------------------------------------------------------- /client/src/templates/Introduction/intro.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/templates/Introduction/intro.css -------------------------------------------------------------------------------- /client/src/utils/ajax.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/ajax.js -------------------------------------------------------------------------------- /client/src/utils/createTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/createTypes.js -------------------------------------------------------------------------------- /client/src/utils/format.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/format.js -------------------------------------------------------------------------------- /client/src/utils/format.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/format.test.js -------------------------------------------------------------------------------- /client/src/utils/get-words.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/get-words.js -------------------------------------------------------------------------------- /client/src/utils/handled-error.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/handled-error.js -------------------------------------------------------------------------------- /client/src/utils/handled-error.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/handled-error.test.js -------------------------------------------------------------------------------- /client/src/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/index.js -------------------------------------------------------------------------------- /client/src/utils/reallyWeirdErrorMessage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/reallyWeirdErrorMessage.js -------------------------------------------------------------------------------- /client/src/utils/report-error.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/report-error.js -------------------------------------------------------------------------------- /client/src/utils/reportedErrorMessage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/reportedErrorMessage.js -------------------------------------------------------------------------------- /client/src/utils/scriptLoaders.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/scriptLoaders.js -------------------------------------------------------------------------------- /client/src/utils/standardErrorMessage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/src/utils/standardErrorMessage.js -------------------------------------------------------------------------------- /client/static/_headers: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/_headers -------------------------------------------------------------------------------- /client/static/css/bootstrap.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/css/bootstrap.min.css -------------------------------------------------------------------------------- /client/static/css/prism.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/css/prism.css -------------------------------------------------------------------------------- /client/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /client/static/fonts/glyphicons-halflings-regular.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/glyphicons-halflings-regular.svg -------------------------------------------------------------------------------- /client/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /client/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /client/static/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Black.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Black.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-BlackItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-BlackItalic.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Bold.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-BoldItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-BoldItalic.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Hairline.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Hairline.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-HairlineItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-HairlineItalic.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Italic.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Light.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-LightItalic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-LightItalic.woff -------------------------------------------------------------------------------- /client/static/fonts/lato/Lato-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/lato/Lato-Regular.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Bold.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Italic.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Light.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Medium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Medium.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Regular.woff -------------------------------------------------------------------------------- /client/static/fonts/roboto-mono/RobotoMono-Thin.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/fonts/roboto-mono/RobotoMono-Thin.woff -------------------------------------------------------------------------------- /client/static/json/cats.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/static/json/cats.json -------------------------------------------------------------------------------- /client/utils/buildChallenges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/buildChallenges.js -------------------------------------------------------------------------------- /client/utils/challengeTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/challengeTypes.js -------------------------------------------------------------------------------- /client/utils/formatting.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/formatting.js -------------------------------------------------------------------------------- /client/utils/gatsby/challengePageCreator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/gatsby/challengePageCreator.js -------------------------------------------------------------------------------- /client/utils/gatsby/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/gatsby/index.js -------------------------------------------------------------------------------- /client/utils/gatsby/layoutSelector.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/gatsby/layoutSelector.js -------------------------------------------------------------------------------- /client/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/index.js -------------------------------------------------------------------------------- /client/utils/infoLog.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/infoLog.js -------------------------------------------------------------------------------- /client/utils/readDir.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/readDir.js -------------------------------------------------------------------------------- /client/utils/regEx.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/regEx.js -------------------------------------------------------------------------------- /client/utils/stateManagement.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/stateManagement.js -------------------------------------------------------------------------------- /client/utils/titleify.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/utils/titleify.js -------------------------------------------------------------------------------- /client/webpack-workers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/client/webpack-workers.js -------------------------------------------------------------------------------- /config/cors-settings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/config/cors-settings.js -------------------------------------------------------------------------------- /config/donation-settings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/config/donation-settings.js -------------------------------------------------------------------------------- /config/env.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/config/env.js -------------------------------------------------------------------------------- /config/misc.js: -------------------------------------------------------------------------------- 1 | exports.oldDataVizId = '561add10cb82ac38a17513b3'; 2 | -------------------------------------------------------------------------------- /config/motivational-quotes.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/config/motivational-quotes.json -------------------------------------------------------------------------------- /config/secrets.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/config/secrets.js -------------------------------------------------------------------------------- /curriculum/.babelrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/.babelrc -------------------------------------------------------------------------------- /curriculum/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/.editorconfig -------------------------------------------------------------------------------- /curriculum/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/.npmignore -------------------------------------------------------------------------------- /curriculum/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/.travis.yml -------------------------------------------------------------------------------- /curriculum/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/CHANGELOG.md -------------------------------------------------------------------------------- /curriculum/LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/LICENSE.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/challenge-js-comments.english.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/challenge-js-comments.english.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/challenge-stripped.chinese.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/challenge-stripped.chinese.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/challenge.chinese.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/challenge.chinese.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/challenge.english.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/challenge.english.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/combined-html-comments.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/combined-html-comments.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/combined-js-comments.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/combined-js-comments.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/combined-jsx-comments.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/combined-jsx-comments.md -------------------------------------------------------------------------------- /curriculum/__fixtures__/combined.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/__fixtures__/combined.md -------------------------------------------------------------------------------- /curriculum/challenges/_meta/algorithms/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/algorithms/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/basic-css/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/basic-css/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/basic-javascript/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/basic-javascript/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/bootstrap/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/bootstrap/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/css-flexbox/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/css-flexbox/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/css-grid/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/css-grid/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/data-structures/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/data-structures/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/debugging/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/debugging/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/es6/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/es6/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/jquery/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/jquery/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/json-apis-and-ajax/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/json-apis-and-ajax/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/numpy/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/numpy/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/project-euler/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/project-euler/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/react-and-redux/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/react-and-redux/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/react/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/react/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/redux/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/redux/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/rosetta-code/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/rosetta-code/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/sass/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/sass/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/take-home-projects/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/take-home-projects/meta.json -------------------------------------------------------------------------------- /curriculum/challenges/_meta/tensorflow/meta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/challenges/_meta/tensorflow/meta.json -------------------------------------------------------------------------------- /curriculum/comment-dictionary.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/comment-dictionary.js -------------------------------------------------------------------------------- /curriculum/commitizen.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/commitizen.config.js -------------------------------------------------------------------------------- /curriculum/commitlint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/commitlint.config.js -------------------------------------------------------------------------------- /curriculum/create-challenge-bundle.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/create-challenge-bundle.js -------------------------------------------------------------------------------- /curriculum/getChallenges.acceptance.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/getChallenges.acceptance.test.js -------------------------------------------------------------------------------- /curriculum/getChallenges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/getChallenges.js -------------------------------------------------------------------------------- /curriculum/getChallenges.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/getChallenges.test.js -------------------------------------------------------------------------------- /curriculum/gulpfile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/gulpfile.js -------------------------------------------------------------------------------- /curriculum/lib.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/lib.js -------------------------------------------------------------------------------- /curriculum/package-entry.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/package-entry.js -------------------------------------------------------------------------------- /curriculum/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/package-lock.json -------------------------------------------------------------------------------- /curriculum/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/package.json -------------------------------------------------------------------------------- /curriculum/schema/challengeSchema.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/schema/challengeSchema.js -------------------------------------------------------------------------------- /curriculum/test/stubs/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /curriculum/test/test-challenges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/test/test-challenges.js -------------------------------------------------------------------------------- /curriculum/test/utils/challengeTitles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/test/utils/challengeTitles.js -------------------------------------------------------------------------------- /curriculum/test/utils/mongoIds.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/test/utils/mongoIds.js -------------------------------------------------------------------------------- /curriculum/test/utils/pseudo-worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/test/utils/pseudo-worker.js -------------------------------------------------------------------------------- /curriculum/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/curriculum/utils.js -------------------------------------------------------------------------------- /cypress-install.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress-install.js -------------------------------------------------------------------------------- /cypress.json: -------------------------------------------------------------------------------- 1 | { 2 | "projectId": "ke77ns" 3 | } 4 | -------------------------------------------------------------------------------- /cypress/fixtures/example.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/fixtures/example.json -------------------------------------------------------------------------------- /cypress/integration/landing.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/integration/landing.js -------------------------------------------------------------------------------- /cypress/integration/learn/challenges/output.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/integration/learn/challenges/output.js -------------------------------------------------------------------------------- /cypress/integration/learn/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/integration/learn/index.js -------------------------------------------------------------------------------- /cypress/plugins/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/plugins/index.js -------------------------------------------------------------------------------- /cypress/support/commands.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/support/commands.js -------------------------------------------------------------------------------- /cypress/support/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/cypress/support/index.js -------------------------------------------------------------------------------- /docker-compose-shared.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docker-compose-shared.yml -------------------------------------------------------------------------------- /docker-compose.tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docker-compose.tests.yml -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | contribute.freecodecamp.org -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/_coverpage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/_coverpage.md -------------------------------------------------------------------------------- /docs/_navbar.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/_sidebar.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/_sidebar.md -------------------------------------------------------------------------------- /docs/_theme.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/_theme.css -------------------------------------------------------------------------------- /docs/chinese-guides/news-author-application.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/chinese-guides/news-author-application.md -------------------------------------------------------------------------------- /docs/chinese-guides/news-translations.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/chinese-guides/news-translations.md -------------------------------------------------------------------------------- /docs/chinese-guides/video-translations.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/chinese-guides/video-translations.md -------------------------------------------------------------------------------- /docs/devops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/devops.md -------------------------------------------------------------------------------- /docs/flight-manuals/moderator-handbook.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/flight-manuals/moderator-handbook.md -------------------------------------------------------------------------------- /docs/flight-manuals/using-reply-templates.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/flight-manuals/using-reply-templates.md -------------------------------------------------------------------------------- /docs/flight-manuals/working-on-virtual-machines.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/flight-manuals/working-on-virtual-machines.md -------------------------------------------------------------------------------- /docs/how-to-catch-outgoing-emails-locally.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-catch-outgoing-emails-locally.md -------------------------------------------------------------------------------- /docs/how-to-help-with-video-challenges.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-help-with-video-challenges.md -------------------------------------------------------------------------------- /docs/how-to-open-a-pull-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-open-a-pull-request.md -------------------------------------------------------------------------------- /docs/how-to-setup-freecodecamp-locally.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-setup-freecodecamp-locally.md -------------------------------------------------------------------------------- /docs/how-to-setup-wsl.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-setup-wsl.md -------------------------------------------------------------------------------- /docs/how-to-use-docker-on-windows-home.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-use-docker-on-windows-home.md -------------------------------------------------------------------------------- /docs/how-to-work-on-coding-challenges.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-work-on-coding-challenges.md -------------------------------------------------------------------------------- /docs/how-to-work-on-the-docs-theme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-work-on-the-docs-theme.md -------------------------------------------------------------------------------- /docs/how-to-work-on-the-news-theme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/how-to-work-on-the-news-theme.md -------------------------------------------------------------------------------- /docs/i18n-languages/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/arabic/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/arabic/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/arabic/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/arabic/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/arabic/devops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/arabic/devops.md -------------------------------------------------------------------------------- /docs/i18n-languages/arabic/how-to-open-a-pull-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/arabic/how-to-open-a-pull-request.md -------------------------------------------------------------------------------- /docs/i18n-languages/chinese/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/chinese/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/chinese/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/chinese/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/french/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/french/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/french/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/french/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/french/how-to-open-a-pull-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/french/how-to-open-a-pull-request.md -------------------------------------------------------------------------------- /docs/i18n-languages/german/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/german/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/german/how-to-open-a-pull-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/german/how-to-open-a-pull-request.md -------------------------------------------------------------------------------- /docs/i18n-languages/italian/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/italian/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/italian/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/italian/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/japanese/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/japanese/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/korean/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/korean/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/korean/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/korean/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/polish/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/polish/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/polish/devops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/polish/devops.md -------------------------------------------------------------------------------- /docs/i18n-languages/polish/how-to-open-a-pull-request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/polish/how-to-open-a-pull-request.md -------------------------------------------------------------------------------- /docs/i18n-languages/portuguese/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/portuguese/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/portuguese/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/portuguese/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/romanian/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/romanian/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/russian/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/russian/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/spanish/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/spanish/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/spanish/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/spanish/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/spanish/document-quick-reference.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/spanish/document-quick-reference.md -------------------------------------------------------------------------------- /docs/i18n-languages/turkish/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/turkish/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/ukrainian/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/ukrainian/CONTRIBUTING.md -------------------------------------------------------------------------------- /docs/i18n-languages/ukrainian/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/ukrainian/README.md -------------------------------------------------------------------------------- /docs/i18n-languages/vietnamese/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/i18n-languages/vietnamese/README.md -------------------------------------------------------------------------------- /docs/images/branding/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/branding/favicon.ico -------------------------------------------------------------------------------- /docs/images/branding/primary_logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/branding/primary_logo.svg -------------------------------------------------------------------------------- /docs/images/devops/travis-build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/devops/travis-build.png -------------------------------------------------------------------------------- /docs/images/github/compare-pull-request-prompt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/github/compare-pull-request-prompt.png -------------------------------------------------------------------------------- /docs/images/github/comparing-forks-for-pull-request.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/github/comparing-forks-for-pull-request.png -------------------------------------------------------------------------------- /docs/images/github/how-to-fork-freeCodeCamp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/github/how-to-fork-freeCodeCamp.gif -------------------------------------------------------------------------------- /docs/images/mailhog/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/mailhog/1.jpg -------------------------------------------------------------------------------- /docs/images/mailhog/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/mailhog/2.jpg -------------------------------------------------------------------------------- /docs/images/mailhog/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/images/mailhog/3.jpg -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/index.html -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/docs/index.md -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/jest.config.js -------------------------------------------------------------------------------- /lerna.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/lerna.json -------------------------------------------------------------------------------- /lighthouserc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/lighthouserc.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/package.json -------------------------------------------------------------------------------- /sample.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/sample.env -------------------------------------------------------------------------------- /tools/challenge-md-parser/.npmignore: -------------------------------------------------------------------------------- 1 | __snapshots__ 2 | fixtures 3 | *.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/challengeSeed-to-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/challengeSeed-to-data.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/challengeSeed-to-data.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/challengeSeed-to-data.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/fixtures/challenge-md-ast.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/fixtures/challenge-md-ast.json -------------------------------------------------------------------------------- /tools/challenge-md-parser/frontmatter-to-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/frontmatter-to-data.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/frontmatter-to-data.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/frontmatter-to-data.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/index.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/package-lock.json -------------------------------------------------------------------------------- /tools/challenge-md-parser/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/package.json -------------------------------------------------------------------------------- /tools/challenge-md-parser/solution-to-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/solution-to-data.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/solution-to-data.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/solution-to-data.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/tests-to-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/tests-to-data.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/tests-to-data.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/tests-to-data.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/text-to-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/text-to-data.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/text-to-data.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/text-to-data.test.js -------------------------------------------------------------------------------- /tools/challenge-md-parser/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/challenge-md-parser/utils/index.js -------------------------------------------------------------------------------- /tools/dashboard/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/.gitignore -------------------------------------------------------------------------------- /tools/dashboard/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/.prettierrc -------------------------------------------------------------------------------- /tools/dashboard/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /tools/dashboard/LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/LICENSE.md -------------------------------------------------------------------------------- /tools/dashboard/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/README.md -------------------------------------------------------------------------------- /tools/dashboard/config/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/config/index.js -------------------------------------------------------------------------------- /tools/dashboard/docs/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/docs/CONTRIBUTING.md -------------------------------------------------------------------------------- /tools/dashboard/docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/docs/README.md -------------------------------------------------------------------------------- /tools/dashboard/lerna.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lerna.json -------------------------------------------------------------------------------- /tools/dashboard/lib/constants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/constants.js -------------------------------------------------------------------------------- /tools/dashboard/lib/defaults.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/defaults.js -------------------------------------------------------------------------------- /tools/dashboard/lib/get-prs/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/get-prs/index.js -------------------------------------------------------------------------------- /tools/dashboard/lib/get-prs/pr-stats.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/get-prs/pr-stats.js -------------------------------------------------------------------------------- /tools/dashboard/lib/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/package-lock.json -------------------------------------------------------------------------------- /tools/dashboard/lib/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/package.json -------------------------------------------------------------------------------- /tools/dashboard/lib/pr-tasks/add-comment.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/pr-tasks/add-comment.js -------------------------------------------------------------------------------- /tools/dashboard/lib/pr-tasks/add-labels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/pr-tasks/add-labels.js -------------------------------------------------------------------------------- /tools/dashboard/lib/pr-tasks/close-open.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/pr-tasks/close-open.js -------------------------------------------------------------------------------- /tools/dashboard/lib/pr-tasks/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/pr-tasks/index.js -------------------------------------------------------------------------------- /tools/dashboard/lib/pr-tasks/labeler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/pr-tasks/labeler.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/index.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/open-json-file.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/open-json-file.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/processing-log.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/processing-log.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/rate-limiter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/rate-limiter.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/save-pr-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/save-pr-data.js -------------------------------------------------------------------------------- /tools/dashboard/lib/utils/save-to-file.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/utils/save-to-file.js -------------------------------------------------------------------------------- /tools/dashboard/lib/validation/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/validation/index.js -------------------------------------------------------------------------------- /tools/dashboard/lib/validation/valid-labels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/lib/validation/valid-labels.js -------------------------------------------------------------------------------- /tools/dashboard/one-off-scripts/find-failures.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/one-off-scripts/find-failures.js -------------------------------------------------------------------------------- /tools/dashboard/one-off-scripts/get-unknown-repo-prs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/one-off-scripts/get-unknown-repo-prs.js -------------------------------------------------------------------------------- /tools/dashboard/one-off-scripts/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/one-off-scripts/package-lock.json -------------------------------------------------------------------------------- /tools/dashboard/one-off-scripts/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/one-off-scripts/package.json -------------------------------------------------------------------------------- /tools/dashboard/one-off-scripts/sweeper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/one-off-scripts/sweeper.js -------------------------------------------------------------------------------- /tools/dashboard/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/package-lock.json -------------------------------------------------------------------------------- /tools/dashboard/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/package.json -------------------------------------------------------------------------------- /tools/dashboard/probot/app.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/app.yml -------------------------------------------------------------------------------- /tools/dashboard/probot/client/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/package-lock.json -------------------------------------------------------------------------------- /tools/dashboard/probot/client/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/package.json -------------------------------------------------------------------------------- /tools/dashboard/probot/client/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/public/favicon.ico -------------------------------------------------------------------------------- /tools/dashboard/probot/client/public/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/public/index.html -------------------------------------------------------------------------------- /tools/dashboard/probot/client/public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/public/manifest.json -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/App.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/App.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/App.test.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/App.test.mjs -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Footer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Footer.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Input.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Input.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/ListItem.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/ListItem.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Pareto.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Pareto.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Result.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Result.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Search.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Search.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/components/Tabs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/components/Tabs.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/constants/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/constants/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/fonts/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/fonts/Lato-Bold.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/fonts/Lato-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/fonts/Lato-Light.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/fonts/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/fonts/Lato-Regular.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/index.css -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/serviceWorker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/serviceWorker.js -------------------------------------------------------------------------------- /tools/dashboard/probot/client/src/theme/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/client/src/theme/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/package-lock.json -------------------------------------------------------------------------------- /tools/dashboard/probot/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/package.json -------------------------------------------------------------------------------- /tools/dashboard/probot/public/fonts/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/public/fonts/Lato-Bold.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/public/fonts/Lato-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/public/fonts/Lato-Light.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/public/fonts/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/public/fonts/Lato-Regular.ttf -------------------------------------------------------------------------------- /tools/dashboard/probot/public/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/public/index.html -------------------------------------------------------------------------------- /tools/dashboard/probot/public/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/public/style.css -------------------------------------------------------------------------------- /tools/dashboard/probot/sample.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/sample.env -------------------------------------------------------------------------------- /tools/dashboard/probot/server/models/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/models/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/presolver.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/presolver.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/index.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/info.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/info.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/pareto.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/pareto.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/pr.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/pr.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/probot.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/probot.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/routes/search.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/routes/search.js -------------------------------------------------------------------------------- /tools/dashboard/probot/server/tools/update-db.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/server/tools/update-db.js -------------------------------------------------------------------------------- /tools/dashboard/probot/test/index.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/test/index.test.js -------------------------------------------------------------------------------- /tools/dashboard/probot/test/utils/testmodels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/test/utils/testmodels.js -------------------------------------------------------------------------------- /tools/dashboard/probot/travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/probot/travis.yml -------------------------------------------------------------------------------- /tools/dashboard/work-logs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/dashboard/work-logs/.gitignore -------------------------------------------------------------------------------- /tools/scripts/build/create-redirects.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/create-redirects.js -------------------------------------------------------------------------------- /tools/scripts/build/create-redirects.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/create-redirects.test.js -------------------------------------------------------------------------------- /tools/scripts/build/ensure-env.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/ensure-env.js -------------------------------------------------------------------------------- /tools/scripts/build/ensure-path-migration-map.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/ensure-path-migration-map.js -------------------------------------------------------------------------------- /tools/scripts/build/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/package-lock.json -------------------------------------------------------------------------------- /tools/scripts/build/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/build/package.json -------------------------------------------------------------------------------- /tools/scripts/ci/ensure-challenge-formatting.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/ci/ensure-challenge-formatting.js -------------------------------------------------------------------------------- /tools/scripts/ci/ensure-guide-formatting.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/ci/ensure-guide-formatting.js -------------------------------------------------------------------------------- /tools/scripts/ci/md-testing-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/ci/md-testing-utils.js -------------------------------------------------------------------------------- /tools/scripts/lint/.markdownlintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/.markdownlintrc.js -------------------------------------------------------------------------------- /tools/scripts/lint/fixtures/badFencing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/fixtures/badFencing.md -------------------------------------------------------------------------------- /tools/scripts/lint/fixtures/badYML.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/fixtures/badYML.md -------------------------------------------------------------------------------- /tools/scripts/lint/fixtures/good.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/fixtures/good.md -------------------------------------------------------------------------------- /tools/scripts/lint/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/index.js -------------------------------------------------------------------------------- /tools/scripts/lint/index.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/index.test.js -------------------------------------------------------------------------------- /tools/scripts/lint/linter/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/linter/index.js -------------------------------------------------------------------------------- /tools/scripts/lint/linter/markdown-prism.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/linter/markdown-prism.js -------------------------------------------------------------------------------- /tools/scripts/lint/linter/markdown-yaml.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/lint/linter/markdown-yaml.js -------------------------------------------------------------------------------- /tools/scripts/seed/__mocks__/curriculum.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/__mocks__/curriculum.json -------------------------------------------------------------------------------- /tools/scripts/seed/create-path-migration.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/create-path-migration.js -------------------------------------------------------------------------------- /tools/scripts/seed/createPathMigrationMap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/createPathMigrationMap.js -------------------------------------------------------------------------------- /tools/scripts/seed/createPathMigrationMap.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/createPathMigrationMap.test.js -------------------------------------------------------------------------------- /tools/scripts/seed/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/package-lock.json -------------------------------------------------------------------------------- /tools/scripts/seed/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/package.json -------------------------------------------------------------------------------- /tools/scripts/seed/seedAuthUser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/scripts/seed/seedAuthUser.js -------------------------------------------------------------------------------- /tools/search-indexing/algolia/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/algolia/index.js -------------------------------------------------------------------------------- /tools/search-indexing/data-push/init/challenges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-push/init/challenges.js -------------------------------------------------------------------------------- /tools/search-indexing/data-push/init/guides.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-push/init/guides.js -------------------------------------------------------------------------------- /tools/search-indexing/data-push/init/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-push/init/index.js -------------------------------------------------------------------------------- /tools/search-indexing/data-push/init/youtube.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-push/init/youtube.js -------------------------------------------------------------------------------- /tools/search-indexing/data-push/update/guides.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-push/update/guides.js -------------------------------------------------------------------------------- /tools/search-indexing/data-sources/challenges/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-sources/challenges/index.js -------------------------------------------------------------------------------- /tools/search-indexing/data-sources/guides/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-sources/guides/index.js -------------------------------------------------------------------------------- /tools/search-indexing/data-sources/news/getAllPosts.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-sources/news/getAllPosts.js -------------------------------------------------------------------------------- /tools/search-indexing/data-sources/youtube/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/data-sources/youtube/index.js -------------------------------------------------------------------------------- /tools/search-indexing/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/package-lock.json -------------------------------------------------------------------------------- /tools/search-indexing/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/package.json -------------------------------------------------------------------------------- /tools/search-indexing/utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/utils/index.js -------------------------------------------------------------------------------- /tools/search-indexing/utils/tests/utils.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/tools/search-indexing/utils/tests/utils.test.js -------------------------------------------------------------------------------- /utils/block-nameify.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/block-nameify.js -------------------------------------------------------------------------------- /utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/index.js -------------------------------------------------------------------------------- /utils/is-audited.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/is-audited.js -------------------------------------------------------------------------------- /utils/polyvinyl.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/polyvinyl.js -------------------------------------------------------------------------------- /utils/slugs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/slugs.js -------------------------------------------------------------------------------- /utils/slugs.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/slugs.test.js -------------------------------------------------------------------------------- /utils/validate.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/validate.js -------------------------------------------------------------------------------- /utils/validate.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Manish-Giri/FreeCodeCamp/HEAD/utils/validate.test.js --------------------------------------------------------------------------------