jiebi/CodeConvo huggingface dataset:
Change:
Given a positive integer `num`, return the sum of all odd Fibonacci numbers that are less than or equal to `num`. <del> The first two numbers in the Fibonacci sequence are 1 and 1. Every additional number in the sequence is the sum of the two previous numbers. The first six numbers of the Fibonacci sequence are 1, 1, 2, 3, 5 and 8. </del> <ins> The first two numbers in the Fibonacci sequence are 0 and 1. Every additional number in the sequence is the sum of the two previous numbers. The first seven numbers of the Fibonacci sequence are 0, 1, 1, 2, 3, 5 and 8. </ins> For example, `sumFibs(10)` should return `10` because all odd Fibonacci numbers less than or equal to `10` are 1, 1, 3, and 5.

Discussion:
This should be a relatively easy fix for a first-time contributor :) This challenge says the first two numbers are 1 and 1 when in fact the first two numbers are 0 and 1. The first few numbers are: 0, 1, 1, 2, 3, 5 and 8 So when you update the text to also check the tests and make sure this doesn't change any of the expected test outcomes. The text should correctly state the first numbers as 0, 1, 1, 2, 3, 5 and 8 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
An issue with the label is open for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors. If you would like to contribute, and have not read the contributors docs, please do so here: If you have any issues with contributing, be sure to join us on the , or on the The affected file can be found here:
Hello! I'm a rookie software developer and I'm looking for a "good first issue" to start contributing to open-source projects. So could I be assigned to fix this issue please?
Change:
<div id='js-seed'> ```js <del> function tokenize(str, esc, sep) { </del> <ins> function tokenize(str, sep, esc) { </ins> return true; } ```

Discussion:
Describe your problem and how to reproduce it: and parameters are swapped in the starting code. As description and tests suggests second parameter should be separator character and third one escape character. Add a Link to the page with the problem:
Thank you, for pointing this out. Not a major issue, but makes sense to change. I am opening this up for first-timers
Change:
# --instructions-- <del> Add `mongodb` and `mongoose` to the project’s `package.json`. Then, require mongoose as `mongoose` in `myApp.js`. Create a `.env` file and add a `MONGO_URI` variable to it. Its value should be your MongoDB Atlas database URI. Be sure to surround the URI with single or double quotes, and remember that you can't use spaces around the `=` in environment variables. For example, `MONGO_URI='VALUE'`. When you are done, connect to the database using the following syntax: </del> <ins> Add `mongodb@~3.6.0` and `mongoose@~5.4.0` to the project’s `package.json`. Then, require mongoose as `mongoose` in `myApp.js`. Create a `.env` file and add a `MONGO_URI` variable to it. Its value should be your MongoDB Atlas database URI. Be sure to surround the URI with single or double quotes, and remember that you can't use spaces around the `=` in environment variables. For example, `MONGO_URI='VALUE'`. When you are done, connect to the database using the following syntax: </ins> ```js mongoose.connect(<Your URI>, { useNewUrlParser: true, useUnifiedTopology: true });

Discussion:
The lesson at doesn't work with mongoose 6+ because now it just returns the , which causes the code from , lines through , to fail. Mongoose 6.0.1 ! Mongoose 5.4.13: ! This would fix it:
Now that I think of it, why does the boilerplate need to be backwards compatible with older versions of mongoose? I mean, the student would install the latest version always, right?
Thanks, for brining this up. We have discussed versioning in the lessons. I think we just missed this one. Solution Require Campers to install specific versions of and in the first lesson: Typically, we have gone with allowing only patch versions. So, the sentence should be something along the lines of: Does this sound about right?
I see! That sentence seems right to me and definitely would solve the problem without modifying the boilerplate
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'll create the PR
note that you are not a first timer contributor
I would like to create a PR for this as I am a first time contributor and I reported this issue on the FCC forum. It will be a few hours until I can submit. I understand these are not assigned so if it's still open when I'm home, I'll gladly take it as my first contribution.
That's right! I didn't read the first timers only
Change:
text-shadow: none !important; } <ins> /* remove horizontal scrollbars for text-only code */ code[class='language-markup'] { white-space: normal !important; } </ins> /* a11y color adjustments */ :not(.dark-palette) .token.comment, :not(.dark-palette) .token.prolog,

Discussion:
Some steps are placing unnecessary horizontal scrollbars on plain text content. The content is being treated as a code example and thus is not line wrapping normally. Also, the content is coded as one continuous line with no newlines, thus causing a very long horizontal scroll and making it more difficult to copy. There are exceptions for having horizontal scrollbars in WCAG, but those exceptions are for content "which require two-dimensional layout for usage or meaning" (). Actual code examples can fall under this exception, but I think it would be much harder to argue that pure text content like this "requires" that it not line wrap normally in order to be understood. There are several instances of this in the CSS Magazine course: Steps 11, 12, 13, 15, 16, 17. These are the ones I know of. N/A Present this non-code content on the page in a way that it is allowed to line wrap normally. I am able to do this by removing from the element. I'm noticing we are using to code this in the challenge files: markup Soon the freeCodeCamp curriculum will be 100% project-driven learning... This causes the element to have the class . If we are only using for these types of non-code examples then perhaps we can use that class to remove the property. No response N/A No response
Hello can I work on this issue
Change:
You should see the list of projects you have been granted access to. Select the project that you would like to proofread, then select the language. <del> ![Image - Proofreading File Tree](./images/crowdin/proof-file-tree.png) </del> <ins> ![Image - Proofreading File Tree](https://contribute.freecodecamp.org/images/crowdin/proof-file-tree.png) </ins> You should now see the list of available files. Choose your file by selecting the `Proofread` button on the right of that file, then choosing `Proofreading` from the drop-down menu that appears.

Discussion:
! Our local images currently do not render in the translated documentation views. This is due to the use of a relative link, which breaks with the new path generated for i18n pages. A couple of potential fixes: Use an absolute link (<filename). This, IMHO, is the most effective. Have translators fix the link in the translation flow. Host the images through our CDN and fetch them.
We should use the absolute path.
Sounds good. I'll get a PR up shortly.
Change:
"dashedName": "waypoint-multiply-two-numbers-with-javascript", "difficulty": "9.98143", "description": [ <del> "In JavaScript whole numbers (called integers) can be easily used to preform mathematical functions", "Let's try a few of the most commonly used ones now", "We use <code>*</code>for multiplication", </del> <ins> "In JavaScript whole numbers (called integers) can be easily used to perform mathematical functions.", "Let's try a few of the most commonly used ones now.", "We use <code>*</code>for multiplication.", </ins> "Replace the <code>0</code>with correct number to achieve the result in the comment." ], "tests": [

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

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

Challenge has an issue. in JavaScript we can can work with decimal numbers <--- needs full stop.
merged to
Change:
[SuperBlocks.FrontEndDevelopment]: ResponsiveDesign, [SuperBlocks.UpcomingPython]: PythonIcon, [SuperBlocks.A2English]: A2EnglishIcon, <del> [SuperBlocks.B1English]: A2EnglishIcon, </del> <ins> [SuperBlocks.B1English]: B1EnglishIcon, </ins> [SuperBlocks.RosettaCode]: RosettaCodeIcon, [SuperBlocks.PythonForEverybody]: PythonIcon };

Discussion:
The B1 English icon isn't available, so we are temporarily using the A2 icon for this superblock. <img width="709" alt="Screenshot 2024-09-11 at 05 43 53" src=""An icon for B1 should be created (it should look similar to the A2). Link to the A2 icon: You will need to make the following change to your file in order to see the B1 superblock:
Change:
assert.exists(document.querySelector("div.fb1 > div.fb1a")); ``` <del> You should give the second new `div` a class of `fbab`. </del> <ins> You should give the second new `div` a class of `fb1b`. </ins> ```js assert.exists(document.querySelector("div.fb1 > div.fb1b"));

Discussion:
there is a typo in cramers-rule challenge, is used instead of which is wrong this sentence should be changed to Here is the markdown file Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first. Happy contributing.
Hi, May I work on this issue ?
of course, feel free to open pull request, after you have read the guide line
Change:
<fieldset> <label for="personal-account"><input id="personal-account" type="radio" name="account-type" /> Personal Account</label> <label for="business-account"><input id="business-account" type="radio" name="account-type" /> Business Account</label> <del> <label for="terms-and-conditions"><input id="terms-and-conditions" required /> I accept the terms and conditions</label> </del> <ins> <label for="terms-and-conditions"><input id="terms-and-conditions" type="checkbox" required /> I accept the terms and conditions</label> </ins> </fieldset> --fcc-editable-region-- <fieldset></fieldset>

Discussion:
In step 29 of the Learn HTML Forms by Building a Registration Form challenge, there seems to be incorrect seed code. The checkbox for accepting terms and conditions is missing a , so when the step first opens it displays a plain text input instead of a checkbox. N/A A checkbox should be rendered instead of a text input. ! Device: Laptop OS: Ubuntu 20.04 Browser: Firefox (104), Chrome (105) No response
Whoops! Yeah, that should be fixed. 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: Please make sure you read our , we prioritize contributors following the instructions in our guides. Join us in our or our if you need help contributing; our moderators will guide you through this. Sometimes we may get more than one pull request. We typically accept the most quality contribution followed by the one that is made first. Happy contributing.
Sounds good! I'll submit a PR to fix it!
Change:
Your arrow function callback should check if `item.id === currentTask.id`. ```js <del> assert.match(code, /consts+dataArrIndexs*=s*taskData.findIndex(s*((s*items*)|item)s*=>s*item.ids*===s*currentTask.ids*)s*;?/) </del> <ins> assert.match(code, /consts+dataArrIndexs*=s*taskData.findIndex(s*((s*items*)|item)s*=>s*(?:item.ids*===s*currentTask.id|currentTask.ids*===s*item.id)s*)s*;?/) </ins> ``` # --seed--

Discussion:
I encountered an issue while completing a task (Step 11) on freeCodeCamp. The test involves using the method to determine whether a task already exists in an array and then either updating it or adding a new task. The problem appears to be related to the comparison order in the arrow function passed to . When I change the comparison order, the code works without any issues: ! ! and No response Device: [e.g. iPhone 6, Laptop] OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04] Browser: [e.g. Chrome, Safari] Version: [e.g. 22] No response
You didn't mention the error caused.
Change:
</TabPane> <TabPane eventKey={Tab.Console} <del> title={i18next.t('learn.editor-tabs.tests')} </del> <ins> title={i18next.t('learn.editor-tabs.console')} </ins> {...editorTabPaneProps} > {testOutput}

Discussion:
In the certification project pages, the tab on the left is "Instructions". However, if you resize the browser and the page switches to the mobile layout, the tab name changes to "Info". The "Console" on the desktop layout changes to "Tests" too. and other certification projects with built in editor to the browser Use the same name for the same content. ! ! Device: Laptop OS: Windows 10 Browser: Chrome Version: 108.0.5359.125 No response_
Technically, I don't think this is a WCAG failure. does address consistent identification of functional components. In this scenario, in wide view they are HTML buttons but in narrow view they are tabs, so technically they are not the same component and thus don't fall under 3.2.4. But for usability I would tend to agree that it would be best if they could use the same terminology since they basically do the same thing.
We can use "Console" for both mobile and desktop. Do we use "info" for the desktop layout and call it ?
I agree with using "Console" for both. For the panel showing user stories I would prefer using "Instructions" since the word "Info" seems too vague.
To solve this issue: use "Console" and "Instructions" for both layout. If you would like to fix this issue, please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this.
We might want to keep in mind that is much longer than . We do not have much real-estate on mobile.
Here are words that I can think of are "details", "step", "story", "task", "manual", "guide", and "briefing". Is any of them good enough, or do we change the console for now and come back for "instructions" later?
My initial thought is: keep everything consistent, and just use the current mobile-naming for desktop as well. However, I am not entirely happy with the word for what it denotes. might be one option, but I also like your suggestion of .
I find or interesting . I vote for too, if no one else has issue with it, we can go with it, otherwise we go with .

I think is a term in agile development so I'm not sure if we can call it just . I would vote for or if is too long. However, my main concern was that the word changes as the user resizes the window. So, I'm okay with either of them as long as we use the same word for both layouts.
We decided to go with the desktop terms for both, "Instructions" and "Console". The file that needs to be changed is We are going to make another issue about improving the mobile UX to potentially use icons or another solution.
I think that should remain for responsive design issues on cell phones and since it is the appropriate term when the student goes to vsCode or another IDE
Change:
**Examples** <del> `3 == '3'` returns `true` because JavaScript performs type conversion from string to number. `3 === '3'` returns false because the types are different and type conversion is not performed. </del> <ins> `3 == '3'` returns `true` because JavaScript performs type conversion from string to number. `3 === '3'` returns `false` because the types are different and type conversion is not performed. </ins> **Note:** In JavaScript, you can determine the type of a variable or a value with the `typeof` operator, as follows:

Discussion:
In this line, there is a missing code block around word false It should be like this here is the file: If you would like to fix this issue, please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Happy contribution.
I opened pull request
Change:
# --description-- <del> Below your last `p` element, add another `p` element with the text `Total Carbohydrate 37g 13%`. Like before, use `span` elements to make the text `Total Carbohydrate` and `13%` bold. Also add an additional `span` element to wrap the `Total Carbohydrate 37g` text in a span element to have it aligned to the left, and `13%` to the right. </del> <ins> Below your last `p` element, add another `p` element with the text `Total Carbohydrate 37g 13%`. Like before, use `span` elements to make the text `Total Carbohydrate` and `13%` bold. Also add an additional `span` element around the `Total Carbohydrate 37g` text to have it aligned to the left and `13%` to the right. </ins> # --hints--

Discussion:
The instructions do not state clearly where the new element should be . I believe they are relying on the fact that the previous two steps a element to the end of the div and thus they assume the user will continue this trend in step 55. But I just ran into a forum post that the element after the div, so I'm not sure that's a safe assumption. Step 54 tells the user to add the element "Below your last element" and I think we should do the same thing here. N/A Change the beginning of the instructions to read: "Below your last element, add another element with the text..." 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
Quick question, do you think we have a typo in the instruction as well?
Yes, you're correct. The phrase "so to have it aligned to the left" can be revised to "to have it aligned to the left" for a better concise expression.
When will be waiting for triage label removed
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: A pull request which resolves this issue should: Please make sure you read our , we prioritize contributors following the instructions in our guides. Join us in our or our if you need help contributing; our moderators will guide you through this. Sometimes we may get more than one pull request. We typically accept the most quality contribution followed by the one that is made first. Happy contributing.
Hi, do you think the sentence could be made more effective by removing the redundant phrase 'span element' that occurs twice in the same line?
I agree that the "in a span element" part is redundant and should be removed, but I'm not sure about the extra comma there as it makes the sentence disjointed. We might want to just ditch the commas altogether:
Agreed. Two commas seem to break the sentence unnecessarily. I already raised a PR () suggesting the removal of the redundant part, which was not merged. Should I push changes in the same PR, or create a new one?
Change:
assert.equal(heads?.length, 1); ``` <del> You should have a one a self-closing `link` element. </del> <ins> You should have one self-closing `link` element. </ins> ```js assert(document.querySelectorAll('link').length === 1);

Discussion:
as ieahleen mentioned in Crowdin, there are multiple files with typos in them. they say These hints should be changed to because they are testing if there is a single self-closing Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in or if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first. Happy contributing.
Change:
element.classList.toggle("class-to-toggle"); ``` <del> Add an event listener to the `openTaskFormBtn` element and pass in a `click` event for the first argument and an empty callback function for the second argument. </del> <ins> Add an event listener to the `openTaskFormBtn` element and pass in a `"click"` event for the first argument and an anonymous callback function for the second argument. </ins> <del> For the callback function, use the `classList.toggle()` method to toggle the `hidden` class on the `taskForm` element. </del> <ins> Inside the callback function, use the `classList.toggle()` method to toggle the `"hidden"` class on the `taskForm` element. </ins> Now you can `click` on the "Add new Task" button and see the form modal.

Discussion:
In step 6 of the Todo app (js beta) the following sentence needs a slight correction: The part where it says "an empty callback function for the second argument" is the issue. It needs to say "a callback function..." (minus the word empty). This is because the word empty implies this: but actually the very next instruction tells us to add some code in the function after-all. Note that step 7 has a very similar set of instructions but doesn't make the mistake of saying "an empty callback function" in its instructions. (please compare 6 to 7 for this slight difference in the wording) N/A N/A N/A N/A No response
Maybe instead:
This looks like something that can be fixed by "first time" code contributors to this repository. Here is the file that you should be looking at to work on a fix: Change: To: Please make sure you read , we prioritize contributors following the instructions in our guides. Join us in our chat room or the forum if you need help contributing, our moderators will guide you through this. Sometimes we may get more than one pull-requests. We typically accept the most quality contribution followed by the one that is made first. Happy contributing.
Hi, I can fix this issue
It is open to all first timers, you do not need to get permission.
Ok, thank for letting me know