Question: Within the `header`, provide context about the page by nesting one `img`, `h1`, and `nav` element. <del> The `img` should point to `https://cdn.freecodecamp.org/platform/universal/fcc_primary.svg`, and have an `id` of `logo`. </del> <ins> The `img` should point to `https://cdn.freecodecamp.org/platform/universal/fcc_primary.svg`, have an `id` of `logo`, and have an `alt` text of `freeCodeCamp`. </ins> The `h1` should contain the text `HTML/CSS Quiz`.

[X] The "CSS" and the have the same value. This is affecting screen reader users since this involves an input and associated label. [ ] The logo in the upper left needs alt text. I would suggest it just be "freeCodeCamp". A lot of them. N/A Resolved Add alt text to the logo. Do we need to add an extra step for this or can we just add it to ? No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
Seeing as the logo is non-functional, do we want the alt to be null? ? If it does require an , then this should get its own step, and a clear description as to why it needs one should be given. I suggest changing the of the (and associated ) to .
Per , the logo does require alt text. Functionality isn't the deciding factor here, it's if the image conveys information (i.e. is not purely decorative), which this image clearly does. Do we want to split this off into its own issue if we are going to create a new step?
I would say yes, but it is not fun to deal with the merge conflict, when two PRs are opened at the same time.
The logo still needs an alt text. The logo is introduced in step 7: That step should be updated to instruct campers to give the an alt text of . The seed code in all subsequent steps should be updated to include that new attribute.
hey may i work on this issue? if so please assign it to me
Hey We typically do not assign issues. Instead, we accept the first pull request that comprehensively solves the issue. Issues labelled with or are open for contributions. Please make sure you read . We prioritize contributors following the instructions in our guide. Join us in or if you need help contributing - our community will be happy to assist you.


Question: ## --text-- <del> What is Sarah referring to with `it` in his question `Is it contactless?` </del> <ins> What is Sarah referring to with `it` in her question `Is it contactless?` </ins> ## --answers--

Jake is explaining the purpose of his visit to Sarah. He's there to hand over something that Sarah needs, which will permit him (should be her) access to certain areas. <!DOCTYPE html<html lang="en" <head</head<body</body</htmlNo response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
Thank you for reporting the issue. This issue is open to first-time code contributors to this repository. The file that you should be updating is Please make sure you read our , we prioritize contributors following the instructions in our guides. Join us in our or our if you need help contributing; our moderators will guide you through this. Sometimes we may get more than one pull request. We typically accept the most quality contribution followed by the one that is made first. Happy contributing.
Next step has similar error. Should be
Hii excellent catch. Solved it locally, will be raising a PR in few minutes. This my first valid pull request, pls assign me if possible !
Thank you for your interest in contributing. We typically do not assign issues. Instead, we accept the first pull request that comprehensively solves the issue. Issues labeled with or are open for contributions. Please make sure you read . We prioritize contributors following the instructions in our guide. Join us in or if you need help contributing - our community will be happy to assist you.
Hii fixed the typos in both the task (154 & 155) ! ! Hope it clear all the test and get merged


Question: CROWDIN_API_URL: 'https://freecodecamp.crowdin.com/api/v2/' CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_CURRICULUM }}  - name: Hide Example Link in Nest an Anchor Element challenge uses: ./tools/crowdin/actions/hide-specific-string with: filename: 'basic-html-and-html5/nest-an-anchor-element-within-a-paragraph.md' string-content: Here's a link to www.freecodecamp.org for you to follow. env: CROWDIN_API_URL: 'https://freecodecamp.crowdin.com/api/v2/' CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_CURRICULUM }} CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }}

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Affected page Your code Copy and paste the code from the editor that you used in between the back-ticks below: Expected behavior Text with the example code is not translatable - which is fine. However, the text lower is translatable and this will create confusion for end users on other languages. Screenshots Untrabslatable example: ! vs. Translatable output of the exmple: ! System (please complete the following information): Device: Laptop OS: Windows 10 Browser: chrome Version: 91.0.4472.77 Additional context Add any other context about the problem here.
I think this is expected behaviour. That is because its and example we would not translate it.
Sure... then the description of the output should not be translated either and right now it is.
I think The description should be translated. Which I understand it currently is. This gives the context of the example that follows. The example text line should NOT be translated because it's a literal output of the code. Which I understand it currently is not. It looks like we would want the current behaviour though I would wait for someone else to confirm.
I was just thinking under translation context: people looking at this page in other languages will see on the page: if you write a text like this (in English): ..... that code produces the output (for example in Romania ): Acesta este ul link către la care poți ajunge. I personally would be confused how English is rendered into Romanian by itself
I believe all the other languages are translating the example and instructions, so you are correct both should be translated.
the example in code can't be translated the example can't be translated, so if the result is translated it will never match in English it says Here's a link to for you to follow. where in Spanish it says Aquí hay un enlace a para que lo sigas. where the second line would be how the code above should appear it is translated in Chinese too, and I think we translated it also in Italian But it stands more correct to be kept in English as actual rapresentation of what the result of the code is
Thanks, that is what my initial thought was like I mentioned.

I think we should get this change in all languages and have a check to catch changes as a warning. can you guide us here?
Unfortunately our current workflow doesn't have a quick way to mark a specific string as non-translatable. I could probably put something together, but IMHO it might be worth re-wording the challenge instead.
Hmm, did Crowdin not have a way to manually mark it non-translatable? I might be mistaken though.
We can do that, yes - we would need to revert the translations for the languages which have translated it. However, I believe that hidden state is lost every time the file is re-uploaded.
Hmm, I see. Thanks for clarifying all this. I am glad that I double-checked with you. Do you mind sending a quick support request to Crowdin, seeking advice?
Sure thing - will add that to the list today and CC you :)
Okay I slept on this, and decided to see if there was a way to automate this process. PR coming shortly.
now that this has been merged do we need to do anything over on Crowdin or in our codebase to reset the strings?
Thanks for the reminder I have gone through and cleared the existing translations for this string - it should come down in English for all languages going forward.
Awesome, thanks for taking care of it.


Question: assert($('input[type="checkbox"]')[0]); ``` <del> Your checkbox should still have an `id` attribute with the value `loving`. You may have removed the attribute or changed its value. </del> <ins> Your checkbox should still have an `id` attribute with the value `loving`.  Expected `--fcc-expected--`, but found `--fcc-actual--`. </ins> ```js <del> assert($('input[type="checkbox"]')[0].id === 'loving'); </del> <ins> assert.equal($('input[type="checkbox"]')[0].id, 'loving'); </ins> ``` The text ` Loving` should no longer be located directly to the right of your checkbox. It should be wrapped in a `label` element. Make sure there is a space between the two elements.

This is a common error on this Step - we should modify the hint to point out the capitalization User should receive hint that helps them see the capitalization error No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
The current hint is: "The new element should have a attribute with the value . You have either omitted the value or have a typo. Remember that attribute values should be surrounded with quotation marks." Technically, the attribute value doesn't need to be wrapped in quotes since there are no spaces in the value. Also, it will pass if you don't use quotes for the value, so this part of the hint seems unneeded and should probably be removed. Are you thinking that we should have a separate test just to check whether the value has been capitalized? Or do you think we just add a warning to the current hint reminding them that capitalization (or lack thereof) matters?
I'm not quite sure what the best way forward would be. I just know what most questions for this step on the forum are related to Loving vs loving.
We do have dynamic hints we can use:


Question: files: PropTypes.object.isRequired, handleKeypress: PropTypes.func.isRequired, isOpen: PropTypes.bool, <ins> isSignedIn: PropTypes.bool.isRequired, </ins> message: PropTypes.string, submitChallenge: PropTypes.func.isRequired, title: PropTypes.string

I'm testing beta. Describe the bug When submitting a challenge using Ctrl+Enter it automatically completes also the following challenge. To Reproduce Steps to reproduce the behavior: a logged out user to the first challenge it Ctrl+Enter marks as solved also the following challenge and you can go ahead Expected behavior It should solve the current challenge and present the following one. Screenshots As you can see I can submit multiple challenges: ! Desktop (please complete the following information): OS: Ubuntu Browser Firefox Version 69.0.1 Additional context I've been able to reproduce it on but I could skip only one challenge. On my local dev I managed to skip 4.
I've digged a bit on this issue, and I think the problem is somehow related to this line: As this is triggered also when I'm submitting the finished challenge. If I comment that line out everything works fine, meaning I can Ctrl+Enter to run the tests and submit and the bug disappear. I'm going to dig a bit more, but does that makes any sense to you?
Thanks for testing our beta version and reporting this! You rock. /cc
Thanks It looks like I didn't test the logged out behaviour. so, what do we want to happen for logged out users? The issue I see is that it currently says 'Submit and go to the next challenge', but clearly they can't submit. For now, do we just want them to see the same as logged in users (and quietly not submit)?
Here is what I would do: ! Of course the modal should close as well like you mentioned. The signin button can link to same as the home page CTA. And we could remove from the first button
Turns out it's not working properly even when the user is logged in. I think it's a race condition between and . was quite right, the problem is on that line. It shouldn't be called if the modal is open since it's listening to as well.
yes I think it's with the in the editor and the in the . I can give a further look later if you wish.
Thanks for the offer but I think (with your help!) I've fixed it. It seemed only fair, since I introduced the bug.
Excellent!
Release on its way, should be available within the hour.


Question: showPoints, showPortfolio, showTimeLine, <del> updateMyProfileUI </del> <ins> updateMyProfileUI, user </ins> } = props; const toggleFlag = flag => () => updateMyProfileUI({ profileUI: { [flag]: !props[flag] } });

Once we've built the JSON we want to output, I believe we can just use Pug like this for the button to initiate the file download:


Question: ## --seed-contents-- ```jsx ``` # --solutions--

An empty solution seed with the following format does not parse correctly in Crowdin: ! Adding an empty new-line between the backtick lines will parse correctly in Crowdin: ! The following files have empty seeds with the first format and need a blank line : JavaScript / Basic JavaScript comment your javascript code declare javascript variables declare string variables initializing variables with the assignment operator passing values to functions with arguments return a value from a function with return write reusable javascript with functions JavaScript / ES6 create a javascript promise JavaScript / Object Oriented Programming define a constructor function Front End Libraries / Bootstrap Create a bootstrap headline Front End Libraries / React Create a complex jsx element Quality Assurance Projects metric imperial converter Coding Interview Prep / Data Structures Create an ES6 Javascript Map
Hi, I'll add those blank lines. It'll be my first time contributing to an open-source project, though.
Please visit to find all the info you will need to get started with contributing a fix for this issue.
Alright. I'll go through the documentation.
Hi. First time contributor here. I have forked the free code camp files to my github page. I have cloned them locally, opened the appropriate folders into my VSCode editor and made the changes (though I was not able to find a # --seed-- in Quality Assurance Projects: metric imperial conversion) but now I have no idea of how to get the code back here. Is there some documentation with instructions on how to do that? Thanks in advance.


Question: #learn-app-wrapper .reflex-container.horizontal > .reflex-splitter { height: 5px; } <ins> #description p, #instructions p { font-family: 'Lato', sans-serif; } </ins>

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Describe your problem and how to reproduce it: Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Browser Version: Operating System: If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):


Question: assert(!!el && el.tagName === 'LABEL') ``` <del> Your `#name-label` should not be empty </del> <ins> Your `#name-label` should contain text that describes the input. </ins> ```js const el = document.getElementById('name-label') assert(!!el && el.innerText.length > 0) ``` <del> Your `#email-label` should not be empty </del> <ins> Your `#email-label` should contain text that describes the input. </ins> ```js const el = document.getElementById('email-label') assert(!!el && el.innerText.length > 0) ``` <del> Your `#number-label` should not be empty </del> <ins> Your `#number-label` should contain text that describes the input. </ins> ```js const el = document.getElementById('number-label')

There are three tests that test for non-empty labels: "Your #name-label should not be empty." "Your #email-label should not be empty." "Your #number-label should not be empty." I think the word "empty" is slightly ambiguous here. These tests appear to be looking for actual text inside the label. But if the user nests an inside the label without text then the isn't exactly empty: The above will fail because there is no actual text in the but I can see how the user would not think the is empty. N/A Adjust the test descriptions so they clarify that text needs to be inside the . Perhaps something like: "Your #name-label should contain text that describes the input". No response N/A No response
Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first. Happy contributing.


Question: # --description-- <del> You may be familiar with the `meta` tag already; it is used to specify information about the page, such as the title, description, keywords, and author. </del> <ins> You may be familiar with the `meta` element already; it is used to specify information about the page, such as the title, description, keywords, and author. </ins> <del> Give your page a `meta` tag with an appropriate `charset` value. </del> <ins> Give your page a `meta` element with an appropriate `charset` value. </ins> The `charset` attribute specifies the character encoding of the page, and, nowadays, `UTF-8` is the only encoding supported by most browsers.

related to In the new Responsive Design curriculum the words tag and element are used interchangebly The correct use should be element and tag (or at least, element is the whole thing, tag is the one that start with and end with and can be an opening tag, a closing tag or a self-closing tag). Should this be changed in the new curriculum?
Do we have many/any incorrect uses?
actually mostly not - there is some ambiguity with in the second step of the accessibility quiz I have been hasty
My concern was with these steps, which are about meta tags
That does look like something that should be standardised. Thank you, for listing them. I am opening this issue up for first timers only. The files that need changed are listed in the above reply. What needs changed There are a few uses of the word which should be changed to . Example Original: New: Note Not all uses of the word should be changed. Example: An issue with the help wanted or first timers only label is open for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute, and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the
Hi - is it ok if i pick this up? First timer here


Question: challengeMetaSelector } from '../redux'; <ins> import { isSignedInSelector } from '../../../redux'; </ins> const mapStateToProps = createSelector( challengeFilesSelector, challengeMetaSelector, isCompletionModalOpenSelector, <ins> isSignedInSelector, </ins> successMessageSelector, <del> (files, { title }, isOpen, message) => ({ </del> <ins> (files, { title }, isOpen, isSignedIn, message) => ({ </ins> files, title, isOpen, <ins> isSignedIn, </ins> message }) );

I'm testing beta. Describe the bug When submitting a challenge using Ctrl+Enter it automatically completes also the following challenge. To Reproduce Steps to reproduce the behavior: a logged out user to the first challenge it Ctrl+Enter marks as solved also the following challenge and you can go ahead Expected behavior It should solve the current challenge and present the following one. Screenshots As you can see I can submit multiple challenges: ! Desktop (please complete the following information): OS: Ubuntu Browser Firefox Version 69.0.1 Additional context I've been able to reproduce it on but I could skip only one challenge. On my local dev I managed to skip 4.
I've digged a bit on this issue, and I think the problem is somehow related to this line: As this is triggered also when I'm submitting the finished challenge. If I comment that line out everything works fine, meaning I can Ctrl+Enter to run the tests and submit and the bug disappear. I'm going to dig a bit more, but does that makes any sense to you?
Thanks for testing our beta version and reporting this! You rock. /cc
Thanks It looks like I didn't test the logged out behaviour. so, what do we want to happen for logged out users? The issue I see is that it currently says 'Submit and go to the next challenge', but clearly they can't submit. For now, do we just want them to see the same as logged in users (and quietly not submit)?
Here is what I would do: ! Of course the modal should close as well like you mentioned. The signin button can link to same as the home page CTA. And we could remove from the first button
Turns out it's not working properly even when the user is logged in. I think it's a race condition between and . was quite right, the problem is on that line. It shouldn't be called if the modal is open since it's listening to as well.
yes I think it's with the in the editor and the in the . I can give a further look later if you wish.
Thanks for the offer but I think (with your help!) I've fixed it. It seemed only fair, since I introduced the bug.
Excellent!
Release on its way, should be available within the hour.


Question: # --description-- <del> You can also replace the `done` reference in your `padRow` call. Note that `rows.length` here would give you an off-by-one error, because `done` is incremented *before* the call. So you'll need to replace `done` here with `rows.length + 1`. When you do this, you may see a `Range Error`, because we've created another off-by-one error. You'll need to change the `while` condition to use the less than operator, instead of the less than or equal operator. </del> <ins> Replace the `done` reference in your `padRow` call with `rows.length + 1`. </ins> # --hints--

On step 89 and 90 of the Pyramid generator there is this misterious error that appear, it can be confusing for campers. !
Error is coming from the function, specifically one of the string repeats. Depending on the and , when or will be , calling method of string will show that error. Edit: When condition is there's no such issue.
Yep. I think reworking the lessons so we never leave the learner with broken code (or at least never unexplained broken code) is the way to go.
I'm not sure if it was even intended to have broken code, description is suggesting everything should work fine. Step 91 asks for two changes, one of which specifically makes this error appear (second change fixes the issue).
Yeah, it's a bit confusing. Probably not intentional, though. On 91 there's this: the only time I don't see the error is when I've followed all the instructions on step 91.
Is this not enough to clear up any doubts? Cuz after following the instructions in step 91, there's nothing mysterious about the error anymore.
I don't think so. Step 89, where error is introduced, doesn't mention it. Neither does 90. It's only when you reach 91 that the error is mentioned and the text is which is incorrect. Changing to has no effect on the error. It's only the combination of that and adjusting the conditional that finally removes the error. The main issue with this is that it breaks the feedback loop between learner's actions and the code's behaviour. Speaking for myself, everything gets harder when the results of my actions are essentially invisible. I know we run tests to check you re doing it right, but that's not really a substitute for them seeing how your actions impact the program.
Okay. We need to at least note the possibility of an unexpected error to the camper. I'm thinking on step 89 now.
Just for posterity, the steps got shifted. Error is introduced by completing step 95 Error is resolved by completing step 96 What should be changed here: Step 95 should: Introduce and explain the error Ask the campers to change the comparison to Step 96 should: No longer ask campers to change the to Not mention that creates a


Question: "For example, if you wanted to make a text input field required, you can just add the word "required" within your input element use: <input type='text' required>" ], "tests": [  "assert($('input').prop('required'), 'Your text field should have the property of being required.')", "assert(new RegExp('cat photo URL').test($('input').prop('placeholder')), 'Your text field should have the placeholder text of "cat photo URL".')"   "assert($('input').prop('required'), 'Your text field should have the property of being required.')"  ], "challengeSeed": [ "<link href='http://fonts.googleapis.com/css?family=Lobster' rel='stylesheet' type='text/css'>",

This challenge has the additional requirement of "Your text field should have the placeholder text of "cat photo URL".", when this placeholder text was before, then removed again arbitrarily in this lesson. Assuming this is a bug since it doesn't match the tutorial flow.


Question: "dashedName": "waypoint-create-decimal-numbers-with-javascript", "difficulty": "9.9815", "description": [  "in JavaScript we can can work with decimal numbers",   "In JavaScript we can can work with decimal numbers.",  "Let's create a variable myDecimal and give it a decimal value." ], "tests": [

Challenge has an issue. In JavaScript whole numbers (called integers) can be easily used to preform mathematical functions <-- Let's try a few of the most commonly used ones now <-- We use - for subtraction <---
merged to

Challenge has an issue. In JavaScript whole numbers (called integers) can be easily used to preform mathematical functions <-- Let's try a few of the most commonly used ones now <--- We use * for multiplication <---
merged to

Challenge has an issue. in JavaScript we can can work with decimal numbers <--- needs full stop.
merged to


Question: Here is an example of a `switch` statement: ```js <del> switch (lowercaseLetter) { case "a": console.log("A"); </del> <ins> switch (fruit) { case "apple": console.log("The fruit is an apple"); </ins> break; <del> case "b": console.log("B"); </del> <ins> case "orange": console.log("The fruit is an orange"); </ins> break; } ```

It isn't a huge deal, but I do think the camper has a point, see the forum thread for more info. I think updating the example code with something less ambiguous wouldn't be a horrible idea. Current example New example (I can't think of anything better right now, you get the point). Less ambiguous example code that does not involve letter case logic or identifiers with the word in it when teaching about and . No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22]
I agree, the example is unnecessarily confusing. I have submitted a pull request that uses a classic fruit example. The console log is also more explicit on what is being selected. Additionally, may I suggest that we also change the instructions to be more explicit? So instead of: it'll be something like:Additionally, additionally, may I also suggest we expand the explanation on strict equality testing? So add a simple sentence like: "Strings with different cases will be treated as different values"
I guess the conditions can be clarified, but I don't remember seeing this being a problem. That isn't how strict equality works. It has to do with type coercion. Letters with different casings always have different values.
Yes I get that, but for this specific example, I just thought it would be good to keep it simple. On second thought, the explanations / instructions are good enough. Lets leave it as it is.
hello can you please tell me why my pull requests are getting blocked when I am trying to close an issue


Question: Simply clicking the `Preview Custom 404 Page` button will forward you to the correct page. <del> ![Image - How to sign in when working locally](https://user-images.githubusercontent.com/1884376/52650951-48922e80-2f11-11e9-9eee-360a25ad28ad.gif) </del> <ins> ![Image - How to sign in when working locally](https://user-images.githubusercontent.com/29990697/71541249-f63cdf00-2923-11ea-8a85-cefb6f9c9977.gif) </ins> ## Quick commands reference when working locally

The GIF depicts fCC in its old design. Even though I don't think there's anything wrong with it, I guess it should be updated to align with how fCC looks now !
Hi, I'll work on this
Just submit a PR when you are ready.
When I click the "sign-in" button on the homepage, I see this screen - ! Is this the expected behavior? Should I be creating a GIF of this?
Yes, this is expected behavior.


Question: assert(document.querySelector("fieldset:nth-of-type(3) input:nth-of-type(5)[type='checkbox']")); ``` <del> You should have an checkbox input with an `id` of `"price"`. </del> <ins> You should have a checkbox input with an `id` of `"price"`. </ins> ```js assert.strictEqual(document.querySelectorAll("fieldset:nth-of-type(3) input[type='checkbox']")[4].getAttribute('id'), 'price');

"an checkbox input" should be changed to "a checkbox input". Fix the typo in the following files:
This issue is open for contribution. The file that you should be updating is linked in the original post. We typically do not assign issues. Instead, we accept the most quality contribution followed by the one that is made first. Please make sure you read our as well as our , we prioritize contributors following the instructions in our guides. Join us in our or our if you need help contributing; our moderators will guide you through this. Happy contributing.


Question: script(src='/js/lib/codemirror/mode/htmlmixed/htmlmixed.js') script(src='/js/lib/codemirror/addon/emmet/emmet.js') .row.courseware-height <del> .col-xs-12.col-sm-12.col-md-3.col-lg-3 </del> <ins> .col-md-3.col-lg-3 </ins> .scroll-locker(id = "scroll-locker") .innerMarginFix(style = "width: 99%;") .well

A camper relayed this to me: There is some problem with the first challenge ending button on android with firefox browser. And in this moment I tried in chrome too, the issue is the same, the button is not active after the challenge is done. Xperia Z1 compact, android: 5.0.2, firefox: 39.0 Chrome: 43.0.2357.93
This is an issue whenever the screen size is small. It will also happen on a desktop if you resize the window to half screen or less.


Question: .negative-bottom-margin-30 label.negative-10.btn.btn-primary.btn-block#submitButton i.fa.fa-play <del> |   Run code (ctrl + enter) </del> <ins> |   Run tests (ctrl + enter) </ins> br if (user) .button-spacer

I noticed on this challenge that the button to run the tests still runs code ! I think this should say run tests


Question: "challengeEntryPoint": "palindrome("eye");" }, { <ins> "_id": "a26cbbe9ad8655a977e1ceb5", "name": "Find the Longest Word in a String", "difficulty": "1.04", "description": [ "Return the length of the longest word in the provided sentence.", "Your response should be a number." ], "challengeEntryPoint": "findLongestWord('The quick brown fox jumped over the lazy dog');", "challengeSeed": "function findLongestWord(str) {n  return str.length;rn}", "tests": [ "expect(findLongestWord('The quick brown fox jumped over the lazy dog')).to.be.a('Number');", "expect(findLongestWord('The quick brown fox jumped over the lazy dog')).to.equal(6);", "expect(findLongestWord('May the force be with you')).to.equal(5);", "expect(findLongestWord('Google do a barrel roll')).to.equal(6);", "expect(findLongestWord('What is the average airspeed velocity of an unladen swallow')).to.equal(8);" ] }, { "_id": "ab6137d4e35944e21037b769", "name": "Title Case a Sentence", "difficulty": "1.05", "description": [ "Return the provided string with the first letter of each word capitalized.", "For the purpose of this exercise, you should also capitalize connecting words like 'the' and 'of'." ], "challengeEntryPoint": "titleCase("I'm a little tea pot")", "challengeSeed": "function titleCase(str) {n  return str;rn}", "tests": [ "expect(titleCase("I'm a little tea pot")).to.be.a('String');", "expect(titleCase("I'm a little tea pot")).to.equal("I'm A Little Tea Pot");", "expect(titleCase("sHoRt AnD sToUt")).to.equal("Short And Stout");", "expect(titleCase("HERE IS MY  HANDLE HERE IS MY SPOUT")).to.equal("Here Is My  Handle Here Is My Spout");" ] }, { "_id": "a789b3483989747d63b0e427", "name": "Return Largest Numbers in Arrays", "difficulty": "1.06", "description": [ "Return an array consisting of the largest numbers in the provided array. The array will contain 4 sub-arrays.", "Remember, you an iterate through an array with a simple for loop, and access each member with array syntax arr[i] .", "If you are writing your own Chai.js tests, be sure to use a deep equal statement instead of an equal statement when comparing arrays." ], "challengeEntryPoint": "largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);", "challengeSeed": "function largestOfFour(arr) {n  // You can do this!rn  return arr;rn}", "tests": [ "expect(largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]])).to.be.a('array');", "(largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]])).should.equals([5,27,39,1001]);", "assert(largestOfFour([[4, 9, 1, 3], [13, 35, 18, 26], [32, 35, 97, 39], [1000000, 1001, 857, 1]]) === [9,35,97,1000000]);" ] }, { "_id": "a3566b1109230028080c9345", "name": "Sum All Numbers in a Range", "difficulty": "2.00", "description": [ "We'll pass you an array of two numbers. Return the sum those two numbers and all numbers between them.", "The lowest number will not always come first." ], "challengeEntryPoint": "sumAll([1, 4]);", "challengeSeed": "function sumAll(arr) {n  return(1);rn}", "tests": [ "expect(sumAll([1, 4])).to.be.a('Number');", "expect(sumAll([1, 4])).to.equal(10);", "expect(sumAll([4, 1])).to.equal(10);", "expect(sumAll([5, 10])).to.equal(45);", "expect(sumAll([10, 5])).to.equal(45);" ] }, { "_id": "a5229172f011153519423690", "name": "Sum All Odd Fibonacci Numbers", "difficulty": "2.01", "description": [ "Return the sum of all odd fibonacci numbers up to and including the passed number.", "Starting from 1, the first few numbers of a Fibonacci sequence are 1, 2, 3, 5 and 8, and each subsequent number is the sum of the previous two numbers." ], "challengeEntryPoint": "sumFibs(1000);", "challengeSeed": "function sumFibs(num) {n  return num;rn}", "tests": [ "expect(sumFibs(1)).to.be.a('number');", "expect(sumFibs(1000)).to.equal(3382);", "expect(sumFibs(4000000)).to.equal(10316619);", "expect(sumFibs(4)).to.equal(10);" ] }, { "_id": "a3bfc1673c0526e06d3ac698", "name": "Sum All Primes", "difficulty": "2.10", "description": [ "Sum all the prime numbers up to and including the provided number.", "A prime number is defined as having only two divisors, 1 and itself. For example, 2 is a prime number because it's only divisible by 1 and 2. 1 isn't a prime number, because it's only divisible  by itself.", "The provided number may not be a prime." ], "challengeEntryPoint": "sumPrimes(10);", "challengeSeed": "function sumPrimes(num) {n  return num;rn}", "tests": [ "expect(sumPrimes(10)).to.be.a('number');", "expect(sumPrimes(10)).to.equal(27);", "expect(sumPrimes(977)).to.equal(73156);" ] }, { "_id": "ae9defd7acaf69703ab432ea", "name": "Smallest Common Multiple", "difficulty": "2.11", "description": [ "Find the smallest number that evenly divides all numbers in the provided range.", "The range will be an array of two numbers that will not necessarily be in numerical order." ], "challengeEntryPoint": "smallestCommons([1,5]);", "challengeSeed": "function smallestCommons(arr) {n  return arr;rn}rn", "tests": [ "expect(smallestCommons([1,5])).to.be.a('number');", "expect(smallestCommons([1,5])).to.equal(60);", "expect(smallestCommons([5,1])).to.equal(60);", "(smallestCommons([1,13])).should.equal(360360);" ] }, { </ins> "_id" : "aff0395860f5d3034dc0bfc9", "name": "Validate US Telephone Numbers", <del> "difficulty": "3", </del> <ins> "difficulty": "3.10", </ins> "description": [ "Return true if the passed string is a valid US phone number", "The user may fill out the form field any way they choose as long as it is a valid US number. The following are all valid formats for US numbers:",

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --The test requires a multi-line comment of the form . However, the test fails if additional ` characters are present at the beginning or the end of the text contained within the comment. Some examples : The regular expression for the corresponding test needs to be updated. Browser Name: Google Chrome Browser Version: 60+ Operating System: Ubuntu 18.04 !
Hi, I would like to have a go to fix this problem
That's good, please read .
Test fails if multiline style comment includes either / File: Line: 33 this regex is the problem

When I attempt to Run the tests for the code I submitted for Roman Numerals Converter, the page freezes and I cannot solve the issue until I clear the cashe of my browser. Help!
I have the same issue. My browser complains about a long running script and then bails out.
Ok, I figured this one out... if you use the solution in the Gritter chat, that solution will cause a never ending loop, because of the while expression (while numCopy 0 - which is always true btw). This never ending loop will freeze your browser. Moreover, as I lately discovered, the solution there only covers very few of the cases that we need to test to pass the Bonfire. So back to the drawing board, people!
Leaving this open as a bug for someone to fix the solution in the wiki to one that works with the new test cases.


Question:
--- ## Description
 Puede ejecutar el mismo código varias veces utilizando un bucle. El primer tipo de bucle vamos a aprender se llama un " while " bucle porque funciona "mientras que" una condición especificada es verdadera y se detiene una vez que la condición ya no es cierto.
 var ourArray = [];
 var i = 0;
 mientras (i <5) {
 nuestroArray.push (i);
 i ++;
 }
 Intentemos que funcione un bucle while empujando los valores a una matriz.

 Puede ejecutar el mismo código varias veces utilizando un bucle. El primer tipo de bucle vamos a aprender se llama un while bucle porque funciona "mientras que" una condición especificada es verdadera y se detiene una vez que la condición ya no es cierto.
 var ourArray = [];
 var i = 0;
 mientras (i <5) {
 nuestroArray.push (i);
 i ++;
 }
 Intentemos que funcione un bucle while empujando los valores a una matriz.
  ## Instructions
 Empuje los números de 0 a 4 para myArray usando un while de bucle.

In some curriculum articles, some of the code-bits highlighted by the are enclosed by a pair of quotes which are not necessary. Since the tags already highlight code, there is no need for the quotes to be there. That is, instead of: It should be: One example can be found in PRs: [x] English [x] Chinese - No instances found [] Russian [x] Arabic [] Portuguese [x] Spanish
Do we have a list of such challenges? That would help so we know when to close this issue (i.e. all have been covered).
I do not have a list of these challenges a.t.m. In the P.R. from where this originated, has said something about there being other files where we had this, he might have a lead on it, otherwise a repo wide search for can be run
OK.
If you do a quick search of the repo to see how many files might be affected by this, then I will query the open PRs to check all existing open PRs which might have such changes.
I would like to start from . Kindly let me know May I start now to avoid file merge conflict. I checked for . There are 18 files that will be affected.
we can take care of the merge conflicts if you want to submit the PR. Make sure you're working from the latest commit of the freecodecamp master branch. Please try to limit the changes in this PR to only removing the quotes so it doesn't make conflict resolution more difficult. Thanks!
I think it's better to allow a first-time contributor to work on the issue. Please feel free to look through the other issues. There are many of them we could use your help on! In case this one is still not picked up in a few days, you can then work on this.
I was already working on this. I will look for issues also from now onwards.
Is this issue still on? If yes, can I help you?
This one already has an open PR (see above ).
Okay No problem!!
Is this issue closed ? I am a first time contributor and would like to work on it.
Not yet, only the PR for English language has been merged. Check with for what languages he is making a PR for
You can start with any of the language except English language.

I am not working as of now for any other language. It would be great if we allow first timer to work on this.
hello, I would like to do this as a first timer. Where should I start?
check with for what languages they are working on, you can pick up the other languages and use the search and replace functionality of your code editor to make changes as discussed above
Hi, I'm new to freecodecamp but I'm wondering if you guys still need help on this? If so, what languages should I work on? Thanks!
Hello, I'd like to help with this issue as well. Which language folders are available? Thanks!
Thanks for helping out with this! AFAIK, so far only . Since we haven't heard from and yet, you both are welcome to pick one language each from the available four (Arabic, Chinese, Portuguese and Spanish), and start working on the corresponding files. Considering that and asked first, we'll wait for them to claim the other two language versions if they're still interested. In case they (or aren't, you can then continue with these remaining versions too (if you prefer).
Thanks I'll volunteer to do the Spanish folder.
Thanks I'll take the Portuguese folder!
Hi, after taking a cursory look in /curriculum/challenges/portuguese, and searching for <code"<codestuff </code"</code", and &quot, I haven't found any examples of <code"<codestuff </code"</code", and the only places where <code"<codeor </code" </codepop up are in Tests, and in assert fields, where it's unrelated I think. Am I missing something? Sorry for the bother!
Hi Try searching making sure there is a space in between. I noticed there were a lot of false positives when I did my search. When I searched, I was able to find in the Portuguese folder at declare-the-doctype-of-an-html-
Thank you! I removed all the instances of , and I think that that may be all of the instances in the Portuguese files. Would it be possible for me to work on the other untaken languages as well, or should I wait on and to see if they are picking up Arabic/Chinese?

Guys, try searching for and separately
I made sure to search , , , , , , , and , all separately.
Do we still need help for Arabic/Chinese? I wouldn't mind picking up those as well!
Sure! Go ahead!
Hi are you doing both Arabic/Chinese? Do you mind if I do one of the folders?
Go for it! I'll take Chinese and you can have Arabic?
Thanks I'll move forward with the Arabic folder.
Hey, Would like to give a hand as its my first contribution. Where should i start? is the quote issue resolved or are there more languages where help is needed? Thanks in advance
- It appears you can choose between Spanish and Portuguese. If you have not contributed before, I suggest starting with and . If you have any questions, then ask in our .
Actually I think that all files currently are accounted for. Me and have created PR's for Portuguese/Spanish, and now we're working on Chinese/Arabic. I think Russian and English were already taken before us.
After looking for , , , , , , , and , I couldn't find any instances of any of these in the Chinese folder. Somebody else can verify if they wish, but as far as I've searched, I can't find anything in the Chinese folder specifically, even though they exist in my local (non-fixed) Arabic, Portuguese, Spanish, etc. folders, so I don't think a PR needs to be made for the Chinese folder specifically.
Hi, this will be my first contribution. I'm wondering if Chinese is still up for grab. If not, which one can I choose? Thanks.
It appears is already working on the Chinese version.
Alright, it seems like every one of them is taken. Let me know if any one of them needs help in the future. Thanks.
I've taken a look at the Chinese version, and it seems like the quotes are already removed. I won't be submitting a PR for it, so if you want to take a look and find something that I missed then feel free to make the PR yourself!
Had this been fixed in the Portuguese and Russian folders? Someone needs to have a look
Even if those languages were not translated, it is fine. We are no longer accepting translations for the current curriculum.

We do not need any further PRs for the the non-English curriculum files.
I see. Alright


Question: # --description-- <del> Give both your `#controls` and `#stats` elements a `border` of `1px solid #0a0a23`, a `#0a0a23` text color, and `5px` of padding. </del> <ins> Using a selector list (`selector1, selector2`) give both your `#controls` and `#stats` elements a `border` of `1px solid #0a0a23`, a `#0a0a23` text color, and `5px` of `padding`. </ins> # --hints-- <del> You should have a `#controls, #stats` selector. </del> <ins> You should have a `#controls, #stats` selector list. </ins> ```js const selector = new __helpers.CSSHelp(document).getStyle('#controls, #stats');

Below is syntactically valid code that meets the challenge description. The error message says but we've adopted a policy of accepting any valid syntax that meets the challenge description, so I think we need to check that the target elements received the desired style. Valid code should be accepted. No response All No response
I think I would be fine with only checking the style of the elements here. My only concern would be that - presumably, would we remove the test that says - do we need a hint like that to help guide people, or do we expect them to know that at this point?
I think we should update the requirements and specifically ask for a selector list. I don't think we should allow the duplication of styles in separate selectors. I know the selector list was taught in the CSS curriculum, but maybe we need an example here, I.e. (). Or maybe we do not if they are expected to know about it already. Edit: The test would really just say this instead
That'd also be a fine approach to me. One way or another we need the target solution and the instructions to agree
I am fine with instructions explaining better. Since instructions did not give more context. it was lack of context. it caused someone got misunderstand when they asked a help. and thank you!
An issue with the help wanted or first timers only label is open for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the Here is the file you will need to work with You will need to update the description to be this You will also need to update the first hint text to be this instead
Hello! I am a new open source contributor and I tried to contribute to issue number which I did but in a weird manual way on GitHub because I am getting error cloning the freeCodeCamp repo after I fork it. I hope anyone can help me with it. Here it was it exactly says: Updating files: 100% (/), done. fatal: unable to checkout working tree warning: Clone succeeded, but checkout failed.

You can inspect what was checked out with 'git status' and retry with 'git restore --source=HEAD :/'
Hi ! It is best to post your question on the forum or discord so people can assist you there instead of on this issue. Thanks for understanding


Question: --- title: Caesars Cipher ---  ![:triangular_flag_on_post:](https://forum.freecodecamp.com/images/emoji/emoji_one/triangular_flag_on_post.png?v=3 ":triangular_flag_on_post:") Remember to use **`Read-Search-Ask`** if you get stuck. Try to pair program ![:busts_in_silhouette:](https://forum.freecodecamp.com/images/emoji/emoji_one/busts_in_silhouette.png?v=3 ":busts_in_silhouette:") and write your own code ![:pencil:](https://forum.freecodecamp.com/images/emoji/emoji_one/pencil.png?v=3 ":pencil:") ### ![:checkered_flag:](https://forum.freecodecamp.com/images/emoji/emoji_one/checkered_flag.png?v=3 ":checkered_flag:") Problem Explanation: *   You need to write a function, which will take a string encoded with _Caesar cipher_ as a parameter and decode it. *   The one used here is ROT13 where the value of the letter is shifted by 13 places. e.g. 'A' ![:left_right_arrow:](https://forum.freecodecamp.com/images/emoji/emoji_one/left_right_arrow.png?v=3 ":left_right_arrow:") 'N', 'T' ![:left_right_arrow:](https://forum.freecodecamp.com/images/emoji/emoji_one/left_right_arrow.png?v=3 ":left_right_arrow:") 'G'. *   You have to shift it back 13 positions, such that 'N' ![:left_right_arrow:](https://forum.freecodecamp.com/images/emoji/emoji_one/left_right_arrow.png?v=3 ":left_right_arrow:") 'A'. #### Relevant Links *   String.prototype.charCodeAt *   String.fromCharCode  ## ![:speech_balloon:](https://forum.freecodecamp.com/images/emoji/emoji_one/speech_balloon.png?v=3 ":speech_balloon:") Hint: 1

Describe your problem and how to reproduce it: First Issue: The Basic solution uses call() function but doesn't include any reference to it. Second Issue: The Basic solution doesn't work when you use it as a solution for the challenge. You get the following error on the beta site: I guess setting to fixes this issue. Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Mozilla Firefox Browser Version: 66.0.5 Operating System: Windows 10 One more thing. The error generated on the old site is helpful whereas the one on the new site isn't. Probably something to look at.
That is a valid point regarding the error message, but that is a different issue related to how the challenge tests are ran. I have gone ahead and created a PR () to address the solution in the Guide, but the last issue you mentioned will have to be discussed in a separate issue (feel free to create it if you have the time). I could not find any outstanding issues regarding why this does not show the error "assignment to undeclared variable x" which does show in the actual browser console. Are errors like this being suppressed on showing in the fake console for any reason?


Question: assert([...document.querySelector('form').attributes].length < 2); ``` <del> You should create an input element. Check the syntax. </del> <ins> You should create an `input` element. Check the syntax. </ins> ```js assert(document.querySelector('input'));

In step 36 of catAppPhoto project, the hint in line 33 missing code block This should be changed to Here is the markdown file Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first. Happy contributing.


Question: "Now try commenting out your call to Google Fonts, so that the "Lobster" font isn't available. Notice how it degrades to the "Monospace" font." ], "tests": [ <del> "assert($('h2').css('font-family').match(/lobster/i), 'Your h2 element should use the font "Lobster".')", "assert($('h2').css('font-family').match(/monospace/i), 'Your h2 element should degrade to the font "Monospace" when "Lobster" is not available.')" </del> <ins> "assert($('h2').css('font-family').match(/^"?lobster/i), 'Your h2 element should use the font "Lobster".')", "assert($('h2').css('font-family').match(/lobster"?,monospace/i), 'Your h2 element should degrade to the font "Monospace" when "Lobster" is not available.')" </ins> ], "challengeSeed": [ "<link href='http://fonts.googleapis.com/css?family=Lobster' rel='stylesheet' type='text/css'>",

Challenge has an issue. Please describe how to reproduce it, and include links to screen shots if possible. In the Challenge it ask that "use "Lobster" as their font family, but degrade to the "Monospace" font when the "Lobster" font isn't available" but if you write the other way in the CSS you can pass the challenge. !
I found the corresponding line but I don't know what does and why has such strange input, so I'm not sure how to fix this ticket. Perhaps split the css value string by into an array and make sure the item with "monospace" has a higher index than the item with "lobster".
assert is part of the test library fcc uses. So in this case the tests like you were saying should be for example: assert($('h2').css('font-family').toLowerCase().replace(' ', '').split(',')[0].match(/lobster/i) assert($('h2').css('font-family').toLowerCase().replace(' ', '').split(',')[1].match(/monospace/i)
Please note that both and are legal, so one should probably first split with only and then .
it doesn't really change the result but sure!


Question: Fulfill the user stories and pass all the tests below to complete this project. Give it your own personal style. Happy Coding! <ins> **Note:** Be sure to add `<link rel="stylesheet" href="styles.css">` in your HTML to link your stylesheet and apply your CSS </ins> # --hints-- You should have an `h1` element with an `id` of `title`

With the new format, a lot of people are not linking their css files to the HTML document. It is coming up a lot on the forum. Especially for those that are going through the Legacy curriculum. I think we should add a message underneath the sample projects, to remember to link the CSS file. Proposed change: Remember to link your CSS file in the HTML document. <img width="460" alt="Screen Shot 2022-05-14 at 8 57 10 AM" src="https://user-"
I had trouble fixing , because I didn't link To I hope this will be implemented
I think we should do this.


Question: HTML/CSS Quiz

[X] The "CSS" and the have the same value. This is affecting screen reader users since this involves an input and associated label. [ ] The logo in the upper left needs alt text. I would suggest it just be "freeCodeCamp". A lot of them. N/A Resolved Add alt text to the logo. Do we need to add an extra step for this or can we just add it to ? No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
Seeing as the logo is non-functional, do we want the alt to be null? ? If it does require an , then this should get its own step, and a clear description as to why it needs one should be given. I suggest changing the of the (and associated ) to .
Per , the logo does require alt text. Functionality isn't the deciding factor here, it's if the image conveys information (i.e. is not purely decorative), which this image clearly does. Do we want to split this off into its own issue if we are going to create a new step?
I would say yes, but it is not fun to deal with the merge conflict, when two PRs are opened at the same time.
The logo still needs an alt text. The logo is introduced in step 7: That step should be updated to instruct campers to give the an alt text of . The seed code in all subsequent steps should be updated to include that new attribute.
hey may i work on this issue? if so please assign it to me
Hey We typically do not assign issues. Instead, we accept the first pull request that comprehensively solves the issue. Issues labelled with or are open for contributions. Please make sure you read . We prioritize contributors following the instructions in our guide. Join us in or if you need help contributing - our community will be happy to assist you.


Question: style: { base: { fontSize: '18px', <del> color: `${theme === 'night' ? '#fff' : '#0a0a23'}` </del> <ins> color: `${theme === 'night' ? '#fff' : '#0a0a23'}`, '::placeholder': { color: `#858591` } </ins> } } };

! Steps to reproduce the behavior: on night mode challenges until the donate modal shows up has black text on fCC blue background Note that the text is white or light gray when you start typing - it's just the placeholder text that you can't read.
So the place holder text appears when stripe loads in the background. We should keep the form behind a loader and only display it once stripe loads.
That would fix the font color of the placeholder text? Seems like some CSS would work, but you're closer to that area than me. To be clear, I'm talking about the placeholder credit card number and expiration date in the screen shot. It might be hard to see the text, but it's there.
I think we can simply change the placeholder text color using css and it will probably work fine.
! changing the color here would work
That would change the color of the input but not the placeholder. Although there should be an option for that. this is strange since I get the following on production. <img width="389" alt="Screen Shot 2021-10-06 at 11 35 48 AM" src="https://user-"
Just gave it a quick test: Chrome 94.0.4606.61 - works - shows what's in screen shot Firefox 92.0 - doesn't work - shows what's in my screen shot So it seems to be a firefox issue. Can anyone else reproduce this in firefox?
Yup. I'm using Firefox Developer and it looks like this: !


Question: # --description-- <del> Create a selector to target your `td` elements within your table body. Give them a width to fill the viewport, with a minimum and maximum of `4rem`. This approach ensures that the width is fixed, whereas setting `width` specifically would allow the elements to shrink to the container (because we are using flexbox). </del> <ins> Create a selector to target your `td` elements within your table body. Give them a width to fill the viewport, with a minimum and maximum of `4rem`. This approach ensures that the width is fixed, whereas setting `width` specifically would allow the elements to shrink to the container. </ins> # --hints--

The phrase "because we are using flexbox" is not clear here. There was no flexbox for table or tr or td. It is not clear why setting width to 100vw works in such way It will be cool to have clear explanation about setting td width to 100vw in table No response Device: MacBook Pro OS: Ventura 13.0.1 Browser: Chrome Version: 109.0.5414.119 No response
Where is the code of this issue?
I believe it's in the folder, written in one of its files.
Have you fixed the issue yet ?
I am waiting for the issue to be triaged by a maintainer.
This issue is related and might lead to a different code solution for step 52:
The phrase needs to be removed from the challenge description. An issue with the or label is open for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute, and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the The file to be changed is:


Question:
"
" ], "challengeType": 0,  "type": "waypoint"   "type": "waypoint", "nameEs": "Convierte datos JSON a datos HTML", "descriptionEs": [ "Ahora que estamos obteniendo datos de una API JSON, mostremóslos en nuestro HTML.", "Podemos usar el método .forEach() para recorrer nuestros datos y modificar nuestros elementos HTML.", "En primer lugar, vamos a declarar una variable llamada html con var html = "";.", "Después, iteremos a traveś de nuestro JSON, añadiendo más HTML a esa variable. Cuando se termina el ciclo, vamos a presentarla. ", "Aquí está el código que hace esto:", "json.forEach(function(val) {", "  var keys = Object.keys(val);", "  html += "<div class = 'cat'>";", "  keys.forEach(function(key) {", "    html += "<b>" + key + "</b>: " + val[key] + "<br>";", "  });", "  html += "</div><br>";", "});" ]  }, { "id": "bb000000000000000000004",  "title":  "Render Images from Data Sources",   "title": "Render Images from Data Sources",  "description": [ "In the JSON that we receive data from Free Code Camp's Cat Photo API.", "We've seen from the last two lessons that each object in our JSON array contains an imageLink key with a value that is the url of a cat's image.",

[x] Trigger Click Events with jQuery [x] Change Text with Click Events [x] Get JSON with the jQuery getJSON Method [x] Convert JSON Data to HTML [x] Render Images from Data Sources [x] Prefilter JSON [x] Get Geo-location Data
Trabajando en esta


Question: assert.isTrue(rulesContainer.checkVisibility()); ``` <del> When your `rulesBtn` is clicked, your `rulesBtn` should say `Hide Rules`. </del> <ins> When your `rulesBtn` is clicked, your `rulesBtn` should say `Hide rules`. </ins> ```js <del> assert.strictEqual(rulesBtn.innerText.trim(), "Hide Rules"); </del> <ins> assert.strictEqual(rulesBtn.innerText.trim(), "Hide rules"); </ins> ``` When your `rulesBtn` is clicked again, your `isModalShowing` should be `false`.

Initial text of the button is . After step clicking button is expected to change text to , capitalizing the second word. Clicking it again is expected to change text to . Which is too differing from initial capitalization. n/a Capitalization should be consistent throughout the project. Either Show rules and Hide rules; or Show Rules and Hide Rules. No response n/a No response
We will do this option


Question: <div> <ChallengeTitle introPath={introPath} <ins> isCompleted={isChallengeCompleted} </ins> nextChallengePath={nextChallengePath} prevChallengePath={prevChallengePath} showPrevNextBtns={showPrevNextBtns}

In the new beta (currently at ), it would be great if a challenge page indicated somehow when the challenge has already been completed. Currently, since user inputed code is not saved, there is no indication on a challenge page that it has already been completed.
We need a check mark in the title or a badge or to indicate the same?
The most elegant thing I can think of to have something like the little circular check mark next to the title like how it is on the learn homepage - only if it's been solved, and don't show anything if it hasn't.
That would be a nice way to handle it. Please go forth if you are interested in this?


Question: <!-- AUDIO REFERENCE: <del> Jake: Hey. You are Sarah, right? I'm Jake, from Security. </del> <ins> Jake: Hey. You're Sarah, right? I'm Jake, from Security. </ins> --> # --description--

Change "You are Sarah" to "You're Sarah" in step 150, 154, and 155 of Learn Greetings in your First Day at the Office. The change is to match the caption text. (The text isn't visible on the Task 155 page, but in the code.) Change "You are Sarah" to "You're Sarah" in the following files:
We introduce contraction form in task 1 () so I assume we would want to use contractions in later tasks. But I'll wait for the curriculum team to confirm before opening this issue up for contribution. (If we don't want to use contraction in these tasks, the caption text should be updated to match the fill the blank text.)


Question: { allowedTags: [], allowedAttributes: [] <del> }); </del> <ins> }).replace(/"/g, '"'); </ins> if (data.body !== sanitizedBody) { req.flash('errors', { msg: 'HTML is not allowed'

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --Test for this lesson may not check the syntax for any constructor syntax, instead looks like it's tested by output. EIther user provide the constructor(correct/expected way) or not, challenge passes. Browser Name: Chrome Browser Version: 67 Operating System: Win7
I'm on it.
following solution works to passs the test: function makeClass() { "use strict"; / Alter code below this line / class Vegetable { constructor(Vegetable) { this. Vegetable = Vegetable; } } / Alter code above this line / return Vegetable; } const Vegetable = makeClass(); const carrot = new Vegetable('carrot'); (); // =should be 'carrot'
Hello, Unfortunately, this solution doesn't work for me. (The same as in the "Hint": ) Error message: // running tests should return carrot. // tests completed
sorry to hear that! Would you mind posting your solution here so we could take a look?
Hello Kristofer, Thank you for your email. (ES6: Use class Syntax to Define a Constructor Function) I have already got help from FreeCodeCamp. I used the solution from "HINT", but it didn't work. class Vegetable { constructor(Vegetable){ this.Vegetable = Vegetable; } } What worked is the code below: class Vegetable { constructor(name) { = name; } } Thank you. Kind regards, Zsolt


Question: "convert('Dolce & Gabbana');" ], "tests": [ <del> "assert.strictEqual(convert('Dolce & Gabbana'), 'Dolce & Gabbana', 'should escape characters');", "assert.strictEqual(convert('Hamburgers < Pizza < Tacos'), 'Hamburgers < Pizza < Tacos', 'should escape characters');", "assert.strictEqual(convert('Sixty > twelve'), 'Sixty > twelve', 'should escape characters');", "assert.strictEqual(convert('Stuff in "quotation marks"'), 'Stuff in "quotation marks"', 'should escape characters');", "assert.strictEqual(convert("Shindler's List"), 'Shindler's List', 'should escape characters');", "assert.strictEqual(convert('<>'), '<>', 'should escape characters');", </del> <ins> "assert.match(convert('Dolce & Gabbana'), /Dolce &(amp|AMP|#x00026|#38); Gabbana/, 'should escape characters');", "assert.match(convert('Hamburgers < Pizza < Tacos'), /Hamburgers &(lt|LT|#x0003C|#60); Pizza &(lt|LT|#x0003C|#60); Tacos/, 'should escape characters');", "assert.match(convert('Sixty > twelve'), /Sixty &(gt|GT|#x0003E|#62); twelve/, 'should escape characters');", "assert.match(convert('Stuff in "quotation marks"'), /Stuff in &(quot|QUOT|#x00022|#34);quotation marks&(quot|QUOT|#x00022|#34);/, 'should escape characters');", "assert.match(convert("Shindler's List"), /Shindler&(apos|#x00027|#39);s List/, 'should escape characters');", "assert.match(convert('<>'), /&(lt|LT|#x0003C|#60);&(gt|GT|#x0003E|#62);/, 'should escape characters');", </ins> "assert.strictEqual(convert('abc'), 'abc', 'should handle strings with nothing to escape');" ], "MDNlinks": [

Challenge has an issue. Please describe how to reproduce it, and include links to screen shots if possible. The capital letter versions of HTML entities are not valid for the tests. Perhaps you could or them through. Also maybe you could remind users to include the ";" at the end of their entities in the description. Thanks for all your teams great work! I'm loving
I fixed the allowed capitalization. The shows every entity with a semicolon at the end, so I don't think it's necessary to add a reminder.


Question: import { userByNameSelector } from '../../../redux'; import FullWidthRow from '../../helpers/FullWidthRow'; import { ButtonSpacer, Spacer } from '../../helpers'; <ins> import './certifications.css'; </ins> const mapStateToProps = (state, props) => createSelector(

!
Could you give a link to the page as then it might be easier to solve the issue?
This should be the case on the user's profile page. You can reproduce by setting the certificate keys to true in the user object.
I could work on this!
I am already working on it.
Thanks for letting me know!
a reasonable fix would be to give the grid that contains the profile a class and on the css, change the button under that class and have . you will end up with something like this. here it is on small and large screens <img width="681" alt="screen shot 2019-02-22 at 2 18 10 pm" src="https://user-"<img width="1095" alt="screen shot 2019-02-22 at 2 17 53 pm" src="https://user-"
Similar solution could be applied to these donate buttons probably. but the selectors should be very specific not to change the styling on other buttons in the platform. <img width="669" alt="screen shot 2019-02-23 at 2 09 14 pm" src="https://user-"<img width="502" alt="screen shot 2019-02-23 at 2 08 51 pm" src="https://user-"
Hey or Can you take this up? just updated us that he will be a bit busy with other things.
I'm on it


Question: import { createExecuteChallengeSaga } from './execute-challenge-saga'; import { createCurrentChallengeSaga } from './current-challenge-saga'; import { challengeTypes } from '../../../../utils/challengeTypes'; <ins> import { completedChallengesSelector } from '../../../redux'; </ins> export const ns = 'challenge'; export const backendNS = 'backendChallenge';

In the new beta (currently at ), it would be great if a challenge page indicated somehow when the challenge has already been completed. Currently, since user inputed code is not saved, there is no indication on a challenge page that it has already been completed.
We need a check mark in the title or a badge or to indicate the same?
The most elegant thing I can think of to have something like the little circular check mark next to the title like how it is on the learn homepage - only if it's been solved, and don't show anything if it hasn't.
That would be a nice way to handle it. Please go forth if you are interested in this?


Question: return challengeData; }; <del> export const currentBlockIdsSelector = state => { const { block, certification, challengeType } = challengeMetaSelector(state); const allChallengesInfo = allChallengesInfoSelector(state); </del> <ins> export const currentBlockIdsSelector = createSelector( challengeMetaSelector, allChallengesInfoSelector, (challengeMeta, allChallengesInfo) => { const { block, certification, challengeType } = challengeMeta; </ins> <del> return getCurrentBlockIds( allChallengesInfo, block, certification, challengeType ); }; </del> <ins> return getCurrentBlockIds( allChallengesInfo, block, certification, challengeType ); } ); </ins> export const completedChallengesInBlockSelector = state => { const completedChallengesIds = completedChallengesIdsSelector(state);

Opening for visibility. I have not seen this happen myself, but I also haven't spent much time in the editor. Link to threads reporting this. Unknown, I guess usage over time. Performance not degrading over time. No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
I've experienced this issue multiple times. After the donation pop-up appears, the performance of the website becomes laggy. Even after refreshing the page, it returns to normal temporarily, but the lag returns once the donation pop-up reappears. ! Note: the lag doesn't occur immediately after the pop-up, it becomes noticeable as you continue solving challenges, with delays in typing and overall slowness.
I have not noticed this in the dev environment, even if the pop-up is present there too (python course)
I thought I was crazy or that my machine was "too old" for this, but I have experienced this too. In my experience, it has happened after working a while on the editor or just doing a little bit of work on the editor, leaving it open, and then coming back. It becomes really slow and the only workaround that I have found is closing my browser completely and opening it again. Note: As a current donor, the pop-up doesn't show up in my account and I don't think is related to that component itself.
Commenting to add I experience this every single time I use the editor for more than maybe 20 minutes. It doesn't just happen suddenly. It starts with a slight delay then gets worse and worse. I just opened up Incognito with no extensions enabled, and I noticed the delay after around 15 minutes. Then by 25 minutes it was definitely worse. It isn't unusable, but if you type relatively quickly it is very noticeable that words on screen are being completed maybe 100ms after you actually type them, then gets a little worse from there. Info: Chrome/124.0.6367.158 (no extensions) macOS Ventura Responsive Web Design Certification (I have had delays throughout this entire course)
I'm able to get the slowdown both in production and in development.

Reproducing it a bit loosely: Go through multiple steps (around 20?). At some point writing few characters in a row will start feel delayed/lagged. In console start appearing warnings, something like [Violation] 'input' handler took 1123ms. Recorded performance showed then longer times of redux updates coming from (if I didn't mix up anything) the editor's :
Thanks, that's really helpful! Just so I'm on the same page: how did you record the performance and did you have campfire mode on while you were testing this? Also, did you complete and submit 20 steps or just navigate through them?
Hey It was the Performance tab in the browser's developer tools. Not the profiler from react developer tools. Once I noticed the lagging, I turned on recording and did couple more steps. Then stopped recording, and tried to make heads or tails out of it :eyes: It doesn't seem to be related to campfire mode. I actually have campfire mode on in production, but when I was checking in development I believe it was off. Steps were completed/submitted. I haven't tried just navigating them.
It's not easy to read, but it does seem to be that's taking the time, which makes sense. That's what I see even when the editor is working normally. I've yet to see the slowdown from having the editor open for a long time typing a lot in a single page navigating through 80+ challenges I'll try completing a lot of challenges next and see if I see what you saw, Regardless, it seems like either the amount of typing you need to do to complete a bunch of challenges OR the completion/submission process is the problem. That's my current guess.
I'm seeing the same code editor latency after about 5 to 10 minutes of usage. I see it both in Chrome and Firefox browsers when testing in Windows 11 and Linux Fedora 40. The best solution I have is to do a of the page when it starts happening. Is the code editor overloading the cache to cause a slow down?
I'm on Windows Chrome browser and the editor is super slow for me. I type and I can't see what I've typed in till seconds later (good thing I'm a good typist) and I click Submit and it takes a long pause to respond.

I tried clearing cache but it fixes the issue for maybe a couple of steps max then back to the slow performance. Definitely something I didn't experience back in early 2023 when I last used the curriculum. If there's some data I can collect to help debug, let me know. (Edit: i switched to MS Edge which I didn't use for fcc work before and the issue disappeared for the first 10 steps i tried). I may continue here for a bit before retrying chrome again at some point.) 2nd Edit: the performance improvement didn't last. Same issue occurred after a few more steps and I persisted for a couple more of these slow steps just to see if anything would change, but nothing did. So I logged off and switched back to Chrome. First few steps are back to normal performance at this point. Perhaps the pattern will repeat (and things will slow down momentarily at which point I will try another browser switch).
Hi all, thank you for reporting the issue. We are trying to reproduce the issue, but no luck yet. From what I gather, the issue can happen: On any OS (so far we have reports on MacOS, Windows, and Linux) On any browser (so far we have reports on Chrome, Firefox, and MS Edge) In both incognito and normal browsing modes With or without browser extensions To both donor and non-donor users With both campfire mode enabled and disabled I guess what's left is the challenge pages that you are on when you experience the issue. I personally have tried going through 50+ Python challenges of the , and I haven't experienced the lag. We have one user experienced the issue with the Responsive Web Design challenges (), so maybe this is where I'd try next. But we would love to get more information from everyone else: which page / course you were on when you experienced the issue. Thanks again for reporting.
The lag happens consistently to me on the Role Playing Game project (js beta) pages. Everytime I recycle my browser the issue goes away temporarily. (Or if I close the tab on edge and reopen it)
As I have , I experienced this throughout the responsive web design cert, but I have since finished that course and moved onto the JavaScript one, and can confirm I am having the exact same issue on there.

The easiest way I've found to get rid of the delay is to reload page while ignoring cache.
It might be needed for user to be logged in. I've tried to reproduce it on Firefox. I've went from last steps of to about 30 step of the - without being logged in, no issues. Then after logging in, I started at the first step of , passing code was still in browser, so was just submitting it for the most part. By the 20th step writing was again slowing down. Edit: although Firefox doesn't display warning in console.
I also see it when logged in. It literally became so bad that is spiked the CPU if I held down a key and just let it repeat. It might somehow be related to the completion modal in the lower jaw, but I'm really not certain. That is at least also different depending on if you are signed in or not. The problem is, it didn't seem as bad in dev mode for me, so I'm not confident. But I removed the progress component and did twice as many steps, and it didn't happen. But as said, I'm really not sure if I trust it in dev mode. In the Performance log, looking at the bottom-up tab, was the first one.
Thanks everyone. I've finally reproduced it by doing ~20 responsive web design lessons while signed in. It does seem like is part of the problem, thanks I'm not sure it's the root of the problem, but it's definitely getting called far too often. My plan is to create a quick PR to stop the unnecessary calls and/or memoize the function. Hopefully that fixes it, but we'll have to see.
I was briefly looking at the Progress component and saw ProgressInner  Something about that code doesn't sit right with me. The and variable names seems a little like something that wasn't fully checked and tested. If I just log when the component renders, it does so on every keystroke, and even just left-clicking inside the active editor section logs a re-render. This is after you have completed at least one challenge step. ! Might not be related, but it doesn't seem right considering it isn't even shown. I'm a little skeptical of the Intersection observer and useEffect. I know this isn't very constructive, but that's all I've got for now.

I agree about the naming, it's a little sloppy. And, yes, something is going wrong meaning that it's getting re-rendered after challenge completion. makes it a lot better, though. It's still rendering when you start a new challenge (and it shouldn't), but it no longer renders in response to, well, everything.
I have unpinned the issue, considering it is closed as completed.
Hi Guys i am still experiencing this on two separate machines both running windows 11 and Chrome Browser extension installed , ublock origin and Ghostery this is whilst going through the responsive web design curriculum, in both building a balance sheet and the cat painting projects. I have experienced this behaviour both before and after i became a supported, and most recently experienced it about 5mins ago
Thank you for mentioning. However, the potential fix for this has not been deployed to production yet. So, until that is deployed, you can expect the issue to be present.
Hi everyone, the potential fix has been deployed, please report back if you're still experiencing the issue. Thank you for your patience, and happy coding.
hi , I've been using the JS beta curriculum all day from a single tab today. I did end up running into the performance issue again but it took a -lot- longer to run into it, and it was not lagging as bad as it used to when I would type (one of the issues I saw was that I would type and it would take a bit of time for the editor to display what I typed). Now when it slows down, the lag is not nearly as long (and as I said, I ran through a lot of steps today before seeing the slow-down). This is just to let you know what I have observed as you've asked us to report back. Thanks for the fix(es) already done.
Thanks for the follow-up, Some slowdown is expected, since the 'fix' was to make rendering considerably more efficient. This delays and mitigates the slowdown, but clearly something is getting less efficient over time. Since it's not too bad at the moment and it's hard to pin down the ultimate cause, I think we can leave this for now. We do plan to give the client some love before too long and that will give us another chance to squash the bug.

Hi Guys I am still running in to this issue, im currently working my way through learn-basic-javascript-by-building-a-role-playing-game. and after about 10 mins the typing of text starts to lag, im having to refresh the page and it seems to make it go away for a while
Other reports of slow performance
Thanks I'll give this another look.
should be another decent perf boost. Same deal as last time: while I expect this to be a lot better, there may still be deeper problems.
Tentatively closing again, since has been merged and should help considerably.


Question: print('plain text:', message) print('encrypted text:', encrypted_text) --fcc-editable-region-- <del> # caesar() </del> <ins> caesar() </ins> --fcc-editable-region-- ```

In the Building a Cipher project, comment is first mentioned in step 51: But in step 59, we actually introduce comment and its syntax: In step 51, we introduce function parameters, so I think mentioning comment here would be a little overwhelming. I think the comment introduction should either be moved to an earlier challenge or kept in step 59. If we move the comment introduction to an earlier challenge, step 51 can be kept as-is. But if we keep comment introduction in step 59, we should update step 51. Instead of asking the users to comment out the code, I wonder if we could ask them to remove the line entirely (though the code is in step 50, so it's probably a little odd to immediately remove it in the next step).
This does seems to be out of sequence. I would suggest to not comment out in step 51 and let the exception be(the resolution is there in the coming steps). This part of the instruction can be updated from: to:
If we don't ask to comment out the function call in step 51 and tell the campers they will work on fixing the error in the next steps, it would be logic to address the error in the console () and require to pass the two positional arguments to the function call in step 52. But then the function will seem to work fine, although it's still using the and variable inside its body instead of the function parameters. The alternative is to ignore the in the console for step 52, and address it directly in step 53. For that we should simply keep the function call instead of commenting it out and there is no need to swap the step order. Honestly, I don't like particularly any of these options.


Question: .iframe-scroll { position: fixed !important; margin-top: 75px; <del> z-index: 9999; </del> <ins> z-index: 1; </ins> } } @media only screen and (max-width: 992px) {

! This effects longer lines of codes by making it impossible to select code when trying to insert the cursor with the mouse. I saw where a commit to make the iphone stand out over footer by adding a z-index of 9999 but 9999 is too high. I'm doing a pull request right now that fixes the cover up issue on the code editor and still keeps the iphone above the footer as Quincy wanted. Thanks, Charles
Thanks, I didn't even think about the modal when I set the z-index that high. I'm taking a look at your pull request now.


Question: "Let's delete the "tails" property from myDog." ], "tests": [  "assert(myDog.bark === undefined, 'message: Delete the property "bark" from myDog.');"   "assert(myDog.tails === undefined, 'message: Delete the property "tails" from myDog.');"  ], "challengeSeed": [ "var ourDog = {",

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 10.0; WOW64; rv:41.0) Gecko/ Firefox/41.0</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code: Issue: Properties box says: "Let's delete the "tails" property from myDog." Test success statement: "Delete the property "bark" from myDog." Test succeeds on deleting bark property, not tails.
I noticed that too !


Question: ## ![:rotating_light:](https://forum.freecodecamp.com/images/emoji/emoji_one/rotating_light.png?v=3 ":rotating_light:") Intermediate Code Solution: ```javascript <del> rating = watchList.map( (item) => ({"title":item["Title"], "rating":item["imdbRating"]}) ); </del> <ins> const rating = watchList.map(item => ({title: item["Title"], rating: item["imdbRating"]})); </ins> ``` ### Code Explanation: Using ES6 notation, each item in array is processed to extract title and rating.

I created a solution for this exercise, and it failed. When I looked at the hint solution, my code was basically the same. When I plug the hint solution into the code and run the test, it fails, also. The output window displays 'rating is not defined' four times. When I copy everything to JS Fiddle and run the code, it works as expected.
Did you ask this question on the forum and present the code you tried? That is the best place to ask. If you present your code to others on the forum and they conclude it is valid code which should pass the tests, then open an issue and present your code here also.
The problem is just that 'rating' has not been declared. The challenge code seems to be fine, but the guide should perhaps be a little stricter.


Question: ```js let testStr = "Pumpkin"; <del> let testRegex = /P(engu|umpk)in/g; </del> <ins> let testRegex = /P(engu|umpk)in/; </ins> testRegex.test(testStr); // Returns true ```

Link to the challenge: Adding a global flag to the regular expression has the test fail for the first two assertions. This can be confusing considering also how the challenge is introduced, since the code snippet explaining the concept shows the global flag being used. Update the code snippet introducing the challenge: However, since the global flag should not affect the outcome of the test (to what I can ascertain), a better suggestion would be to update the test itself, to account for its presence.
Thanks for the detailed report! I think it would make sense to do both. The isn't necessary, so it should not be there and it's not wrong, so we should not reject it.
It might be better to remove the global flag from the challenge example unless we also explain how and give some info on . I think in order to really know if we should fail the test when using the global flag we would have to consider how the code is supposed to run. Are we "emulating" that each is being run in isolation or are they executed one after the other.
Agreed. This challenge focuses on teaching the user about groups - the use of over seem incidental to me, as does the presence of the flag. Also, the challenge asks you to make sure so it's only asking you to use against once.
But it is when the test is called multiple times on the same regex. Isn't this kind of the same as when users use global variables which end up causing the user's code to fail for all tests except the first because the the global variable does not get reset each time?
I'm dumb - I'd completely failed to realise it's being run twice, once in the user's code and again in the tests. You're quite right and PR fixes that.
Challenge: Fails with: Passes with:
The example/seed code moves to 14. I guess one easy option would be to change the example string to something like "Fun with regular expressions!", that should let all the tests pass and accept the global flag. The problem is if the camper uses a different string to test the regex it may fail. So we might just have to reset before running the tests.
I assumed it would be the exact same fix as what Tom did:
yep, that's what I concluded. I think we can apply Tom's fix in , rather than modifying the tests. Either works, but that should be more concise.


Question: "challengeType": 0, "nameEs": "Elige elementos HTML usando selectores y jQuery", "descriptionEs": [  "Ahora tenemos una función de documento listo.", "Ahora vamos a escribir nuestra primera instrucción jQuery. Todas las funciones de jQuery comienzan con un $, al que suele referirse como operador de signo de dólar, o simplemente como bling. ", "jQuery a menudo selecciona un elemento HTML con un selector, y luego hace algo a ese elemento.",   "Ya tenemos una función de documento listo.", "Ahora vamos a escribir nuestra primera instrucción jQuery. Todas las funciones de jQuery comienzan con un $, al que suele referirse como operador dólar, o simplemente como bling. ", "jQuery a menudo selecciona un elemento HTML con un selector, y luego le hace algo a ese elemento.",  "Por ejemplo, hagamos que todos tus elementos button reboten. Sólo tienes que añadir este código dentro de la función de documento listo: ", "$("button").addClass("animated bounce")",  "Ten en cuenta que ya hemos incluido tanto la biblioteca jQuery como la biblioteca Animate.css en segundo plano para que pueda utilizarlos en el editor. Así que estás usando jQuery para aplicar la clase bounce de Animate.css a sus elementos button."   "Ten en cuenta que ya hemos incluido tanto la biblioteca jQuery como la biblioteca Animate.css en segundo plano para que pueda utilizarlos en el editor. Así que estás usando jQuery para aplicar la clase bounce de Animate.css a tus elementos button."  ] }, {

[x] Learn how Script Tags and Document Ready Work [x] Target HTML Elements with Selectors Using jQuery [x] Target Elements by Class Using jQuery [x] Target Elements by ID Using jQuery [x] Delete your jQuery Functions [x] Target the same element with multiple jQuery Selectors [x] Remove Classes from an element with jQuery [x] Change the CSS of an Element Using jQuery [x] Disable an Element Using jQuery [x] Change Text Inside an Element Using jQuery [x] Remove an Element Using jQuery [x] Use appendTo to Move Elements with jQuery [x] Clone an Element Using jQuery [x] Target the Parent of an Element Using jQuery [x] Target the Children of an Element Using jQuery [x] Target a Specific Child of an Element Using jQuery [x] Target Even Numbered Elements Using jQuery [x] Use jQuery to Modify the Entire Page
Checking


Question: # --description-- <del> It's time to hook up the `playNextSong` function to an event listener. </del> <ins> Now it is time to test out the `playNextSong` function. </ins> Add a `click` event listener to the `nextButton` element, then pass in `playNextSong` as the second argument of your event listener. This is the function the event listener will run. <ins> Test out your app by first clicking on the play button followed by the next button. You should see that everything is working as expected. </ins> # --hints-- You should call the `addEventListener()` method on your `nextButton` variable.

This project is missing key times to encourage the camper to test out their code. This will help camper see the results of the code they just wrote. see explanation above see explanation above No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
This has been opened for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the Happy coding


Question: **Examples** ```js <del> 2   < 5 '3' < 7 5   < 5 3   < 2 '8' < 4 </del> <ins> 2   < 5 // true '3' < 7 // true 5   < 5 // false 3   < 2 // false '8' < 4 // false </ins> ``` <del> In order, these expressions would evaluate to `true`, `true`, `false`, `false`, and `false`. </del> # --instructions-- Add the less than operator to the indicated lines so that the return statements make sense.

The student has to go all the way down up to the explanation "In order, these expressions would evaluate to true, false, true, and true." to realize what the result of the operations is. My suggestion is that the second section of the code should look like this: 1 == 1 // true 1 == 2 // false 1 == '1' // true "3" == 3 // true instead of the screenshot attached. <!-- Add a link to the coding challenge with the problem. -- <!-- If applicable, add screenshots to help explain your problem. you can drag and drop, png, jpg, gif, etc. in this box. --!
I would be fine with this change. Any interest in making a PR for it
, Can I? I don't know how to do it and I have never done it in my life, but besides that, I would like to do it by myself using some guide you could give me. I have never used GitHub in the past. And this will help me to contribute even more to this awesome project.
We have some . It may look a little intimidating, but if you follow the instructions it's not bad. The file where this needs to be fixed is Technically, you can edit the file on github and make a PR from there - which can work for some simple fixes, but you can't see and test your changes. I think we would accept those if you want to do that, but I would recommend setting the project up locally at some point if you want to contribute regularly. To be clear, we usually like to get second opinion before making changes like this - since we don't have that, I can't guarantee a PR would be merged - but I think others would be fine with the change so if you want to make a PR, go ahead.
This change seems good. For context, we got rid of a lot of comments since we'd need to translate them. However, these are keywords and don't need translation.
shall I take this up?
Could you clarify if this is actually what we wanted, because this is exactly what we removed 12 months ago in:
Yes, this is okay because these instances specifically are only keywords that don't get translated anyway.


Question: "drop([1, 2, 3], function(n) {return n < 3; });" ], "tests": [  "assert.deepEqual(drop([1, 2, 3, 4], function(n) {return n>= 3;}), [3, 4], 'message: drop([1, 2, 3, 4], function(n) {return n >= 3;}) should return [3, 4].');",   "assert.deepEqual(drop([1, 2, 3, 4], function(n) {return n >= 3;}), [3, 4], 'message: drop([1, 2, 3, 4], function(n) {return n >= 3;}) should return [3, 4].');", "assert.deepEqual(drop([0, 1, 0, 1], function(n) {return n === 1;}), [1, 0, 1], 'message: drop([0, 1, 0, 1], function(n) {return n === 1;}) should return [1, 0, 1].');",  "assert.deepEqual(drop([1, 2, 3], function(n) {return n > 0;}), [1, 2, 3], 'message: drop([1, 2, 3], function(n) {return n > 0;}) should return [1, 2, 3].');", "assert.deepEqual(drop([1, 2, 3, 4], function(n) {return n > 5;}), [], 'message: drop([1, 2, 3, 4], function(n) {return n > 5;}) should return [].');", "assert.deepEqual(drop([1, 2, 3, 7, 4], function(n) {return n > 3;}), [7, 4], 'message: drop([1, 2, 3, 7, 4], function(n) {return n > 3;}) should return [7, 4].');",

Ever since we the last test case to , there have been questions about it. We either need to add several additional test cases which have a later number which does not meet the test criteria retained, or alter earlier test cases to have that same condition. Relevant Text (Emphasis ): < Drop the elements of an array (first argument), starting from the front, until the predicate (second argument) returns true. Existing Test Case: We do believe that this "early exit" solution is important and should be supported by test cases.
Ref: for an example of the sort of issue we see.
I'll do this. Note I've never actually made a PR before, anywhere.


Question: ```js let array = [1, 2, 3]; array[1] = 25; <ins> console.log(array); // prints [1, 25, 3] </ins> ``` Update the **third** element of your `rows` array to be the number `10`. Then print the `rows` array to your console.

We are getting a lot of confusion on the forum about step 18. The confusion stems from not know how to log the array to the console. So we should update the code example in the description to log the example array. That should help with what is expected to do. js let array = [1, 2, 3]; array[1] = 25; (array); // prints [1, 25, 3] ` see explanation above see explanation above No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
This has been opened for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the Happy coding


Question: You should assign `arr.map()` to the `playerCards.innerHTML` using the `+=` operator. ```js <del> assert.match(code, /playerCards.innerHTMLs*+=s*arr.map(s*(s*)s*=>s*{s*}s*)/) </del> <ins> assert.match(code, /playerCards.innerHTMLs*+=s*arr.map(s*((s*)s*=>|functions*(s*))s*{s*}s*)/); </ins> ``` # --seed--

A camper on the forum ran into an issue here They wanted to know why they couldn't pass with a regular function for the callback. the directions don't specify it should be an arrow function instead. but both answers should pass. So the tests should be updated. see explanation above see explanation above No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
Hi, Can I work on fixing this issue ? I would need some help in locally setting up so that I can test my code changes.


Question: "var b = 2;", "", "// Only change code below this line", <del> " " </del> <ins> "" </ins> ], "tail": [ "(function(a,b){return "a = " + a + ", b = " + b;})(a,b);"

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Macintosh; Intel Mac OS X ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code: This is a very minor issue, almost trivial, but this Waypoint initializes the editor with an unnecessary space right under . The space can be found if you look back at the code It should be instead of .
Easy enough. I'll grab this one.
So maybe I'm doing something wrong but I just fetched the latest from "staging" and there is no space between the quotation marks in the latest version. This appears to have already been corrected.
Hmmm, I'm not sure why you're not seeing it on your end. I still see it on github and in the most recent staging I just pulled down.
My mistake, I hadn't pushed to my forked repo and I guess that was keeping the latest fetched files from showing. Should be fixed with