Question: "video": "114591799", "challengeNumber": 13, "steps": [  "Now that we've built a foundation in jQuery, let's go back to Dash and do it's last challenge.",   "Now that we've built a foundation in jQuery, let's go back to Dash and do its last challenge.",  "If you aren't familiar with Mad Libs, they basically involve inserting random nouns, adjectives and verbs in to stories. The stories that result are often hilarious.", "Go to https://dash.generalassemb.ly/projects/mad-libs-1 and complete the fifth project." ]

<!-- FreeCodeCamp Issue Template --<!-- NOTE: ISSUES ARE NOT FOR CODE HELP - Ask for Help at --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- Insert link to challenge below --Convert JSON Data to HTML <!-- Describe below when the issue happens and how to reproduce it --Can't use or alert to show my results this problem with all challenges. <!-- Describe your workspace in which you are having issues--- Browser Name, Version: Chrome, Version 50.0.2661.94 m (64-bit) Operating System: Windows 10 64-bit Mobile, Desktop, or Tablet: Desktop <!-- Add a screenshot of your issue --!
First of all your code is incorrect. Hit the and just adding the below at its correct place: ! Closing. Please consult the for any assistance to Coding. Happy Coding!


Question: "video": "114591799", "challengeNumber": 13, "steps": [  "Now that we've built a foundation in jQuery, let's go back to Dash and do it's last challenge.",   "Now that we've built a foundation in jQuery, let's go back to Dash and do its last challenge.",  "If you aren't familiar with Mad Libs, they basically involve inserting random nouns, adjectives and verbs in to stories. The stories that result are often hilarious.", "Go to https://dash.generalassemb.ly/projects/mad-libs-1 and complete the fifth project." ]

Hello everyone, When a new challenge is launched, the focus is not on the code window. User has to manually click into the code window to be able to write. Is it possible to have a keyboard shortcut to focus on the code window, just like we have a keyboard shotcut (Ctrl + Enter) to submit our solution and to launch the next challenge? It feels annoying sometimes to use mouse just to get focus when all the actions are happening via keyboard. Thanks in advance. Prasoon
What do you say?
I think that idea is great to me!
How about <kbdCtrl/Cmd</kbd+ <kbdShift</kbd+ <kbdE</kbd?
Anyone interested in working on this, check these files:
While I'm theory this can be done, there's an on-going issue with the code mirror cursor bugging out. The editor does auto focus on page loads but there's a bug that prevents round. There are a few issues open around this that would still be open.
Hi, I would like to work on this if you guys are alright with that.
Go ahead, help wanted issues are open to all. Please, check our .


Question:
 --- id: 5a9d7295424fe3d0e10cad14 title: Inherit CSS Variables challengeType: 0 videoUrl: 'https://scrimba.com/c/cyLZZhZ' --- ## Description
 When you create a variable, it is available for you to use inside the selector in which you create it. It also is available in any of that selector's descendants. This happens because CSS variables are inherited, just like ordinary properties. To make use of inheritance, CSS variables are often defined in the <dfn>:root</dfn> element. :root is a <dfn>pseudo-class</dfn> selector that matches the root element of the document, usually the html element. By creating your variables in :root, they will be available globally and can be accessed from any other selector in the style sheet.
 ## Instructions
 Define a variable named --penguin-belly in the :root selector and give it the value of pink. You can then see that the variable is inherited and that all the child elements which use it get pink backgrounds.
 ## Tests
 ```yml tests: - text: Declare the <code>--penguin-belly</code> variable in the <code>:root</code> and assign it to <code>pink</code>. testString: assert(code.match(/:roots*?{[sS]*--penguin-bellys*?:s*?pinks*?;[sS]*}/gi), 'Declare the <code>--penguin-belly</code> variable in the <code>:root</code> and assign it to <code>pink</code>.'); ```
 ## Challenge Seed

 ```html <style> :root { /* add code below */ /* add code above */ } body { background: var(--penguin-belly, #c6faf1); } .penguin { --penguin-skin: gray; --penguin-beak: orange; position: relative; margin: auto; display: block; margin-top: 5%; width: 300px; height: 300px; } .right-cheek { top: 15%; left: 35%; background: var(--penguin-belly, white); width: 60%; height: 70%; border-radius: 70% 70% 60% 60%; } .left-cheek { top: 15%; left: 5%; background: var(--penguin-belly, white); width: 60%; height: 70%; border-radius: 70% 70% 60% 60%; } .belly { top: 60%; left: 2.5%; background: var(--penguin-belly, white); width: 95%; height: 100%; border-radius: 120% 120% 100% 100%; } .penguin-top { top: 10%; left: 25%; background: var(--penguin-skin, gray); width: 50%; height: 45%; border-radius: 70% 70% 60% 60%; } .penguin-bottom { top: 40%; left: 23.5%; background: var(--penguin-skin, gray); width: 53%; height: 45%; border-radius: 70% 70% 100% 100%; } .right-hand { top: 0%; left: -5%; background: var(--penguin-skin, gray); width: 30%; height: 60%; border-radius: 30% 30% 120% 30%; transform: rotate(45deg); z-index: -1; } .left-hand { top: 0%; left: 75%; background: var(--penguin-skin, gray); width: 30%; height: 60%; border-radius: 30% 30% 30% 120%; transform: rotate(-45deg); z-index: -1; } .right-feet { top: 85%; left: 60%; background: var(--penguin-beak, orange); width: 15%; height: 30%; border-radius: 50% 50% 50% 50%; transform: rotate(-80deg); z-index: -2222; } .left-feet { top: 85%; left: 25%; background: var(--penguin-beak, orange); width: 15%; height: 30%; border-radius: 50% 50% 50% 50%; transform: rotate(80deg); z-index: -2222; } .right-eye { top: 45%; left: 60%; background: black; width: 15%; height: 17%; border-radius: 50%; } .left-eye { top: 45%; left: 25%; background: black; width: 15%; height: 17%; border-radius: 50%; } .sparkle { top: 25%; left: 15%; background: white; width: 35%; height: 35%; border-radius: 50%; } .blush-right { top: 65%; left: 15%; background: pink; width: 15%; height: 10%; border-radius: 50%; } .blush-left { top: 65%; left: 70%; background: pink; width: 15%; height: 10%; border-radius: 50%; } .beak-top { top: 60%; left: 40%; background: var(--penguin-beak, orange); width: 20%; height: 10%; border-radius: 50%; } .beak-bottom { top: 65%; left: 42%; background: var(--penguin-beak, orange); width: 16%; height: 10%; border-radius: 50%; } .penguin * { position: absolute; } </style> <div class="penguin"> <div class="penguin-bottom"> <div class="right-hand"></div> <div class="left-hand"></div> <div class="right-feet"></div> <div class="left-feet"></div> </div> <div class="penguin-top"> <div class="right-cheek"></div> <div class="left-cheek"></div> <div class="belly"></div> <div class="right-eye"> <div class="sparkle"></div> </div> <div class="left-eye"> <div class="sparkle"></div> </div> <div class="blush-right"></div> <div class="blush-left"></div> <div class="beak-top"></div> <div class="beak-bottom"></div> </div> </div> ```

 ## Solution
 ```js var code = ":root {--penguin-belly: pink;}" ```

I don't think this challenge is described correctly. The idea that a variable is only available to the element and it's children has nothing to do with cascading. It's a clear definition of scope. Cascading is the concept that if there are multiple of a thing, the last one wins, which is described in the previous challenge related to fallbacks. Just my 2cents for what it's worth, but if I had someone come in for an interview and tell me cascading was the idea that a variable could only be used by an element and it's children, I would consider that a wildly misunderstood concept.
Thanks for reporting this! While this challenge isn't intended to introduce the concepts of cascade and inheritance, it clearly does not use the terms correctly. I'll have a go at rewriting the challenge to show that CSS variables behave like ordinary properties in this respect.
for what it's worth, this was discussed a little bit in a previous issue that was never resolved - - perhaps it should be reworded since it has now come up multiple times.


Question: } href={ dropdownFooter <del> ? `https://freecodecamp.org/news/search/?query=${encodeURIComponent( </del> <ins> ? `https://www.freecodecamp.org/news/search/?query=${encodeURIComponent( </ins> hit.query )}` : hit.url

Describe the bug Using the search-Field and clicking "See all results ..." To Reproduce Steps to reproduce the behavior: to '' on 'Search Field' and enter s.th. I did "Flutter" and then I clicked "See all results for Flutter" error: "404 Page not found" I think the error is easy to fix: The automatic created result link after clicking has double "news"-part: if I manually remove one "news" as the result would be the correct one.
Thanks for the report! It seems it's a problem with redirection. redirects to and the link is to which redirects to cc:
Thank you for reporting this This was also a problem on /news. I deployed a quick fix and am working on PRs now. I noticed that we could change the URLs in the search related files from to This seems to get around the problematic redirect, at least for search results. Still an issue we need to investigate further for other use cases.
search is still broken? I can't get anything to load for generic searches.
what sort of generic searches are not loading for you? Things seem to be working on my end whether I search from .org/ or .news/.
working on my side on news and learn from multiple locations for the initial test case.
!
Should it say something like "No results for for 'this is a generic search', please try a different query"?
Thanks for the gif, I see what you mean now. The behavior should be a message that says "No tutorials found" and not to allow the search to complete. There's a PR for this on News , and I'll start working on the implementation in the main repo.
I am going close this since the above prs address the issue. Feel free to reopen if you think this issue has been closed by mistake.
Has the fix landed on production. I am able to reproduce the issue?
has not landed yet on learn. but you could see the fix on /news
The query string is passed on to the news application. URL is available on the GIF that I sent.
we deployed the updated theme to News, so you shouldn't be able to enter a long string there and hit the search results page. Once the fix to Learn is deployed you won't be able to pass long strings with no hits to News like in the GIF.


Question: } href={ dropdownFooter <del> ? `https://freecodecamp.org/news/search/?query=${encodeURIComponent( </del> <ins> ? `https://www.freecodecamp.org/news/search/?query=${encodeURIComponent( </ins> hit.query )}` : hit.url

Quick follow up, is there anything that is preventing us from deploying?
sorry for the delay in deploying. We just got access to the client VM to clear out the old builds. We'll do that later today and get all these changes out.
Great, thanks for confirming. Apologies I have the keys to the VMs a couple days ago. I missed letting you know. I have also cleared the older builds. You should be able to simply run a build. Thanks.
No worries man. Thank you for adding our keys. We should have checked to see if we had access yet. We're just about to go in now and run a build.
This fix has been deployed. The problem in the gif above should no longer be possible on or


Question:
"Vamos a filtrar el gato cuya llave "id" tiene un valor de 1.", "Aquí está el código para hacer esto:", "
json = json.filter(function(val) {
  return (val.id !== 1);
});
"  ], "namePt": "Pré-filtro JSON", "descriptionPt": [ "Se não queremos apresentar cada foto de gato que obtemos da API JSON de fotos de gatos do Free Code Camp, podemos realizar um pré-filtro o JSON  antes de iterar através dele.", "Vamos filtrar o gato cuja a chave "id" tenha o valor 1.", "Aqui está o código para fazer isso:", "
json = json.filter(function(val) {
  return (val.id !== 1);
});
"  ] }, {

[ ] Trigger Click Events with jQuery [ ] Change Text with Click Events [ ] Get JSON with the jQuery getJSON Method [ ] Convert JSON Data to HTML [ ] Render Images from Data Sources [ ] Prefilter JSON [ ] Get Geo-location Data
Working on it!


Question: --- <del> The conference room </del> <ins> Desk </ins> --- <del> The elevator </del> <ins> Elevator </ins> ### --feedback--

Description and question refers to the Here's the main office area. And over there, let me show you, that's the conference room. text. However the audio mentions let me show you in context of showing to the desk. n/a Audio used in task should match the description context. Or the other way around. No response n/a No response
Yes, this is a problem. None of the answers are correct. Here's how I'd fix it: change the option "the conference room" to "the desk". This should solve the problem. We could also: simplify the question to "What is Maria directing attention to?" simplify the example to "Here's the main office area. Let me show you to the conference room."
I am fine with the suggestion. You could use as the example. What do you think
Agreed I'm going to add the help wanted label.


Question:
 Sometimes you won't (or don't need to) know the exact characters in your patterns. Thinking of all words that match, say, a misspelling would take a long time. Luckily, you can save time using the wildcard character: . The wildcard character . will match any one character. The wildcard is also called dot and period. You can use the wildcard character just like any other character in the regex. For example, if you wanted to match "hug", "huh", "hut", and "hum", you can use the regex /hu./ to match all four words.
let humStr = "I'll hum a song";
let hugStr = "Bear hug";
let huRegex = /hu./;
humStr.match(huRegex); // Returns ["hum"]
hugStr.match(huRegex); // Returns ["hug"]

let humStr = "I'll hum a song";
let hugStr = "Bear hug";
let huRegex = /hu./;
humStr.test(huRegex); // Returns true
hugStr.test(huRegex); // Returns true

 ## Instructions


Question:
 Sometimes you won't (or don't need to) know the exact characters in your patterns. Thinking of all words that match, say, a misspelling would take a long time. Luckily, you can save time using the wildcard character: . The wildcard character . will match any one character. The wildcard is also called dot and period. You can use the wildcard character just like any other character in the regex. For example, if you wanted to match "hug", "huh", "hut", and "hum", you can use the regex /hu./ to match all four words.
let humStr = "I'll hum a song";
let hugStr = "Bear hug";
let huRegex = /hu./;
humStr.match(huRegex); // Returns ["hum"]
hugStr.match(huRegex); // Returns ["hug"]

let humStr = "I'll hum a song";
let hugStr = "Bear hug";
let huRegex = /hu./;
humStr.test(huRegex); // Returns true
hugStr.test(huRegex); // Returns true

 ## Instructions

It wouldn't hurt to remind someone that exists, so I think using it as part of the challenge is perfectly fine. In light of that, all I would change is the description. If you're still interested in working on this, I'd recommend modifying the description (the examples in particular) to use .
I have never modified a challenge before, but I have been looking into it and would love to try to help out. I am working on it right now, if that's alright.


Question:
 --- id: 561add10cb82ac38a17213bd title: Full Stack Certificate challengeType: 7 isHidden: false isPrivate: true --- ## Description

 ## Instructions

 ## Tests
 ```yml tests: - id: 561add10cb82ac38a17513bc title: Responsive Web Design Certificate - id: 561abd10cb81ac38a17513bc title: JavaScript Algorithms and Data Structures Certificate - id: 561acd10cb82ac38a17513bc title: Front End Libraries Certificate - id: 5a553ca864b52e1d8bceea14 title: Data Visualization Certificate - id: 561add10cb82ac38a17523bc title: API's and Microservices Certificate - id: 561add10cb82ac38a17213bc title: Legacy Information Security and Quality Assurance Certificate ```
 ## Challenge Seed

 ## Solution
 ```js // solution required ```

Some users can claim python, new QA, and new infosec certifications without submitting their required projects on .dev. It seems the api does not find the cert challenge and proceeds by setting the related cert flag on the user object to true. The issue can be resolved by reseeding the db locally. I cannot reproduce this issue at the moment, but I will keep this open in case other users are experiencing the same issue.
Hello! I tested this issue, and I was able to claim the certifications without completing the projects.
could you check if you can see the certification after claiming it? I'm just wondering if this is purely a client-side issue.
I am able to see the four certificates I could claim, yes.
Thanks for checking that. In that case, while it seems likely that it will fine if the database is migrated, the api should definitely default to rejecting certifications it does recognise.
Yes We Can Claim Python Certification Without submitting the Projects.
that's really serious


Question:
 --- id: 561add10cb82ac38a17213bd title: Full Stack Certificate challengeType: 7 isHidden: false isPrivate: true --- ## Description

 ## Instructions

 ## Tests
 ```yml tests: - id: 561add10cb82ac38a17513bc title: Responsive Web Design Certificate - id: 561abd10cb81ac38a17513bc title: JavaScript Algorithms and Data Structures Certificate - id: 561acd10cb82ac38a17513bc title: Front End Libraries Certificate - id: 5a553ca864b52e1d8bceea14 title: Data Visualization Certificate - id: 561add10cb82ac38a17523bc title: API's and Microservices Certificate - id: 561add10cb82ac38a17213bc title: Legacy Information Security and Quality Assurance Certificate ```
 ## Challenge Seed

 ## Solution
 ```js // solution required ```

Currently when you complete/claim a certificate there's an entry on the timeline: <img width="582" alt="Screen Shot 2020-05-27 at 9 37 55 AM" src="https://user-"This doesn't seem to be working for the new Scientific Computing with Python, Data Analysis with Python, and Machine Learning with Python certificates.
I'm a new contributor but I'd like to help out on this.
I think this is mostly working. You just need to refresh the page before it shows up... <img width="598" alt="Screen Shot 2020-05-27 at 11 34 12 AM" src="https://user-"Edit: hmm, it seems to be working locally, but not on .dev - the "view cert" button is there in both environments - it just doesn't show on the timeline on .dev
Ah, interesting. This does seem to work locally but not on .dev for some reason.
This may be a one off issue related to where the new/split certificates (Quality Assurance, Information Security, Scientific Computing with Python, Data Analysis with Python, and Machine Learning with Python) were not seeded to the .dev database for some reason. I can confirm this is working locally like mentioned above. thank you for your interest in contributing. Please check out issues with the label for other things we need help with.


Question:
 --- id: 561add10cb82ac38a17213bd title: Full Stack Certificate challengeType: 7 isHidden: false isPrivate: true --- ## Description

 ## Instructions

 ## Tests
 ```yml tests: - id: 561add10cb82ac38a17513bc title: Responsive Web Design Certificate - id: 561abd10cb81ac38a17513bc title: JavaScript Algorithms and Data Structures Certificate - id: 561acd10cb82ac38a17513bc title: Front End Libraries Certificate - id: 5a553ca864b52e1d8bceea14 title: Data Visualization Certificate - id: 561add10cb82ac38a17523bc title: API's and Microservices Certificate - id: 561add10cb82ac38a17213bc title: Legacy Information Security and Quality Assurance Certificate ```
 ## Challenge Seed

 ## Solution
 ```js // solution required ```

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --1) The Full Stack Cert claimed date will only show as the current date and not the date it was claimed on. I claimed mine on the 7th of September and checking back regularly I noticed the claimed on date was always the current date. 2) The Full Stack Cert appears as the Legacy Full Stack Cert on a users profile page, clicking this leads to an error as the legacy cert does not exist. It should be in with the new certificates. That being said, on the settings page the link to view the certificate is linked correctly. ${username-here} /full-stack ${username-here} N.A 1) Just the claimed on date. No screenshot necessary. 2) !
Similar to
I am having the same issue with my Full Stack Certificate
Mine as well. Has this been addressed?
Same here - The issued date shows the current date and not the date on which it was originally issued -
Related
Have the same problem: the date of Full Stack Certificate is always a current date.
If there are no records for a fullstack certificate, a good fallback would be going thought the date of the modern certificates and displaying the date of latest claimed certificate.
optimally, we should add a completion timestamp and an id when campers claim a fullstack certificate with a fallback to the last earned cert if a timestamp is not found.
My full stack certification also updates with the current date not the claimed date.
The date on my full stack certificate is showing the date i claim my Responsive Web design certificate ( the first certificate ). and now if i want to see the certificate it is asking me to claim certificate when i claim it will say is like u have claim the certificate and it will not show me the certificate.
This is an ongoing issue, please use the reactions instead to assert "me too". Potential approach for fixes: and
Also related to the Full Stack cert – the date seems to be the date the first certification was claimed, not the date the full stack certification was claimed:
The fallback is not working properly and I should have caught that. It's not a tricky fix, but I'll make sure it works this time!
Ok thenks On May 5, 2020 11:04, "Oliver Eyton-Williams" <:


Question: Now navigate to your browser and open http://localhost:3001 If the app loads, congratulations - you're all set. Otherwise, let us know by opening a GitHub issue and with your error. <ins> ## Linting Setup You should have [ESLint running in your editor](http://eslint.org/docs/user-guide/integrations.html), and it will highlight anything doesn't conform to [Free Code Camp's JavaScript Style Guide](https://github.com/FreeCodeCamp/FreeCodeCamp/wiki/Free-Code-Camp-JavaScript-Style-Guide) (you can find a summary of those rules [here](https://github.com/FreeCodeCamp/FreeCodeCamp/blob/staging/.eslintrc). Please do not ignore any linting errors, as they are meant to **help** you and to ensure a clean and simple code base. Make sure none of your JavaScript is longer than 80 characters per line.  The reason we enforce this is because one of our dependent NPM modules, [jsonlint](https://github.com/zaach/jsonlint), does not fully support wildcard paths in Windows. </ins> ## Found a bug? Do not file an issue until you have followed these steps:

I'm a new contributor to this project and have run into a few confusing points on that I'd like to clarify for other new contributors. .io - From a few other contributors, I've been told this is no longer used. I'd suggest removing this from the contributor's guide. npm dependencies. This project has a dependency to which is confusing to set up for new NodeJs developers. I'd propose to mention this link to get new Node developers started, especially for Windows, since it involves some unusual installations like Visual Studio for the C++ compiler. isn't any mention of running tests before submitting a pull request. This is something that could be easily missed and cause a pull request to fail the TravisCI build. I've learned that one pre-test dependency, JSONLint, doesn't work for the Windows filesystem. As a workaround, I'd suggest all contributors on Windows to run the tests directly by skipping the pre-test lint run. An additional step could be to manually run JSONLint on individual files, without using the problem-causing wildcard *. For non-Windows contributors, it should be mandatory to run before a pull request.
These all sound like reasonable changes. Go ahead and get a PR going for it.
I'll get started on it.


Question:
## Instructions
  Use multiple conditional operators in the checkSign function to check if a number is positive, negative or zero. The function should return "positive", "negative" or "zero".   In the checkSign function, use multiple conditional operators - following the recommended format used in findGreaterOrEqual - to check if a number is positive, negative or zero. The function should return "positive", "negative" or "zero".
 ## Tests

<!-- 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: Bug - Test for below code fails with error: checkSign should use multiple conditional operators. Screenshot -1: ! Screenshot - 2: ! How to reproduce It. Instead of Error: “checkSign should use multiple conditional operators.” Error should be: Using multiple ternary operators in statement-if-true part of ternary operator is not best practice. (Increasing clarity of error message) Add a Link to the page with the problem: Link to ; Link to reporting bug on forum:
I agree that some tweaking makes sense. I'd would help if we can capture the fact that the test fails if a) you aren't using a multiple ternary or b) the ternary isn't in the expected format.
I do not think this is what the challenge asks for: This is the code from the docs: What you have constructed is: I agree, you have accomplished_ the task. However, the expected implemented logic is of the form: So, perhaps we should change the challenge instructions to be more specific as to the format...
Sir, please note: this repository is of . Thank You for your reply.
, haha. Yes, I am well aware. I linked to the Mozilla documentation to retrieve an example of Multiple Conditional Ternary Operators. My point is still entirely valid.
` Please try the above code in this . Please check what is required to pass the challenge.
, I have, and I understand exactly why this issue was created. I am pointing out that the format of your solution is not what is expected, which is clearly seen in the example given in the lesson: I agree, you have accomplished the task. However, the expected implemented logic is of the form: Your solution does not contain logic.
Sir the condition to win the challenge is: Use multiple conditional operators in the checkSign function to check if a number is positive, negative or zero. The function should return "positive", "negative" or "zero". We should Use Multiple Conditional (Ternary) Operators.
Perhaps the error message should be "... multiple conditional operators in the recommended format."


Question:
## Instructions
  Use multiple conditional operators in the checkSign function to check if a number is positive, negative or zero. The function should return "positive", "negative" or "zero".   In the checkSign function, use multiple conditional operators - following the recommended format used in findGreaterOrEqual - to check if a number is positive, negative or zero. The function should return "positive", "negative" or "zero".
 ## Tests

And perhaps adding a note along the lines of "It's is a best practice to format the multiple conditional operators so that each condition is on a separate line, as shown in the example, for readability."
"It's is a best practice to format the multiple conditional operators so that each condition is on a separate line, as shown in the example, for readability." I would be for adding a note similar.
Closed? Was an update to the description merged?
It is not possible to implement if/else if/else logic using ternary Operator. But the task can be accomplished. No, the expected implemented logic is of the form:
Expected solution (one of 6, very similar to your final answer): If-else version A ternary, or multiple ternary, always can be written with if-else. The challenge and the description is accurate. We just want to add a clarifying comment or two to emphasize the best practice formatting for readability.
Nevermind.
It looks to me like adding clarifying comments is the best solution. So, let's leave this open until a PR gets merged.
I'd like to jump on this, if possible. I'm a first-timer but really excited to learn!
Go for it, This should be a good issue for a first-timer. I recommend taking a look at the , and if you get stuck ask away in the


Question: <ins> { "name": "Full Stack Certificate", "dashedName": "full-stack-certificate", "order": 5, "time": "", "template": "", "required": [], "superBlock": "certificates", "superOrder": 12, "challengeOrder": [ [ "561add10cb82ac38a17213bd", "Full Stack Certificate" ] ], "isPrivate": true, "fileName": "12-certificates/full-stack-certificate.json" } </ins>


Question: <ins> { "name": "Full Stack Certificate", "dashedName": "full-stack-certificate", "order": 5, "time": "", "template": "", "required": [], "superBlock": "certificates", "superOrder": 12, "challengeOrder": [ [ "561add10cb82ac38a17213bd", "Full Stack Certificate" ] ], "isPrivate": true, "fileName": "12-certificates/full-stack-certificate.json" } </ins>


Question: <ins> { "name": "Full Stack Certificate", "dashedName": "full-stack-certificate", "order": 5, "time": "", "template": "", "required": [], "superBlock": "certificates", "superOrder": 12, "challengeOrder": [ [ "561add10cb82ac38a17213bd", "Full Stack Certificate" ] ], "isPrivate": true, "fileName": "12-certificates/full-stack-certificate.json" } </ins>


Question: "assert(typeof(myBike.addUnit) === 'undefined', 'message: myBike.addUnit should remain undefined.');" ], "challengeSeed":[  "//Let's create an object with a two functions. One attached as a property and one not.",   "//Let's create an object with two functions. One attached as a property and one not.",  "var Car = function() {", "  this.gear = 1;", "  function addStyle(styleMe){",

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Macintosh; Intel Mac OS X ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code: There's a typo in the top comment. Instead of reading "Let's create an object with a two functions." it should read "Let's create an object with two functions."


Question: If the `bio` text is greater than `50` characters, you should extract the first 50 characters with `slice()` and replace the rest with `...`. Don't forget that indexes are zero-based. ```js <del> assert.match(code, /<ps*class=("|')bio1>${s*bio.lengths*>s*50s*?s*bio.slice(s*0,s*49s*)s*+s*("|')...2s*:/) </del> <ins> assert.match(code, /<ps*class=("|')bio1>${s*bio.lengths*>s*50s*?s*bio.slice(s*0,s*50s*)s*+s*("|')...2s*:/) </ins> ``` If the `bio` text is less than 50 characters, use the `bio` text directly. ```js <del> assert.match(code, /<ps*class=("|')bio1>${s*bio.lengths*>s*50s*?s*bio.slice(s*0,s*49s*)s*+s*("|')...2s*:s*bios*}</p>/) </del> <ins> assert.match(code, /<ps*class=("|')bio1>${s*bio.lengths*>s*50s*?s*bio.slice(s*0,s*50s*)s*+s*("|')...2s*:s*bios*}</p>/) </ins> ```

The test is expecting to use 49 in the slice. Which seems like could have been an error….It should be 50 The test is expecting to use 49 in the slice. Which seems like could have been an error….It should be 50 No response Device: [Laptop] OS: [Windows 10] Browser: [ Chrome] No response
Yes, you are correct. The test is incorrect. I will go ahead and open this up for contribution for the community. Please read through the guidelines first. We do not assign issues. If you are interested in working on this, then work on the issue and create a PR. Several changes need to be made Here is the first file that needs to be updated For step , you will need to update these two tests here to use the correct value of 50 for the slice method. You will also need to update the seed code for steps 28 and 29. Remember that step 29 also has the complete solution which needs to be updated as well Happy coding


Question: "description": [ "So we've proven that id declarations override class declarations, regardless of where they are declared in your style element CSS.", "There are other ways that you can override CSS. Do you remember inline styles?",  "Use an in-line style to try to make our h1 element white. Remember, in line styles look like this:",   "Use an inline style to try to make our h1 element white. Remember, in line styles look like this:",  "<h1 style="color: green">", "Leave the blue-text and pink-text classes on your h1 element." ],

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:50.0) Gecko/ Firefox/50.0</code. Please describe how to reproduce this issue, and include links to screenshots if possible. There is inconsistent spelling in the instructions. Is it "inline" or "in-line"?
thanks for the issue. They should all be .


Question: smOffset={ 1 } xs={ 12 } > <del> <p </del> <ins> <div </ins> className={ `${ns}-description` } dangerouslySetInnerHTML={{ __html: info }} />

<!-- freeCodeCamp Issue Template --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- NOTE: If your issue is CodePen Project / Test Suite related, please open it using the below URL instead --<!-- --<!-- Insert link to challenge below -- <!-- Describe below when the issue happens and how to reproduce it --going to step 2/2, the last 3 paragraphs of step 1/2 are still displayed I click "Go to my previous step", the same 3 paragraphs are displayed twice, with different font <!-- Describe your workspace in which you are having issues--Browser Name, Version: Chrome 60.0.3112.90 Operating System: Windows NT 10.0; Win64; x64 Mobile, Desktop, or Tablet: Desktop <!-- If relevant, paste all of your challenge code in here --<!-- Add a screenshot of your issue --
Can I give it a try?
Confirmed. Go ye forth


Question: : '/' + clientLocale; module.exports = { <ins> flags: { DEV_SSR: false }, </ins> siteMetadata: { title: 'freeCodeCamp', siteUrl: homeLocation

Potentially, upgrading to MongoDB 4 has broken the GitPod Development. I am looking into it, but here are the errors: Shortened Error (me trying to restart Mongodb, after an initial crash): <details<summarymongod --version</summary</details<details<summaryFull Error</summary</details<details<summaryPotentially relevant client error</summary</details
To the best of my knowledge no code changes were made to upgrade MongoDB on GitPod. The base image using MongoDB 4 needs to be looked at. In other words, the move to MongoDB 4.0.x (not same as 4.x) breaking GitPod is coincidental?
To be honest, I have no idea. The base image: Source: Docs: From what I can see, the docker hub provides no information about the image, but the GitHub repo suggests the image has not been updated in 4 months. To me, this suggests an issue definitely on our side.
That is pretty easy to confirm. On GitPod you should be able to checkout a commit (any commit) that was best known to working from a few days ago. A diff should bring you closer to the root cause, say for example a dependency update somewhere. But to prevent beating around the bush, I think we instead provide our own base image with requirements set in the local setup file. Let me know if you need help with this & thanks for looking into it.
Update: There is a high likelyhood I have been looking into the wrong section for where the problem is. Here is the original error which lead me to look into the database stuff: <details<summaryClient Error</summary</detailsSteps to reproduce: 1) Open any instance off fCC GitPod 2) Wait for client to finish developing 3) Open browser preview of app 4) See client crash with above error I tried killing the database, restarting it, and restarting the client, but the app crashes, everytime the browser tries to load.
I can't reproduce this, sorry! If I go to it just works. I know we've talked about this before, but do you have any special settings for GitPod besides Enable feature preview? Environment variables are the only thing I can see that might cause an issue.
Other than the Feature Preview, everything is bog-standard. I will try to disable FP.


Question: : '/' + clientLocale; module.exports = { <ins> flags: { DEV_SSR: false }, </ins> siteMetadata: { title: 'freeCodeCamp', siteUrl: homeLocation

Disabled Feature Preview Rebased fork against upstream <details<summaryNew Client Error (similar, but different)</summary</details
If you have a lot of work in progress branches, I would suggest pushing them up to your fork and starting with a clean workspace, then on you should delete everything that is old/stale. As a best-practice I would start with a new workspace (provided the work is saved elsewhere like pushing up to th remote fork) and getting rid of older workspaces.
Fork? That could be relevant. Could you drop the Gitpod link that you're using here.
I might be using the wrong word... all I meant is: Here is the link I sometimes use - depends on whether I am testing with changes or not:
All of my testing (outside of the open PR branch) has been with a new workspace. I regularly clean the workspaces. Positive this is not part of the issue on my end.
Quick question: Are you using the preview browser within the GitPod environment? What happens if you ignore the crash on the preview browser and just use the "open in a new tab" button: ! If you reload there, is it the same behavior?
I never use the preview browser - always the new tab view (full). Had not thought to try it there, but, if I am relegated to using the preview, I still would not use it...
Hmm, I was able to reproduce with a link from your fork in your previous comment. But the link from this main repo works A-OK. Is it the same case for you? Or is it broken no matter what you do? I know you rely on GitPod quite a bit, we are totally cool with you pushing branches directly up to the main repository as an exception considering the massive amounts of work you put into contributions. If there is anything we can do to unblock you we would be happy to assist. Sorry about not being able to troubleshoot. :(
I've one idea left to try, that's updating my own fork and seeing if I can repro. I'll have a go tomorrow.
This is the same for me. A workspace from appears to work as expected. So, it is just my fork (unless proved otherwise by Oliver)... I will report this to the GitPod GitHub. Thank you, both, for your time in this.


Question: : '/' + clientLocale; module.exports = { <ins> flags: { DEV_SSR: false }, </ins> siteMetadata: { title: 'freeCodeCamp', siteUrl: homeLocation

If there is anything in particular I need to work on, then I will take you up on this. Thanks
Just to confirm: it seems like it's some weird problem with Shaun's fork. It's worth trying my fork , but I suspect it'll just work when you use my link.
Worst case you would need to delete and recreate your fork and PRs, which is going to be a pain.
Strangely, his fork doesn't work locally also.
After all of that, pointed out the issue - Gatsby had enrolled me into their super secret testing club, and the development server-side rendering broke the build. Is it worth it me opening a PR with the change to prevent this? Or, am I really just that lucky?
Well, congrats on being the secret list that you never subscribed to (I hope?)!! Please make a PR to make sure no else gets on the exclusive club list and is surprised. We wasted so much time for no reason. Lolz.
Sorry this has been breaking you. This error line: comes from This generally works as most people run from the root of their site so equals the root of their site. I'm not sure what your setup is but I'm guessing you're starting the dev server differently? This isn't what we normally do — we have a more robust way to get the public directory that's not being used here that I'll switch this too which should unstick you.
Hey Thanks for getting back to us. You are correct we do have a non-common setup. We essentially use in parallel mode for spinning our API and the client (Gatsby) apps. Even within the client, we need to do a pre-Gatsby develop step. We package a few things (with Webpack) to for one of our client-side runtimes before bringing up Gatsby to start the dev server the normal way. Anyways while we do not understand the internals of Gatsby for this particular feature yet owing to time (BTW, Gatsby 3.x is fast, congrats to the team on shipping it! ), we understand that turning off the flag did resolve the issue. We will be happy to troubleshoot if you point us to some documentation about the "discovery" process for the public directory in your comment. Thanks again.
Thanks for confirming the issue!


Question: : '/' + clientLocale; module.exports = { <ins> flags: { DEV_SSR: false }, </ins> siteMetadata: { title: 'freeCodeCamp', siteUrl: homeLocation

No need for you to do anymore work — I'll fix this upstream so once DEV_SSR is enabled for everyone, it won't cause you (and others with similar setups) to have any trouble.


Question: "id": "bg9997c9c69feddfaeb9bdef", "title": "Manipulate Arrays With unshift()", "description": [  "Now that we've learned how to shiftthings from the start of the array, we need to learn how to unshiftstuff back to the start.", "Let's take the code we had last time and unshiftthis value to the start: "Paul"."   "Now that we've learned how to shift things from the start of the array, we need to learn how to unshift stuff back to the start.", "Let's take the code we had last time and unshift this value to the start: "Paul"."  ], "tests": [ "assert((function(d){if(typeof(d[0]) === "string" && d[0].toLowerCase() == 'paul' && d[1] == 23 && d[2][0] != undefined && d[2][0] == 'dog' && d[2][1] != undefined && d[2][1] == 3){return true;}else{return false;}})(myArray), 'message: myArray should now have ["Paul", 23, ["dog", 3]]).');"

There are missing spaces between some words in: "welcomeToBooleansfunction so that it will return trueinstead of falsewhen the run button is clicked."
There is a similar issue with "Waypoint: Use Bracket Notation to Find the Nth Character in a String" In the first paragraph and the third paragraph. As does "Waypoint: Manipulate Arrays With unshift" in both paragraphs.


Question: testString: assert(confirmEnding("He has to give me a new name", "name") === true); - text: confirmEnding("Open sesame", "same") should return true. testString: assert(confirmEnding("Open sesame", "same") === true);  - text: confirmEnding("Open sesame", "pen") should return false. testString: assert(confirmEnding("Open sesame", "pen") === false);   - text: confirmEnding("Open sesame", "sage") should return false. testString: assert(confirmEnding("Open sesame", "sage") === false);  - text: confirmEnding("Open sesame", "game") should return false. testString: assert(confirmEnding("Open sesame", "game") === false); - text: confirmEnding("If you want to save our world, you must hurry. We dont know how much longer we can withstand the nothing", "mountain") should return false.

Describe your problem and how to reproduce it: During a challenge, testing various methods of completing them, I’ve noticed one of the coding questions seems to be a little too easy to pass and I believe it could be fixed with a simple additional test. consider this code This code will pass all the tests provided, even though, when the target is changed to for example “sage” it returns I think a test should be with some incorrect middle letters such as testing if each individual letter is correct. Let me know what you think or if I’m being silly! Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: Google Chrome Browser Version: Version 84.0.4147.89 (Official Build) (64-bit) Operating System: Windows 10 Pro
I concur you have found an edge case missed by the current tests. Go ahead and create a PR.
Will do. This is exciting!


Question: [certType]: true }; <del> if (challenge) { const { id, tests, challengeType } = challenge; if ( !user[certType] && !isCertified(tests, user.completedChallenges) ) { return Observable.just(notCertifiedMessage(certName)); } updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </del> <ins> // certificate doesn't exist or // connection error if (!challenge) { reportError(`Error claiming ${certName}`); return Observable.just(failureMessage(certName)); } const { id, tests, challengeType } = challenge; if (!user[certType] && !isCertified(tests, user.completedChallenges)) { return Observable.just(notCertifiedMessage(certName)); </ins> } <ins> updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </ins> if (!user.name) { return Observable.just(noNameMessage);


Question: [certType]: true }; <del> if (challenge) { const { id, tests, challengeType } = challenge; if ( !user[certType] && !isCertified(tests, user.completedChallenges) ) { return Observable.just(notCertifiedMessage(certName)); } updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </del> <ins> // certificate doesn't exist or // connection error if (!challenge) { reportError(`Error claiming ${certName}`); return Observable.just(failureMessage(certName)); } const { id, tests, challengeType } = challenge; if (!user[certType] && !isCertified(tests, user.completedChallenges)) { return Observable.just(notCertifiedMessage(certName)); </ins> } <ins> updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </ins> if (!user.name) { return Observable.just(noNameMessage);


Question: [certType]: true }; <del> if (challenge) { const { id, tests, challengeType } = challenge; if ( !user[certType] && !isCertified(tests, user.completedChallenges) ) { return Observable.just(notCertifiedMessage(certName)); } updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </del> <ins> // certificate doesn't exist or // connection error if (!challenge) { reportError(`Error claiming ${certName}`); return Observable.just(failureMessage(certName)); } const { id, tests, challengeType } = challenge; if (!user[certType] && !isCertified(tests, user.completedChallenges)) { return Observable.just(notCertifiedMessage(certName)); </ins> } <ins> updateData = { ...updateData, completedChallenges: [ ...user.completedChallenges, { id, completedDate: new Date(), challengeType } ] }; </ins> if (!user.name) { return Observable.just(noNameMessage);


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

There is a typo at the following step: It should present the text: Device: Laptop OS: Windows 11 Browser: Brave Version: 1.


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code:
methods are case sensitive. should be is a great place for questions like this
thanks for the issue but if you get stuck or have questions with a challenge in the future, please first ask questions to the . What has suggested is correct. Happy coding!
I've tried it several times, making sure code was acurate... there must be another problem
Sorry about that but no one was answering me in the help room
no worries. Yeah, sometimes the Help Rooms are pretty busy and getting help is difficult. Please be patient. There are many people in there that are willing to help. You can always tag me there and I get help you out when I can


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36 OPR/37.0.2178.43</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code:
Issues are for reporting bugs or other problems with the site. Please consult the for help with writing code.
this is not issue. Your code just don't have any tags.
Thanks for reporting this. GitHub Issues are for reporting bugs on the website only. Please consult the for any assistance to Coding. Happy Coding!


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code:
the instructions are correct. You'll need to return "Huge" whenever . If you get stuck with a challenge, please ask questions to the . Happy coding!


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.152 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. My code:
Yes. They are, but that's not issue to be logged under this repo :wink: ! Thanks for reporting this. GitHub Issues are for reporting bugs on the website only. Please consult the for any assistance to Coding. Happy Coding!


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Challenge - This challenge says that we must find campsite city on the list, but when I open link, there is not any list of campsites. It redirects to camperbot page, which redirects to gitter
The wiki URL was changed for the list of campsites. To contributor: Change this line: New link: Please, check our and if you need any assistance reach out to the .
Hi, first timer here. I'll fix in the next hours. Cheers!
Hey Bob, mind having a look at any of the open issues? Looking forward to your contributions.


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

<!-- FreeCodeCamp Issue Template --<!-- NOTE: ISSUES ARE NOT FOR CODE HELP - Ask for Help at --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- Insert link to challenge below -- <!-- Describe below when the issue happens and how to reproduce it --The test: Use the ++ operator fails when the pre-increment version of the "++" operator is used (i.e. "++myVar;") rather than the post-increment version. Nothing in the description of the task precludes the pre-increment version being correct. <!-- Describe your workspace in which you are having issues--- Browser Name, Version: various Operating System: various Mobile, Desktop, or Tablet: multiple <!-- Add a screenshot of your issue --!
thanks for the issue. Because we're targeting beginner coders, we wanted the challenges to be simple enough to teach a concept but not overwhelm learners with other details. Same goes for . cc/ worth accepting this prefix operation?
I remember this was and more times in the chat, we could add separate challenges for pre/post increments/decrements. But this is going to be confusing for beginners. Maybe we could relax the tests to allow but not change the test case message. So advanced campers who are attempting these as in this case can pass the challenge and beginners are not overwhelmed as well.
I agree on just accepting the answer for flexibility but not change the test messages. I think editing to the following will work. I'm not sure about escaping the parentheses but whoever takes this will have to check this. The code will break for anyways so I think the above should be okay. There is a similar case in so someone taking this can easily do the other
Won't the above code pass with just ? Since both sections are optional, that will match just . Better to do:
good point. I was being careless Thanks!
Thanks ya’ll! I couldn’t have asked for a better outcome. Having poked your backend with alternate ‘correct' solutions to prior challenges and been impressed with your robust handling of them this situation stuck out a bit. And I was hoping to contribute to the polish of your beautiful project. I appreciate the peak behind the curtain. It confirmed that the modification only required a simple regex edit and that ya’ll really are a copacetic group. Kudos all around!


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

<!-- FreeCodeCamp Issue Template --<!-- NOTE: ISSUES ARE NOT FOR CODE HELP - Ask for Help at --<!-- Please provide as much detail as possible for us to fix your issue --<!-- Remove any heading sections you did not fill out --<!-- Insert link to challenge below --Convert JSON Data to HTML <!-- Describe below when the issue happens and how to reproduce it --Can't use or alert to show my results this problem with all challenges. <!-- Describe your workspace in which you are having issues--- Browser Name, Version: Chrome, Version 50.0.2661.94 m (64-bit) Operating System: Windows 10 64-bit Mobile, Desktop, or Tablet: Desktop <!-- Add a screenshot of your issue --!
First of all your code is incorrect. Hit the and just adding the below at its correct place: ! Closing. Please consult the for any assistance to Coding. Happy Coding!


Question: background-position: center; } <ins> .testimonial-image { border-radius: 5px; height: 200px; width: 200px; } .testimonial-copy { font-size: 20px; text-align: center; @media (min-width: 991px) and (max-width: 1199px) { height: 120px; } @media (min-width: 1200px) { height: 90px; } } </ins> //uncomment this to see the dimensions of all elements outlined in red //* { //  border-color: red;

Hello everyone, When a new challenge is launched, the focus is not on the code window. User has to manually click into the code window to be able to write. Is it possible to have a keyboard shortcut to focus on the code window, just like we have a keyboard shotcut (Ctrl + Enter) to submit our solution and to launch the next challenge? It feels annoying sometimes to use mouse just to get focus when all the actions are happening via keyboard. Thanks in advance. Prasoon
What do you say?
I think that idea is great to me!
How about <kbdCtrl/Cmd</kbd+ <kbdShift</kbd+ <kbdE</kbd?
Anyone interested in working on this, check these files:
While I'm theory this can be done, there's an on-going issue with the code mirror cursor bugging out. The editor does auto focus on page loads but there's a bug that prevents round. There are a few issues open around this that would still be open.
Hi, I would like to work on this if you guys are alright with that.
Go ahead, help wanted issues are open to all. Please, check our .


Question: is2018DataVisCert, isApisMicroservicesCert, isFrontEndLibsCert, <del> is2020QaCert, is2020InfosecCert, </del> <ins> isInfosecQaCert, </ins> isJsAlgoDataStructCert, isRespWebDesignCert } = this.props;

Some users can claim python, new QA, and new infosec certifications without submitting their required projects on .dev. It seems the api does not find the cert challenge and proceeds by setting the related cert flag on the user object to true. The issue can be resolved by reseeding the db locally. I cannot reproduce this issue at the moment, but I will keep this open in case other users are experiencing the same issue.
Hello! I tested this issue, and I was able to claim the certifications without completing the projects.
could you check if you can see the certification after claiming it? I'm just wondering if this is purely a client-side issue.
I am able to see the four certificates I could claim, yes.
Thanks for checking that. In that case, while it seems likely that it will fine if the database is migrated, the api should definitely default to rejecting certifications it does recognise.
Yes We Can Claim Python Certification Without submitting the Projects.
that's really serious


Question: is2018DataVisCert, isApisMicroservicesCert, isFrontEndLibsCert, <del> is2020QaCert, is2020InfosecCert, </del> <ins> isInfosecQaCert, </ins> isJsAlgoDataStructCert, isRespWebDesignCert } = this.props;

Currently when you complete/claim a certificate there's an entry on the timeline: <img width="582" alt="Screen Shot 2020-05-27 at 9 37 55 AM" src="https://user-"This doesn't seem to be working for the new Scientific Computing with Python, Data Analysis with Python, and Machine Learning with Python certificates.
I'm a new contributor but I'd like to help out on this.
I think this is mostly working. You just need to refresh the page before it shows up... <img width="598" alt="Screen Shot 2020-05-27 at 11 34 12 AM" src="https://user-"Edit: hmm, it seems to be working locally, but not on .dev - the "view cert" button is there in both environments - it just doesn't show on the timeline on .dev
Ah, interesting. This does seem to work locally but not on .dev for some reason.
This may be a one off issue related to where the new/split certificates (Quality Assurance, Information Security, Scientific Computing with Python, Data Analysis with Python, and Machine Learning with Python) were not seeded to the .dev database for some reason. I can confirm this is working locally like mentioned above. thank you for your interest in contributing. Please check out issues with the label for other things we need help with.


Question: is2018DataVisCert, isApisMicroservicesCert, isFrontEndLibsCert, <del> is2020QaCert, is2020InfosecCert, </del> <ins> isInfosecQaCert, </ins> isJsAlgoDataStructCert, isRespWebDesignCert } = this.props;

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. --1) The Full Stack Cert claimed date will only show as the current date and not the date it was claimed on. I claimed mine on the 7th of September and checking back regularly I noticed the claimed on date was always the current date. 2) The Full Stack Cert appears as the Legacy Full Stack Cert on a users profile page, clicking this leads to an error as the legacy cert does not exist. It should be in with the new certificates. That being said, on the settings page the link to view the certificate is linked correctly. ${username-here} /full-stack ${username-here} N.A 1) Just the claimed on date. No screenshot necessary. 2) !
Similar to
I am having the same issue with my Full Stack Certificate
Mine as well. Has this been addressed?
Same here - The issued date shows the current date and not the date on which it was originally issued -
Related
Have the same problem: the date of Full Stack Certificate is always a current date.
If there are no records for a fullstack certificate, a good fallback would be going thought the date of the modern certificates and displaying the date of latest claimed certificate.
optimally, we should add a completion timestamp and an id when campers claim a fullstack certificate with a fallback to the last earned cert if a timestamp is not found.
My full stack certification also updates with the current date not the claimed date.
The date on my full stack certificate is showing the date i claim my Responsive Web design certificate ( the first certificate ). and now if i want to see the certificate it is asking me to claim certificate when i claim it will say is like u have claim the certificate and it will not show me the certificate.
This is an ongoing issue, please use the reactions instead to assert "me too". Potential approach for fixes: and
Also related to the Full Stack cert – the date seems to be the date the first certification was claimed, not the date the full stack certification was claimed:
The fallback is not working properly and I should have caught that. It's not a tricky fix, but I'll make sure it works this time!
Ok thenks On May 5, 2020 11:04, "Oliver Eyton-Williams" <:


Question:
"Hagamos que nuestro botón "Get message" cambie el texto del elemento con clase message.", "Antes de poder hacer esto, tenemos que implementar un evento de pulsación dentro de nuestra función $(document).ready(), añadiendo este código:", "
$("#getMessage").on("click", function(){

});
"  ], "namePt": "Ativando eventos de clique com jQuery", "descriptionPt": [ "Nesta sessão, vamos aprender como obter dados de uma API. As APIS - Interface de Programação de Aplicativos - são ferramentas usadas pelos computadores  para se comunicarem entre si.", "Também aprenderemos como utilizar o HTML com os dados obtidos de uma API usando uma tecnologia chamada Ajax", "Em primeiro lugar, vamos revir o que faz a função $(document).ready(). Esta função faz com que todo o codigo que esteja dentro de seu escopo execute somente quando a nossa página tenha sido carregada.", "Vamos fazer nosso butão "Get message" mudar o texto do elemento com a classe message.", "Antes de poder fazer isso, temos que implementar um evento de clique dentro da nossa função $(document).ready(), adicionando este código:", "
$("#getMessage").on("click", function(){

});
"  ] }, {

[ ] Trigger Click Events with jQuery [ ] Change Text with Click Events [ ] Get JSON with the jQuery getJSON Method [ ] Convert JSON Data to HTML [ ] Render Images from Data Sources [ ] Prefilter JSON [ ] Get Geo-location Data
Working on it!


Question:
${author}

${bio.length > 50 ? bio.slice(0, 49) + '...' : bio}

${bio.length > 50 ? bio.slice(0, 50) + '...' : bio}
  ${author} author page
 `;

The test is expecting to use 49 in the slice. Which seems like could have been an error….It should be 50 The test is expecting to use 49 in the slice. Which seems like could have been an error….It should be 50 No response Device: [Laptop] OS: [Windows 10] Browser: [ Chrome] No response
Yes, you are correct. The test is incorrect. I will go ahead and open this up for contribution for the community. Please read through the guidelines first. We do not assign issues. If you are interested in working on this, then work on the issue and create a PR. Several changes need to be made Here is the first file that needs to be updated For step , you will need to update these two tests here to use the correct value of 50 for the slice method. You will also need to update the seed code for steps 28 and 29. Remember that step 29 also has the complete solution which needs to be updated as well Happy coding


Question: Fulfill the below user stories and get all of the tests to pass. Use whichever libraries or APIs you need. Give it your own personal style. <del> You can use HTML, JavaScript, CSS, and the D3 svg-based visualization library. The tests require axes to be generated using the D3 axis property, which automatically generates ticks along the axis. These ticks are required for passing the D3 tests because their positions are used to determine alignment of graphed elements. You will find information about generating axes at <https://github.com/d3/d3/blob/master/API.md#axes-d3-axis>. Required (non-virtual) DOM elements are queried on the moment of each test. If you use a frontend framework (like Vue for example), the test results may be inaccurate for dynamic content. We hope to accommodate them eventually, but these frameworks are not currently supported for D3 projects. </del> <ins> You can use HTML, JavaScript, CSS, and the D3 svg-based visualization library. The tests require axes to be generated using the D3 axis property, which automatically generates ticks along the axis. These ticks are required for passing the D3 tests because their positions are used to determine alignment of graphed elements. You will find information about generating axes at <https://github.com/d3/d3/blob/master/API.md#axes-d3-axis>. Required DOM elements are queried on the moment of each test. If you use a frontend framework (like Vue for example), the test results may be inaccurate for dynamic content. We hope to accommodate them eventually, but these frameworks are not currently supported for D3 projects. </ins> **User Story #1:** My chart should have a title with a corresponding `id="title"`.

In the 5 certification projects for the Data Visualization certificate, the phrase "(non-virtual) DOM elements" is used without any prior explanation (I checked the Data Visualization curriculum and no such phrase was introduced at any point). It is not clear therefore to the learner what the requirement "Required (non-virtual) DOM elements are queried on the moment of each test." could actually mean. Now, maybe it means "actual DOM' vs "virtual DOM" from the React curriculum. But requiring that a priori knowledge to understand a Data Visualization project requirement seems like overkill? I propose that this requirement in all 5 projects be stated simply as "Required DOM elements..." The chance of someone not understanding that we mean 'actual DOM elements' seems miniscule to me in the context of these challenges, but I'm not a web developer, so if there is a valid reason to use the term 'non-virtual DOM elements', it would be very interesting for me to learn/hear of it. ps. should this issue be accepted, please also fix the phrasing "on the moment" to be "at the moment" which I believe is what was actually meant. update all 5 certification project statements referring to (non-virtual) DOM elements as per the above discussion. No response N/A No response
I think this is more of a note for advanced campers, similar to mentioning that the tests might not work with a framework like Vue.
Yes I think so too, but it is too confusing to someone who is not that advanced. If we didn't say it, what is the chance an advanced camper will run into a problem?
It likely wouldn't - though I also haven't seen much mention of beginners who do have confusion.
I agree that I haven't seen questions on this either but since the rule-of-thumb is to not include undefined technical terms in the challenges and projects, we should do something about this one. (Either define it or drop it)
Thanks for opening this issue. This looks like something that can be fixed by "first-time" code contributors to this repository. Here are the files that you should be looking at to work on a fix: List of files: In these files, the text should be updated to . Please make sure you read our , we prioritize contributors following the instructions in our guides.


Question: Fulfill the below user stories and get all of the tests to pass. Use whichever libraries or APIs you need. Give it your own personal style. <del> You can use HTML, JavaScript, CSS, and the D3 svg-based visualization library. The tests require axes to be generated using the D3 axis property, which automatically generates ticks along the axis. These ticks are required for passing the D3 tests because their positions are used to determine alignment of graphed elements. You will find information about generating axes at <https://github.com/d3/d3/blob/master/API.md#axes-d3-axis>. Required (non-virtual) DOM elements are queried on the moment of each test. If you use a frontend framework (like Vue for example), the test results may be inaccurate for dynamic content. We hope to accommodate them eventually, but these frameworks are not currently supported for D3 projects. </del> <ins> You can use HTML, JavaScript, CSS, and the D3 svg-based visualization library. The tests require axes to be generated using the D3 axis property, which automatically generates ticks along the axis. These ticks are required for passing the D3 tests because their positions are used to determine alignment of graphed elements. You will find information about generating axes at <https://github.com/d3/d3/blob/master/API.md#axes-d3-axis>. Required DOM elements are queried on the moment of each test. If you use a frontend framework (like Vue for example), the test results may be inaccurate for dynamic content. We hope to accommodate them eventually, but these frameworks are not currently supported for D3 projects. </ins> **User Story #1:** My chart should have a title with a corresponding `id="title"`.

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.


Question: <ins> import request from 'supertest'; import { build } from '../app'; import { endpoints } from './deprecated-endpoints'; describe('Deprecated endpoints', () => { let fastify: undefined | Awaited<ReturnType<typeof build>>; beforeAll(async () => { fastify = await build(); await fastify.ready(); }, 20000); afterAll(async () => { await fastify?.close(); }); endpoints.forEach(([endpoint, method]) => { test(`${method} ${endpoint} returns 410 status code with "info" message`, async () => { const response = await request(fastify?.server)[ method.toLowerCase() as 'get' | 'post' ](endpoint); expect(response.status).toBe(410); expect(response.body).toStrictEqual({ message: { type: 'info', message: 'Please reload the app, this feature is no longer available.' } }); }); }); }); </ins>

Thanks for noticing this, Sem. As this route has been deprecated for a while, we should be able to safely sunset this route - NOT have it in the new API.
Reopening it as we're migrating deprecated endpoints as discussed in todays API meeting


Question: Pass in only the first element of the `locations` array by adding `[0]` at the end of the variable. For example: `myFunction(arg[0]);`. <del> This is called <dfn>bracket notation</dfn>. Values in an array are accessed by index. Indices are numerical values and start at 0 - this is called zero-based indexing. `arg[0]` would be the first element in the `arg` array. </del> <ins> This is called <dfn>bracket notation</dfn>. Values in an array are accessed by index. Indices are numerical values and start at `0` - this is called zero-based indexing. `arg[0]` would be the first element in the `arg` array. </ins> # --hints--

The description here is missing backticks for the number zero. Here is the new updated description. 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 Here is the correct file that needs to be updated. Note: Even though the file says step 62 instead of step 63 that is on the site, this is still the correct file that needs updating. We recently made changes to the ordering and those changes haven't shown up yet on the live site. Happy coding 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
Step 145 has the same issue here Here is the file that needs to be updated here is the correct use of backticks for the number zero in the last sentence here


Question: ```js // doubles input value and returns it const doubler = (item) => item * 2; <ins> doubler(4); // returns 8 </ins> ``` <del> If an arrow function has a single argument, the parentheses enclosing the argument may be omitted. </del> <ins> If an arrow function has a single parameter, the parentheses enclosing the parameter may be omitted. </ins> ```js <del> // the same function, without the argument parentheses </del> <ins> // the same function, without the parameter parentheses </ins> const doubler = item => item * 2; ```

<!-- 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: The usage of the word "argument" ist unclear to me. The title of this challenge uses the word "parameter". Then the instructions state: "If an arrow function has a single argument, the parentheses enclosing the argument may be omitted." But the following snippet cited from the instructions shows the parameter "item" without parentheses: The functions are never invoked with an argument in the examples. As I understand it the sentence should say: "If an arrow function has a single parameter, the parentheses enclosing the parameter may be omitted." Add a Link to the page with the problem: or, 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):
Hello~! I agree that the verbiage is wrong here. should probably be replaced with in the examples and text, with the exception of the top line (which, at a quick glance, is the only correct use of ):
These are the ones that should be changed, I think. In fact, we could use instead.
I like that approach. Think this could be opened up to first timers?
I would go for: Just like a regular function, you can pass arguments into an arrow function. If an arrow function has a single parameter, the parentheses enclosing the parameter may be omitted. It is possible to pass more than one argument into an arrow function.
Sure, that works.


Question:
"challengeType": 3, "nameEs": "Crea una calculadora JavaScript", "descriptionEs": [  "Objetivo: Crea una aplicación con CodePen.io que reproduzca efectivamente mediante ingeniería inversa este app: http://codepen.io/FreeCodeCamp/full/zrRzMR.",   "Objetivo: Crea una aplicación con CodePen.io cuya funcionalidad sea similar a esta: http://codepen.io/FreeCodeCamp/full/zrRzMR.",  "Regla #1: No veas el código del proyecto de ejemplo en CodePen. Encuentra la forma de hacerlo por tu cuenta.",  "Regla #2: Puedes usar cualquier librería o APIs que necesites.", "Regla #3: Usa ingeniería inversa para reproducir la funcionalidad del proyecto de ejemplo, pero también siéntete en la libertad de personalizarlo.", "Las siguientes son las historias de usuario que debes satisfacer, incluyendo las historias opcionales:", "Historia de usuario: Como usuario, puedo sumar, restar, multiplicar y dividir dos números.",   "Regla #2: Satisface las siguientes historias de usuario. Usa cualquier librería o API que necesites. Dale tu estilo personal.", "Historia de usuario: Puedo sumar, restar, multiplicar y dividir dos números.",  "Historia de usuario opcional: Puedo limpiar la pantalla con un botón de borrar.", "Historia de usuario opcional: Puedo concatenar continuamente varias operaciones hasta que pulse el botón de igual, y la calculadora me mostrará la respuesta correcta.",  "Recuerda utilizar Read-Search-Ask si te sientes atascado.", "Cuando hayas terminado, pulsa el botón de "I've completed this challenge" e incluye un link a tu CodePen. Si programaste en pareja, debes incluir también el nombre de usuario de Free Code Camp de tu compañero.", "Si quieres retroalimentación inmediata de parte de tus compañeros campistas, pulsa este botón y pega el link de tu proyecto en CodePen.

Pulsa aquí y agrega tu link en el texto del tweet"   "Recuerda utilizar Leer-Buscar-Preguntar si te sientes atascado.", "Cuando hayas terminado, pulsa el botón de "I've completed this challenge" e incluye un enlace a tu CodePen. ", "Puedes obtener retroalimentación sobre tu proyecto por parte de otros campistas, compartiéndolo en nuestra Sala de chat para revisión de código. También puedes compartirlo en Twitter y en el campamento de tu ciudad (en Facebook)."  ], "isRequired": true },

[x] Build a JavaScript Calculator [x] Build a Pomodoro Clock [x] Build a Tic Tac Toe Game [x] Build a Simon Game
Working on this one


Question: const allowedSocialsAndDomains = { githubProfile: 'github.com', linkedin: 'linkedin.com', <del> twitter: 'twitter.com', </del> <ins> twitter: ['twitter.com', 'x.com'], </ins> website: '' };

When I want to add my x account to my profile the format of the link must be but the domain nowadays is and when I add it with x instead of twitter it shows me an error ! to the settings of your profile the Your Internet Presence section to add/change the Twitter account link It should allow both domains to be entered not only ! Device: [Desktop] OS: [Ubuntu 22.04] Browser: [Firefox v128.0 - 64bit] If the context is not enough for the issue reply to this issue and mention my username
! Huh?? That's me too!!!
Hello, I am new to contributing so please inform me if I am doing anything wrong. The Line254 effects social link validation. could be changed to X.com for a quick patch although moderators may want to redefine all twitter references to x. Line239
Hey Yes, I think the same but I think it should not be changed to x.com we have to change the value to array instead of string like this: then use a conditional statement to be sure the entered data from a user includes one of these two.


Question:
"challengeType": 3, "nameEs": "Construye un juego de Simon", "descriptionEs": [  "Objetivo: Crea una aplicación con CodePen.io que reproduzca efectivamente mediante ingeniería inversa este app: http://codepen.io/FreeCodeCamp/full/obYBjE.",   "Objetivo: Construye una aplicación en CodePen.io cuya funcionalidad sea similar a la de esta: http://codepen.io/Em-Ant/full/QbRyqq/.",  "Regla #1: No veas el código del proyecto de ejemplo en CodePen. Encuentra la forma de hacerlo por tu cuenta.",  "Regla #2: Puedes usar cualquier librería o APIs que necesites.", "Regla #3: Usa ingeniería inversa para reproducir la funcionalidad del proyecto de ejemplo, pero también siéntete en la libertad de personalizarlo.", "Las siguientes son las historias de usuario que debes satisfacer, incluyendo las historias opcionales:", "Historia de usuario: Como usuario, se me presenta una serie de colores aleatoria.", "Historia de usuario: Como usuario, cada vez que presiono una secuencia de colores correctamente, veo la misma serie de colores con un paso adicional.", "Historia de usuario: Como usuario, escucho un sonido que corresponde a cada botón cuando una sequencia se me presenta, así como cuando yo presiono un botón.", "Historia de usuario: Como usuario, si presiono el botón equivocado, se me notifica sobre mi error, y la serie correcta de colores se muestra de nuevo para recordarme cuál es la secuencia correcta, tras lo cual puedo probar de nuevo.", "Historia de usuario: Como usuario, puedo ver cuántos pasos hay en la serie de botones actual.", "Historia de usuario opcional: Como usuario, si deseo reiniciar, puedo pulsar un botón para hacerlo, y el juego comenzará desde una secuencia con un solo paso.", "Historia de usuario opcional: Como usuario, puedo jugar en modo estricto donde si presiono el botón equivocado, se me notifica de mi error, y el juego vuelve a comenzar con una nueva serie aleatoria de colores.", "Historia de usuario opcional: Como usuario, la velocidad del juego se incrementa en el quinto, noveno y decimotercer paso.", "Historia de usuario opcional: Como usuario, puedo ganar el juego si completo 20 pasos correctos. Se me notifica sobre mi victoria, tras lo cual el juego se reinicia.",   "Regla #2: Satisface las siguientes historias de usuario. Usa cualquier librería o APIs que necesites. Dale tu estilo personal.", "Historia de usuario: Se me presenta una serie aleatoria de pulsaciones a botones.", "Historia de usuario: Cada vez que presiono una secuencia de pulsaciones correctamente, veo que vuelve a ejecutarse la misma serie de pulsaciones con un paso adicional.", "Historia de usuario: Escucho un sonido que corresponde a cada botón cuando se ejecuta una secuencia de pulsaciones, así como cuando yo presiono un botón.", "Historia de usuario: Si presiono el botón equivocado, se me notifica sobre mi error, y se ejecuta de nuevo la serie correcta de pulsaciones para recordarme cuál es la secuencia correcta, tras lo cual puedo intentar de nuevo.", "Historia de usuario: Puedo ver cuántos pasos hay en la serie de pulsaciones actual.", "Historia de usuario: Si deseo reiniciar, puedo pulsar un botón para hacerlo, y el juego comenzará desde una secuencia con un solo paso.", "Historia de usuario: Puedo jugar en modo estricto donde si presiono el botón equivocado, se me notifica de mi error, y el juego vuelve a comenzar con una nueva serie aleatoria de colores.", "Historia de usuario: Puedo ganar el juego si completo 20 pasos correctos. Se me notifica sobre mi victoria, tras lo cual el juego se reinicia.",  "Pista: Aquí hay algunos mp3s que puedes utilizar para tus botones: https://s3.amazonaws.com/freecodecamp/simonSound1.mp3, https://s3.amazonaws.com/freecodecamp/simonSound2.mp3, https://s3.amazonaws.com/freecodecamp/simonSound3.mp3, https://s3.amazonaws.com/freecodecamp/simonSound4.mp3.",  "Recuerda utilizar Read-Search-Ask si te sientes atascado.", "Cuando hayas terminado, pulsa el botón de "I've completed this challenge" e incluye un link a tu CodePen. Si programaste en pareja, debes incluir también el nombre de usuario de Free Code Camp de tu compañero.", "Si quieres retroalimentación inmediata de parte de tus compañeros campistas, pulsa este botón y pega el link de tu proyecto en CodePen.

Pulsa aquí y agrega tu link en el texto del tweet"   "Recuerda utilizar Leer-Buscar-Preguntar si te sientes atascado.", "Cuando hayas terminado, pulsa el botón de "I've completed this challenge" e incluye un enlace a tu CodePen.", "Puedes obtener retroalimentación sobre tu proyecto por parte de otros campistas, compartiéndolo en nuestra Sala de chat para revisión de código. También puedes compartirlo en Twitter y en el campamento de tu ciudad (en Facebook)."  ], "isRequired": true } ]  }   No newline at end of file  }


Question: Congratulations on behalf of the freeCodeCamp.org team! `; <ins> const failureMessage = name => dedent` Something went wrong with the verification of ${name}, please try again. If you continue to receive this error, you can send a message to support@freeCodeCamp.org to get help. `; </ins> function ifNoSuperBlock404(req, res, next) { const { superBlock } = req.body; if (superBlock && superBlocks.includes(superBlock)) {


Question: Congratulations on behalf of the freeCodeCamp.org team! `; <ins> const failureMessage = name => dedent` Something went wrong with the verification of ${name}, please try again. If you continue to receive this error, you can send a message to support@freeCodeCamp.org to get help. `; </ins> function ifNoSuperBlock404(req, res, next) { const { superBlock } = req.body; if (superBlock && superBlocks.includes(superBlock)) {


Question: Congratulations on behalf of the freeCodeCamp.org team! `; <ins> const failureMessage = name => dedent` Something went wrong with the verification of ${name}, please try again. If you continue to receive this error, you can send a message to support@freeCodeCamp.org to get help. `; </ins> function ifNoSuperBlock404(req, res, next) { const { superBlock } = req.body; if (superBlock && superBlocks.includes(superBlock)) {


Question: </Modal.Body> <Modal.Footer> {isSignedIn ? null : ( <del> <Login block={true} bsSize='lg' bsStyle='primary' className='btn-cta' > Sign in to save your progress </Login> </del> <ins> <Login block={true}>Sign in to save your progress</Login> </ins> )} <Button block={true}

Describe the bug The completion model buttons are not correctly aligned. To Reproduce Steps to reproduce the behavior: to out. to the challenge run tests error Screenshots ! This is only on the development server, probably created by the css changes introduced by the landing page redesign.
I am able to confirm this bug. Looking at the elements: The Go To Next Challenge button has a left margin of 5px. ! The Download My Solution button has a top margin of 5px. !


Question: padding-bottom: 10px; } <del> .help-modal-heading { line-height: 1.5; font-weight: 400; word-spacing: -0.4ch; } </del> .help-form-legend { color: var(--secondary-color); border: 0;

The following classes in are unused and should be removed: .help-modal .help-modal-heading .btn-lgRemove the above classes from Test and confirm that the modal displays properly after the changes


Question: ], [ "5a9d7295424fe3d0e10cad14", <del> "Cascading CSS variables" </del> <ins> "Inherit CSS Variables" </ins> ], [ "5a9d72a1424fe3d0e10cad15",

I don't think this challenge is described correctly. The idea that a variable is only available to the element and it's children has nothing to do with cascading. It's a clear definition of scope. Cascading is the concept that if there are multiple of a thing, the last one wins, which is described in the previous challenge related to fallbacks. Just my 2cents for what it's worth, but if I had someone come in for an interview and tell me cascading was the idea that a variable could only be used by an element and it's children, I would consider that a wildly misunderstood concept.
Thanks for reporting this! While this challenge isn't intended to introduce the concepts of cascade and inheritance, it clearly does not use the terms correctly. I'll have a go at rewriting the challenge to show that CSS variables behave like ordinary properties in this respect.
for what it's worth, this was discussed a little bit in a previous issue that was never resolved - - perhaps it should be reworded since it has now come up multiple times.


Question: }; ``` <ins> If `value` submitted to `/api/check` is already placed in `puzzle` on that `coordinate`, the returned value will be an object containing a `valid` property with `true` if `value` is not conflicting. ```js async (getUserInput) => { const input = '..9..5.1.85.4....2432......1...69.83.9.....6.62.71...9......1945....4.37.4.3..6..'; const coordinate = 'C3'; const value = '2'; const data = await fetch(getUserInput('url') + '/api/check', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ puzzle: input, coordinate, value }) }); const parsed = await data.json(); assert.property(parsed, 'valid'); assert.isTrue(parsed.valid); }; ``` </ins> If the puzzle submitted to `/api/check` contains values which are not numbers or periods, the returned value will be `{ error: 'Invalid characters in puzzle' }` ```js

Describe your problem and how to reproduce it: While working on the Sudoku solver project, one scenario came up that wasn't clear to me how to handle. The scenario is what do you do, if I ask to check a value of a cell with an existing value? For my project, I chose to return a conflict with the row, column, and region. However, I checked what the example app returns. The results it returns are logically inconsistent, which tells me this use case is undefined. For the example app: https://sudoku- coordinate enter C3, for value enter 2 (the existing value), click Check Placement returns value to 9, App returns value to 1, App returns These response are not logically consistent. For the first one, it appears to be checking against all of the existing values in the puzzle. For the second and third cases, it appears to be checking after replacing the value. I would expect this use case to be defined as either, it's a conflict, because there is an existing value at that cell or to replace the value in that cell and then check if it is valid or not and return the appropriate results. Add a Link to the page with the problem: ://sudoku- Tell us about your browser and operating system: Browser Name: Google Chrome Browser Version: 87.0.4280.67 (Official Build) (x86_64) Operating System: macOS Mojave 10.14.6
Yes, seems odd that you can place a value over an existing spot and it can return as valid Seems like this should be the response Or something along those lines
I do agree that this should be handled as a valid placement (given that the number is already present in that cell). Unless there is objection/disagreement, I'd be willing to open this up for contribution.
I also vote to make it behave as if it replaces the cell before checking validity. Or something along those lines. I have opened this up for contributions.


Question: function* validateUsernameSaga({ payload }) { try { <del> yield delay(500); </del> const { exists } = yield call(getUsernameExists, payload); yield put(validateUsernameComplete(exists)); } catch (e) {

On the settings page, you can change your username. Any time you stop typing, it reads from the database to see if the username is available - we could change it so that it only makes a query when the user is ready. So instead of when they stop typing, we just let them choose the name they want, then when they click save we check if it's available. Not sure how big of a deal this is, I'm guessing users don't change their username often. Every little bit helps?
I've always wondered about this one. Definitely agree that we shouldn't hit the DB until the camper tries to submit.
I think we can go with the current implementation but wait for a meaningful pause to make sure the user is intending to submit the new username for validity check.


Question: # --description-- <del> Changing the `bottom-margin` to `5px` looks great. However, now the space between the `Cinnamon Roll` menu item and the second `hr` element does not match the space between the top `hr` element and the `Coffee` heading. </del> <ins> Changing the `margin-bottom` to `5px` looks great. However, now the space between the `Cinnamon Roll` menu item and the second `hr` element does not match the space between the top `hr` element and the `Coffee` heading. </ins> Add some more space by creating a class named `bottom-line` using `25px` for the `margin-top` property.

<!-- NOTE: If you're reporting a security issue, don't create a GitHub issue. Instead, email We will look into it immediately. -- In the instructions, is an invalid css property. It should be . Alternatively, we could remove the code quotes and replace it with bottom margin. ! <!-- Please complete the following information. --- Device: Laptop OS: Windows 10 Browser: firefox Version: 98.0.1 (64-bit) <!-- Add any other context about the problem here. --
Thank you, for taking the time to open this. For simplicity, let us go with "". I have opened this up to first-timers only. 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
I would like to contribute Apologies for the redundant question here


Question: ], "tests": [ "assert($("body").css("background-color") === "rgb(0, 0, 0)", 'Your body element should have a black background.')",  "assert(editor.match(/rgbs*(s*0s*,s*0s*,s*0s*)/ig), 'Use rgb to give your body element the background-color of black. For example body { color: rgb(0, 0, 0); }.')"   "assert(editor.match(/rgbs*(s*0s*,s*0s*,s*0s*)/ig), 'Use rgb to give your body element the background-color of black. For example body { background-color: rgb(0, 0, 0); }.')"  ], "challengeSeed": [ "

Challenge has an issue. User Agent is: <codeMozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.71 Safari/537.36</code. Please describe how to reproduce this issue, and include links to screenshots if possible. Text for objective two says "Use rgb to give your body element the background-color of black. For example body { color: rgb(0, 0, 0); }." There should be "background-" in front of the "color" in the example.
Fixed with


Question:
## Instructions
  Change the while loop in the code to a do...while loop so that the loop will push the number 10 to myArray, and i will be equal to 11 when your code finishes running.   Change the while loop in the code to a do...while loop so that the loop will only push the number 10 to myArray, and i will be equal to 11 when your code finishes running.
 ## Tests

<!-- 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: The description of the problem and the solution that passes are not the same. The code that passes this section would give you the wrong answer to the instructions. write the proper code for the instructions and it will not pass. try it. Add a Link to the page with the problem: Tell us about your browser and operating system: Browser Name: CHROME Browser Version: Version 71.0.3578.98 Operating System: OSX If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):
Can you be more specific? For example, what code passes the challenge which you think goes against the instructions?
I just came up with this solution based on the instructions and passed the test cases. ! After thinking about it more I can see how the instructions might be misleading. The following code pushes the number 10 to myArray, and i will be equal to 11 when the code finishes running, but the array equals [5, 6, 7, 8, 9, 10]. It might be less confusing if the instructions said "Change the loop in the code to a loop so that the loop will push only the number 10 to , and will be equal to when your code finishes running. !
the first pic is the way i tried it first and it wouldn't pass. i got it to pass changing the while: } while (i < 5); that should not have passed. i also had a few connection issues with that one. like i clicked on run test and the page would lockup. i would close my browser, reopen it, go to your page, click on curriculum, and it gave me a 404 error message a few times. Have a great day! Jeremiah Kalb
The code should definitely pass the tests, because you just need the loop to iterate one time. So, the while loop condition should evaluate to in the first iteration (which it does with that code). If you start with the original seeded code, is and not , so it is not going to add other numbers anyway.


Question:
## Instructions
  Change the while loop in the code to a do...while loop so that the loop will push the number 10 to myArray, and i will be equal to 11 when your code finishes running.   Change the while loop in the code to a do...while loop so that the loop will only push the number 10 to myArray, and i will be equal to 11 when your code finishes running.
 ## Tests

That being said, the wording change you suggest might not be a bad idea. Would you be interested in creating a PR for this change you suggest?
I would love to do that.
How's your PR coming along?
I'm pretty sure I finished with it. Is there anything else I need to do with it? The correct PR is
this how i got mine to pass // Setup const myArray = []; let i = 10; // Only change code below this line do { (i); i++; } while (1 < 0);


Question: import security from './plugins/security'; import sessionAuth from './plugins/session-auth'; import { settingRoutes } from './routes/settings'; <ins> import { deprecatedEndpoints } from './routes/deprecated-endpoints'; </ins> import { auth0Routes, devLoginCallback } from './routes/auth'; import { testMiddleware } from './middleware'; import prismaPlugin from './db/prisma';


Question: "We can use if statements in JavaScript to only execute code if a certain condition is met.", "if statements require some sort of boolean condition to evaluate.", "Example:",  " if (1 == 2) {",   " if (1 === 2) {",  "  return(true);", "}", "else {",

Challenge has an issue. Please describe how to reproduce it, and include links to screenshots if possible. Example: if (1 == 2) { //should be === return(true); } else { return(false); } Let's use if and else statements to make a coin-flip game. Create an if-else statement to return heads if the flip var is zero and to return tails if it's not.