diff --git a/docs/devops.md b/docs/devops.md index a47e8fc28cd..76441999933 100644 --- a/docs/devops.md +++ b/docs/devops.md @@ -318,19 +318,19 @@ ensure that the virtual machine is patched with the latest security fixes. Update package information -```console +```bash sudo apt update ``` Upgrade installed packages -```console +```bash sudo apt upgrade -y ``` Cleanup unused packages -```console +```bash sudo apt autoremove -y ``` @@ -350,7 +350,7 @@ Provisioning VMs with the Code 1. Install NGINX and configure from repository. - ```console + ```bash sudo su cd /var/www/html @@ -372,7 +372,7 @@ Provisioning VMs with the Code Move over existing certificates: - ```console + ```bash # Local scp -r username@source-server-public-ip:/etc/nginx/ssl ./ scp -pr ./ssl username@target-server-public-ip:/tmp/ @@ -384,7 +384,7 @@ Provisioning VMs with the Code Update Upstream Configurations: - ```console + ```bash vi configs/upstreams.conf ``` @@ -403,7 +403,7 @@ Provisioning VMs with the Code 1. Check status for NGINX service using the below command: - ```console + ```bash sudo systemctl status nginx ``` @@ -418,13 +418,13 @@ deployed on each instance like so: 1. SSH into the instance and enter sudo -```console +```bash sudo su ``` 2. Get the latest config code. -```console +```bash cd /etc/nginx git fetch --all --prune git reset --hard origin/main @@ -433,7 +433,7 @@ git reset --hard origin/main 3. Test and reload the config [with Signals](https://docs.nginx.com/nginx/admin-guide/basic-functionality/runtime-control/#controlling-nginx). -```console +```bash nginx -t nginx -s reload ``` @@ -442,7 +442,7 @@ nginx -s reload 1. Install build tools for node binaries (`node-gyp`) etc. -```console +```bash sudo apt install build-essential ``` @@ -454,19 +454,19 @@ Provisioning VMs with the Code 2. Install pnpm globally. -```console +```bash npm install -g pnpm ``` 3. Install pm2 globally. -```console +```bash npm install -g pm2 ``` 4. Clone freeCodeCamp, set up env, and keys. -```console +```bash git clone https://github.com/freeCodeCamp/freeCodeCamp.git cd freeCodeCamp git checkout prod-current # or any other branch to be deployed @@ -476,36 +476,36 @@ git checkout prod-current # or any other branch to be deployed 6. Install dependencies -```console +```bash pnpm install ``` 7. Setup pm2 `logrotate` and startup on boot -```console +```bash pm2 install pm2-logrotate pm2 startup ``` 8. Build the server -```console +```bash pnpm prebuild && pnpm build:curriculum && pnpm build:server ``` 9. Start Instances -```console +```bash pnpm start:server ``` ### Logging and Monitoring -```console +```bash pm2 logs ``` -```console +```bash pm2 monit ``` @@ -522,31 +522,31 @@ dependencies or adding environment variables. 1. Stop all instances -```console +```bash pm2 stop all ``` 2. Install dependencies -```console +```bash pnpm install ``` 3. Build the server -```console +```bash pnpm prebuild && pnpm build:curriculum && pnpm build:server ``` 4. Start Instances -```console +```bash pnpm start:server && pm2 logs ``` #### 2. Rolling updates - Used for logical changes to code. -```console +```bash pnpm reload:server && pm2 logs ``` @@ -559,7 +559,7 @@ pnpm reload:server && pm2 logs 2. Update pm2 to use the new version -```console +```bash pm2 update ``` @@ -567,7 +567,7 @@ pm2 update 1. Install build tools for node binaries (`node-gyp`) etc. -```console +```bash sudo apt install build-essential ``` @@ -579,7 +579,7 @@ Provisioning VMs with the Code 2. Update `npm` and install PM2 and setup `logrotate` and startup on boot - ```console + ```bash npm i -g npm@8 npm i -g pm2@4 npm install -g serve@13 @@ -589,7 +589,7 @@ Provisioning VMs with the Code 3. Clone client config, setup env and keys. - ```console + ```bash git clone https://github.com/freeCodeCamp/client-config.git client cd client ``` @@ -599,7 +599,7 @@ Provisioning VMs with the Code > Todo: This setup needs to move to S3 or Azure Blob storage - ```console + ```bash echo "serve -c ../serve.json -p 50505 www" > client-start-primary.sh chmod +x client-start-primary.sh pm2 delete client-primary @@ -612,11 +612,11 @@ Provisioning VMs with the Code ### Logging and Monitoring -```console +```bash pm2 logs ``` -```console +```bash pm2 monit ``` @@ -633,7 +633,7 @@ dependencies or adding environment variables. 1. Stop all instances - ```console + ```bash pm2 stop all ``` @@ -641,13 +641,13 @@ dependencies or adding environment variables. 3. Start Instances - ```console + ```bash pm2 start all --update-env && pm2 logs ``` #### 2. Rolling updates - Used for logical changes to code. -```console +```bash pm2 reload all --update-env && pm2 logs ``` @@ -668,7 +668,7 @@ Provisioning VMs with the Code 1. Install NGINX and configure from repository. - ```console + ```bash sudo su cd /var/www/html @@ -690,7 +690,7 @@ Provisioning VMs with the Code Move over existing certificates: - ```console + ```bash # Local scp -r username@source-server-public-ip:/etc/nginx/ssl ./ scp -pr ./ssl username@target-server-public-ip:/tmp/ @@ -702,7 +702,7 @@ Provisioning VMs with the Code Update Upstream Configurations: - ```console + ```bash vi configs/upstreams.conf ``` @@ -721,7 +721,7 @@ Provisioning VMs with the Code 1. Install Docker and configure from the repository - ```console + ```bash git clone https://github.com/freeCodeCamp/chat-config.git chat cd chat ``` @@ -730,7 +730,7 @@ Provisioning VMs with the Code 3. Run rocket-chat server - ```console + ```bash docker-compose config docker-compose up -d ``` @@ -739,13 +739,13 @@ Provisioning VMs with the Code 1. Check status for NGINX service using the below command: - ```console + ```bash sudo systemctl status nginx ``` 2. Check status for running docker instances with: - ```console + ```bash docker ps ``` @@ -758,13 +758,13 @@ deployed on each instance like so: 1. SSH into the instance and enter sudo - ```console + ```bash sudo su ``` 2. Get the latest config code. - ```console + ```bash cd /etc/nginx git fetch --all --prune git reset --hard origin/main @@ -773,7 +773,7 @@ deployed on each instance like so: 3. Test and reload the config [with Signals](https://docs.nginx.com/nginx/admin-guide/basic-functionality/runtime-control/#controlling-nginx). - ```console + ```bash nginx -t nginx -s reload ``` @@ -782,44 +782,44 @@ deployed on each instance like so: 1. SSH into the instance and navigate to the chat config path - ```console + ```bash cd ~/chat ``` 2. Get the latest config code. - ```console + ```bash git fetch --all --prune git reset --hard origin/main ``` 3. Pull down the latest docker image for Rocket.Chat - ```console + ```bash docker-compose pull ``` 4. Update the running instances - ```console + ```bash docker-compose up -d ``` 5. Validate the instances are up - ```console + ```bash docker ps ``` 6. Cleanup extraneous resources - ```console + ```bash docker system prune --volumes ``` Output: - ```console + ```bash WARNING! This will remove: - all stopped containers - all networks not used by at least one container @@ -838,7 +838,7 @@ deployed on each instance like so: ssh into the VM (hosted on Digital Ocean). -```console +```bash cd tools git pull origin master pnpm install @@ -850,7 +850,7 @@ pm2 restart contribute-app List currently installed node & npm versions -```console +```bash nvm -v node -v npm -v @@ -860,25 +860,25 @@ nvm ls Install the latest Node.js LTS, and reinstall any global packages -```console +```bash nvm install --lts --reinstall-packages-from=default ``` Verify installed packages -```console +```bash npm ls -g --depth=0 ``` Alias the `default` Node.js version to the current LTS (pinned to the latest major version) -```console +```bash nvm alias default 16 ``` (Optional) Uninstall old versions -```console +```bash nvm uninstall ``` @@ -889,31 +889,31 @@ nvm uninstall Get the uninstall instructions/commands with the `unstartup` command and use the output to remove the systemctl services -```console +```bash pm2 unstartup ``` Get the install instructions/commands with the `startup` command and use the output to add the systemctl services -```console +```bash pm2 startup ``` Quick commands for PM2 to list, resurrect saved processes, etc. -```console +```bash pm2 ls ``` -```console +```bash pm2 resurrect ``` -```console +```bash pm2 save ``` -```console +```bash pm2 logs ``` @@ -936,32 +936,32 @@ Currently updating agents requires them to be removed and reconfigured. This is 1. Navigate and check status of the service - ```console + ```bash cd ~/azagent sudo ./svc.sh status ``` 2. Stop the service - ```console + ```bash sudo ./svc.sh stop ``` 3. Uninstall the service - ```console + ```bash sudo ./svc.sh uninstall ``` 4. Remove the agent from the pipeline pool - ```console + ```bash ./config.sh remove ``` 5. Remove the config files - ```console + ```bash cd ~ rm -rf ~/azagent ``` @@ -976,7 +976,7 @@ We use [a CLI tool](https://github.com/freecodecamp/sendgrid-email-blast) to sen 2. Set up the script to fetch the email list. - ```console + ```bash cd /home/freecodecamp/scripts/emails cp sample.env .env ``` @@ -985,7 +985,7 @@ We use [a CLI tool](https://github.com/freecodecamp/sendgrid-email-blast) to sen 3. Run the script. - ```console + ```bash node get-emails.js emails.csv ``` diff --git a/docs/how-to-add-cypress-tests.md b/docs/how-to-add-cypress-tests.md index ac5bf85e5a9..b3b4aafd505 100644 --- a/docs/how-to-add-cypress-tests.md +++ b/docs/how-to-add-cypress-tests.md @@ -27,25 +27,25 @@ To run tests against production builds, replace `dev` with `prd` below. - To run all tests in the `./cypress` directory: - ```console + ```bash pnpm run cypress:dev:run ``` - To run a single test: - ```console + ```bash pnpm run cypress run --spec=cypress/ ``` For example: - ```console + ```bash pnpm run cypress run --spec=cypress/e2e/default/landing.ts ``` - To create a development build, start the development server, and run all existing cypress end-to-end tests: - ```console + ```bash pnpm run e2e:dev:run ``` @@ -58,25 +58,25 @@ If starting the Gitpod environment did not automatically develop the environment - Follow the [MongoDB installation guide](https://www.mongodb.com/basics/get-started). - Create a config file. -```console +```bash pnpm run create:shared ``` - Seed the database -```console +```bash pnpm run seed ``` - Develop the server and client -```console +```bash pnpm run develop ``` ### 2. Install Cypress Build Tools -```console +```bash pnpm run cypress:install-build-tools ``` diff --git a/docs/how-to-add-playwright-tests.md b/docs/how-to-add-playwright-tests.md index afe98655337..846136cd879 100644 --- a/docs/how-to-add-playwright-tests.md +++ b/docs/how-to-add-playwright-tests.md @@ -4,7 +4,7 @@ To install Playwright run: -```console +```bash pnpm run playwright:install-build-tools ``` @@ -181,49 +181,49 @@ To run tests with Playwright check the following below - Make sure you navigate to the e2e repo first - ```console + ```bash cd e2e ``` - To run tests in UI helper mode: - ```console + ```bash npx playwright test --ui ``` - To run a single test: - ```console + ```bash npx playwright test ``` For example: - ```console + ```bash npx playwright test landing-page.spec.ts ``` - Run a set of test files in respective folders: - ```console + ```bash npx playwright test ``` For example: - ```console + ```bash npx playwright test tests/todo-page/ tests/landing-page/ ``` - Run the test with the title: - ```console + ```bash npx playwright test -g ``` For example: - ```console + ```bash npx playwright test -g "add a todo item" ``` @@ -233,13 +233,13 @@ Since Playwright runs in Node.js, you can debug it with your debugger of choice - Debugging all tests: - ```console + ```bash npx playwright test --debug ``` - Debugging one test file: - ```console + ```bash npx playwright test example.spec.ts --debug ``` @@ -247,7 +247,7 @@ Since Playwright runs in Node.js, you can debug it with your debugger of choice The HTML Reporter shows you a full report of your tests allowing you to filter the report by browsers, passed tests, failed tests, skipped tests and flaky tests. -```console +```bash npx playwright show-report ``` @@ -257,13 +257,13 @@ Playwright is generally a solid bullet-proof tool. The contributor has already c - (MacOs and Linux) If running Playwright results in an error due to kernel dependencies, run the following command: - ```console + ```bash pnpm run playwright:install-build-tools-linux ``` - A common error seen in playwright is as follows: - ```console + ```bash Error: page.goto: Could not connect: Connection refused =========================== logs =========================== navigating to "https://127.0.0.1:8000/", waiting until "load" @@ -284,7 +284,7 @@ Playwright is generally a solid bullet-proof tool. The contributor has already c - Another common error seen in playwright is as follows: - ```console + ```bash Protocol error (Network.getResponseBody): Request content was evicted from inspector cache ``` @@ -305,25 +305,25 @@ If starting the Gitpod environment did not automatically develop the environment - Create the .env - ```console + ```bash cp sample.env .env ``` - Create a config file. - ```console + ```bash pnpm run create:shared ``` - Seed the database - ```console + ```bash pnpm run seed ``` - Develop the server and client - ```console + ```bash pnpm run develop ``` @@ -331,7 +331,7 @@ If starting the Gitpod environment did not automatically develop the environment To install necessary dependencies for running Playwright run the following command: -```console +```bash pnpm run playwright:install-build-tools ``` @@ -339,6 +339,6 @@ pnpm run playwright:install-build-tools To run all Playwright tests, run the following command: -```console +```bash npx playwright test ``` diff --git a/docs/how-to-contribute-to-the-codebase.md b/docs/how-to-contribute-to-the-codebase.md index 0f7647a9a7a..f00e0988535 100644 --- a/docs/how-to-contribute-to-the-codebase.md +++ b/docs/how-to-contribute-to-the-codebase.md @@ -10,13 +10,13 @@ Follow these steps: 1. Validate that you are on the `main` branch: - ```console + ```bash git status ``` You should get an output like this: - ```console + ```bash On branch main Your branch is up-to-date with 'origin/main'. @@ -25,7 +25,7 @@ Follow these steps: If you got a different message, then you aren't on main or your working directory isn't clean, resolve any outstanding files/commits and checkout `main`: - ```console + ```bash git checkout main ``` @@ -40,25 +40,25 @@ Follow these steps: Update your copy of the freeCodeCamp upstream repository: - ```console + ```bash git fetch upstream ``` Hard reset your main branch with the freeCodeCamp main: - ```console + ```bash git reset --hard upstream/main ``` Push your main branch to your origin to have a clean history on your fork on GitHub: - ```console + ```bash git push origin main --force ``` You can validate that your current main matches the upstream/main by performing a diff: - ```console + ```bash git diff upstream/main ``` @@ -70,7 +70,7 @@ Follow these steps: Check that you are on `main` as explained previously, and branch off from there: - ```console + ```bash git checkout -b fix/update-guide-for-xyz ``` @@ -94,13 +94,13 @@ Follow these steps: 7. Check and confirm the files you are updating: - ```console + ```bash git status ``` This should show a list of `unstaged` files that you have edited. - ```console + ```bash On branch feat/documentation Your branch is up to date with 'upstream/feat/documentation'. @@ -119,25 +119,25 @@ Follow these steps: In this step, you should only mark files that you have edited or added yourself. You can perform a reset and resolve files that you did not intend to change if needed. - ```console + ```bash git add path/to/my/changed/file.ext ``` Or you can add all the `unstaged` files to the staging area: - ```console + ```bash git add . ``` Only the files that were moved to the staging area will be added when you make a commit. - ```console + ```bash git status ``` Output: - ```console + ```bash On branch feat/documentation Your branch is up to date with 'upstream/feat/documentation'. @@ -152,7 +152,7 @@ Follow these steps: Now, you can commit your changes with a short message like so: - ```console + ```bash git commit -m "fix: my short commit message" ``` @@ -182,7 +182,7 @@ Follow these steps: 9. If you realize that you need to edit a file or update the commit message after making a commit you can do so after editing the files with: - ```console + ```bash git commit --amend ``` @@ -190,7 +190,7 @@ Follow these steps: 10. Next, you can push your changes to your fork: - ```console + ```bash git push origin branch/name-here ``` diff --git a/docs/how-to-open-a-pull-request.md b/docs/how-to-open-a-pull-request.md index 5a745feaff1..6fa1be617d2 100644 --- a/docs/how-to-open-a-pull-request.md +++ b/docs/how-to-open-a-pull-request.md @@ -118,14 +118,14 @@ When you are working on regular bugs and features on our development branch `mai 1. Rebase your local copy: - ```console + ```bash git checkout <pr-branch> git pull --rebase upstream main ``` 2. Resolve any conflicts and add / edit commits - ```console + ```bash # Either git add . git commit -m "chore: resolve conflicts" @@ -137,7 +137,7 @@ When you are working on regular bugs and features on our development branch `mai 3. Push back your changes to the PR - ```console + ```bash git push --force origin <pr-branch> ``` @@ -147,7 +147,7 @@ When you are working on features for our upcoming curriculum `next-*` branches, 1. Make sure your upstream comes in sync with your local: - ```console + ```bash git checkout main git fetch --all --prune git checkout next-python-projects @@ -158,7 +158,7 @@ When you are working on features for our upcoming curriculum `next-*` branches, a. Either delete your local branch after taking a backup (if you still have it locally): - ```console + ```bash git checkout <pr-branch-name> # example: @@ -174,7 +174,7 @@ When you are working on features for our upcoming curriculum `next-*` branches, b. Or just a backup of your PR branch (if you do not have it locally): - ```console + ```bash git checkout -b <backup-branch-name> origin/<pr-branch-name> # example: @@ -183,14 +183,14 @@ When you are working on features for our upcoming curriculum `next-*` branches, 3. Start off with a clean slate: - ```console + ```bash git checkout -b <pr-branch-name> next-python-projects git cherry-pick <commit-hash> ``` 4. Resolve any conflicts, cleanup, and install dependencies and run tests - ```console + ```bash pnpm run clean pnpm install @@ -204,6 +204,6 @@ When you are working on features for our upcoming curriculum `next-*` branches, 5. If everything looks good, push back to the PR - ```console + ```bash git push --force origin <pr-branch-name> ``` diff --git a/docs/how-to-setup-freecodecamp-locally.md b/docs/how-to-setup-freecodecamp-locally.md index 05abfaa460e..df9fe013350 100644 --- a/docs/how-to-setup-freecodecamp-locally.md +++ b/docs/how-to-setup-freecodecamp-locally.md @@ -79,7 +79,7 @@ We primarily support development on Linux and Unix-based systems like Ubuntu and If Node.js is already installed on your machine, run the following commands to validate the versions: -```console +```bash node -v pnpm -v ``` @@ -150,7 +150,7 @@ Run these commands on your local machine: 2. Clone your fork of freeCodeCamp, replacing `YOUR_USER_NAME` with your GitHub Username - ```console + ```bash git clone --depth=1 https://github.com/YOUR_USER_NAME/freeCodeCamp.git ``` @@ -168,25 +168,25 @@ You need a reference from your local clone to the `upstream` repository in addit 1. Change the directory to the new freeCodeCamp directory: - ```console + ```bash cd freeCodeCamp ``` 2. Add a remote reference to the main freeCodeCamp repository: - ```console + ```bash git remote add upstream https://github.com/freeCodeCamp/freeCodeCamp.git ``` 3. Ensure the configuration looks correct: - ```console + ```bash git remote -v ``` The output should look something like below (replacing `YOUR_USER_NAME` with your GitHub username): - ```console + ```bash origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (fetch) origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (push) upstream https://github.com/freeCodeCamp/freeCodeCamp.git (fetch) @@ -211,12 +211,12 @@ And as always, feel free to ask questions on the ['Contributors' category on our The default API keys and environment variables are stored in the file `sample.env`. This file needs to be copied to a new file named `.env` that is accessed dynamically during the installation step. -```console +```bash # Create a copy of the "sample.env" and name it ".env". # Populate it with the necessary API keys and secrets ``` -```console +```bash cp sample.env .env ``` @@ -229,7 +229,7 @@ The keys in the `.env` file are _not_ required to be changed to run the app loca This step will install the dependencies required for the application to run: -```console +```bash pnpm install && pnpm run create:shared ``` @@ -244,7 +244,7 @@ Before you can run the application locally, you will need to start the MongoDB s Start the MongoDB server in a separate terminal: -```console +```bash mongod ``` @@ -253,13 +253,13 @@ mongod Next, let's seed the database. In this step, we run the below command that fills the MongoDB server with some initial data sets that are required by services. These include a few schemas, among other things. -```console +```bash pnpm run seed ``` By default, you will be signed in as a new user without any completed certifications. Run the following commands if you need to develop with completed certifications: -```console +```bash pnpm run seed:certified-user pnpm run seed:exams ``` @@ -271,7 +271,7 @@ pnpm run seed:exams You can now start up the API server and the client applications. -```console +```bash pnpm run develop ``` diff --git a/docs/how-to-setup-freecodecamp-mobile-app-locally.md b/docs/how-to-setup-freecodecamp-mobile-app-locally.md index b3dd1f72294..debfd089ea4 100644 --- a/docs/how-to-setup-freecodecamp-mobile-app-locally.md +++ b/docs/how-to-setup-freecodecamp-mobile-app-locally.md @@ -18,7 +18,7 @@ Start by installing the prerequisite software for your operating system. If Flutter is already installed on your machine, run the following commands to validate the versions: -```console +```bash flutter --version dart --version ``` @@ -73,7 +73,7 @@ Run these commands on your local machine: 2. Clone your fork of freeCodeCamp, replacing `YOUR_USER_NAME` with your GitHub Username - ```console + ```bash git clone --depth=1 https://github.com/YOUR_USER_NAME/mobile.git ``` @@ -91,25 +91,25 @@ You need a reference from your local clone to the `upstream` repository in addit 1. Change directory to the new `mobile` directory: - ```console + ```bash cd mobile ``` 2. Add a remote reference to the main freeCodeCamp mobile repository: - ```console + ```bash git remote add upstream https://github.com/freeCodeCamp/mobile.git ``` 3. Ensure the configuration looks correct: - ```console + ```bash git remote -v ``` The output should look something like below (replacing `YOUR_USER_NAME` with your GitHub username): - ```console + ```bash origin https://github.com/YOUR_USER_NAME/mobile.git (fetch) origin https://github.com/YOUR_USER_NAME/mobile.git (push) upstream https://github.com/freeCodeCamp/mobile.git (fetch) @@ -133,20 +133,20 @@ And as always, feel free to ask questions on the ['Contributors' category on our The default API keys and environment variables are stored in the file `sample.env`. This file needs to be copied to a new file named `.env` which is accessed dynamically during the installation step. Remember to change the directory to `mobile-app` before running the following commands. -```console +```bash # Create a copy of the "sample.env" and name it ".env". # Populate it with the necessary API keys and secrets: ``` #### **macOS/Linux** -```console +```bash cp sample.env .env ``` #### **Windows** -```console +```bash copy sample.env .env ``` @@ -156,7 +156,7 @@ The keys in the `.env` file are _not_ required to be changed to run the app loca This step will install the dependencies required for the application to run: -```console +```bash flutter pub get ``` @@ -166,7 +166,7 @@ Start the emulator of your choice(Android or iOS) and wait for the bootup proces You can now start the app by running the following command: -```console +```bash flutter run ``` @@ -181,13 +181,13 @@ Follow these steps: 1. Validate that you are on the `main` branch: - ```console + ```bash git status ``` You should get an output like this: - ```console + ```bash On branch main Your branch is up-to-date with 'origin/main'. @@ -196,7 +196,7 @@ Follow these steps: If you are not on main or your working directory is not clean, resolve any outstanding files/commits and checkout `main`: - ```console + ```bash git checkout main ``` @@ -211,25 +211,25 @@ Follow these steps: Update your local copy of the freeCodeCamp mobile upstream repository: - ```console + ```bash git fetch upstream ``` Hard reset your main branch with the freeCodeCamp mobile main: - ```console + ```bash git reset --hard upstream/main ``` Push your main branch to your origin to have a clean history on your fork on GitHub: - ```console + ```bash git push origin main --force ``` You can validate that your current main matches the upstream/main by performing a diff: - ```console + ```bash git diff upstream/main ``` @@ -241,7 +241,7 @@ Follow these steps: Check that you are on `main` as explained previously, and branch off from there: - ```console + ```bash git checkout -b fix/update-guide-for-xyz ``` @@ -265,13 +265,13 @@ Follow these steps: 7. Check and confirm the files you are updating: - ```console + ```bash git status ``` This should show a list of `unstaged` files that you have edited. - ```console + ```bash On branch feat/documentation Your branch is up to date with 'upstream/feat/documentation'. @@ -288,25 +288,25 @@ Follow these steps: In this step, you should only mark files that you have edited or added yourself. You can perform a reset and resolve files that you did not intend to change if needed. - ```console + ```bash git add path/to/my/changed/file.ext ``` Or you can add all the `unstaged` files to the staging area: - ```console + ```bash git add . ``` Only the files that were moved to the staging area will be added when you make a commit. - ```console + ```bash git status ``` Output: - ```console + ```bash On branch feat/documentation Your branch is up to date with 'upstream/feat/documentation'. @@ -319,7 +319,7 @@ Follow these steps: Now, you can commit your changes with a short message like so: - ```console + ```bash git commit -m "fix: my short commit message" ``` @@ -351,7 +351,7 @@ Follow these steps: 9. If you realize that you need to edit a file or update the commit message after making a commit you can do so after editing the files with: - ```console + ```bash git commit --amend ``` @@ -359,7 +359,7 @@ Follow these steps: 10. Next, you can push your changes to your fork: - ```console + ```bash git push origin branch/name-here ``` @@ -370,14 +370,14 @@ Follow these steps: 1. Clone a copy of the [freeCodeCamp repo](https://github.com/freeCodeCamp/freeCodeCamp) locally outside of your local copy of the freeCodeCamp mobile repo. Your folder structure should look like this: - ```console + ```bash ├── freeCodeCamp ├── mobile ``` 2. Change the directory to the freeCodeCamp repo: - ```console + ```bash cd freeCodeCamp ``` @@ -385,25 +385,25 @@ Follow these steps: #### **macOS/Linux** - ```console + ```bash cp sample.env .env ``` #### **Windows** - ```console + ```bash copy sample.env .env ``` 4. Install the dependencies for the freeCodeCamp repo: - ```console + ```bash pnpm install && pnpm run create:shared ``` 5. Generate the challenge data JSON file: - ```console + ```bash pnpm run build:curriculum ``` @@ -411,54 +411,54 @@ Follow these steps: #### **macOS/Linux** - ```console + ```bash cp ./shared/config/curriculum.json ../mobile/mobile-app/curriculum.json ``` #### **Windows** - ```console + ```bash copy .\shared\config\curriculum.json ..\mobile\mobile-app\curriculum.json ``` 7. Change directory to the mobile app: - ```console + ```bash cd ../mobile/mobile-app ``` 8. Install the dependencies for the mobile app: - ```console + ```bash flutter pub get ``` 9. Update the test file to use the challenge data JSON file: - ```console + ```bash sed -i '' 's/..\/..\/shared\/config\/curriculum.json/.\/curriculum.json/g' test/widget_test.dart ``` 10. Generate the challenge files: - ```console + ```bash flutter test test/widget_test.dart ``` 11. Start a local server to serve the challenge files with the help of `serve` package: - ```console + ```bash npx serve ``` 12. In a different terminal go back to the freeCodeCamp repo: - ```console + ```bash cd ../../freeCodeCamp ``` 13. Run the cypress tests: - ```console + ```bash pnpm cypress run --config retries=1,screenshotOnRunFailure=false,video=false,baseUrl=http://localhost:3000/generated-tests/,specPattern=cypress/e2e/mobile-learn/test-challenges.js -s cypress/e2e/mobile-learn/test-challenges.js -b chrome ``` @@ -489,7 +489,7 @@ If you are on a different OS and/or are still running into issues, see [getting If you face issues with the UI, or build errors a cleanup can be useful: -```console +```bash flutter clean ``` diff --git a/docs/how-to-setup-wsl.md b/docs/how-to-setup-wsl.md index 6b167329ae9..bfb7162db5a 100644 --- a/docs/how-to-setup-wsl.md +++ b/docs/how-to-setup-wsl.md @@ -25,7 +25,7 @@ Follow the instructions on the [official documentation](https://docs.microsoft.c 2. Update the dependencies for the OS - ```console + ```bash sudo apt update sudo apt upgrade -y @@ -77,13 +77,13 @@ Once you have configured Docker Desktop to work with WSL2, follow these steps to 2. Pull MongoDB from Docker Hub. Please refer to the [Prerequisites](how-to-setup-freecodecamp-locally.md#Prerequisites) table for the current version of MongoDB used by freeCodeCamp. For example, if the version number is `5.0.x`, replace `<x.y>` with `5.0` in the following two code snippets. - ```console + ```bash docker pull mongo:<x.y> ``` 3. Start the MongoDB service at port `27017`, and configure it to run automatically on system restarts - ```console + ```bash docker run -it \ -v mongodata:/data/db \ -p 27017:27017 \ @@ -100,7 +100,7 @@ We recommend you install the LTS release for Node.js with a node version manager Once installed use this command to install and use the latest Node.js LTS version: -```console +```bash nvm install --lts ``` @@ -108,7 +108,7 @@ For instructions on installing and using a different version of Node.js, please Node.js comes bundled with `npm`, which you can use to install `pnpm`: -```console +```bash npm install -g pnpm ``` diff --git a/docs/how-to-work-on-localized-client-webapp.md b/docs/how-to-work-on-localized-client-webapp.md index fbc828e5ebc..82d467ae8c1 100644 --- a/docs/how-to-work-on-localized-client-webapp.md +++ b/docs/how-to-work-on-localized-client-webapp.md @@ -17,7 +17,7 @@ Let's understand how the i18n frameworks and tooling work. Most of the files for translating the platform are located in the [`client/i18n`](https://github.com/freeCodeCamp/freeCodeCamp/tree/main/client/i18n) folder. Each language has a directory that contains JSON files with the translations. -```console +```bash config └── i18n.ts ... diff --git a/docs/how-to-work-on-the-docs-theme.md b/docs/how-to-work-on-the-docs-theme.md index ceb935354d9..07457dccf5f 100644 --- a/docs/how-to-work-on-the-docs-theme.md +++ b/docs/how-to-work-on-the-docs-theme.md @@ -48,7 +48,7 @@ Typically you would not need to change any configuration or build the site local Install freeCodeCamp locally ([see the local setup guide](how-to-setup-freecodecamp-locally)), we bundled the CLI with the development tools so you can run the command below as needed from the root of the repo: -```console +```bash pnpm run docs:serve ``` diff --git a/docs/index.html b/docs/index.html index 4226aed7c8b..7fe9b9069a4 100644 --- a/docs/index.html +++ b/docs/index.html @@ -259,15 +259,16 @@ <!-- <script src="https://cdn.jsdelivr.net/npm/docsify-themeable@0"></script> --> <!-- Plugins --> - <script src="https://cdn.jsdelivr.net/npm/docsify/lib/plugins/emoji.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/docsify/lib/plugins/zoom-image.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/docsify-copy-code@2"></script> <script src="https://cdn.jsdelivr.net/npm/docsify@4/lib/plugins/search.js"></script> <script src="https://cdn.jsdelivr.net/npm/docsify-plugin-flexible-alerts@1"></script> - <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/components/prism-jsx.min.js"></script> - <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/components/prism-typescript.min.js"></script> - <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/components/prism-tsx.min.js"></script> - <script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/components/prism-yaml.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-jsx.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-typescript.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-tsx.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-yaml.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-ini.min.js"></script> + <script src="https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.min.js"></script> <script src="https://unpkg.com/docsify-pagination/dist/docsify-pagination.min.js"></script> <script src="https://unpkg.com/docsify-remote-markdown/dist/docsify-remote-markdown.min.js"></script> diff --git a/docs/troubleshooting-development-issues.md b/docs/troubleshooting-development-issues.md index f3cb1d502f0..81da6f303bf 100644 --- a/docs/troubleshooting-development-issues.md +++ b/docs/troubleshooting-development-issues.md @@ -16,7 +16,7 @@ If you are on a different OS or are still facing issues, see [getting help](#get When you build the client, Gatsby will cache the Fonts, language strings, and UI. If one of them isn't cached, run the following: -```console +```bash pnpm run clean pnpm install pnpm run seed @@ -52,7 +52,7 @@ git clean -ifdX If you can't sign in, and instead you see a banner with an error message saying that the error will be reported to freeCodeCamp, please double-check that your local port `3000` is not in use by a different program. #### **From Terminal:** -```console +```bash netstat -a | grep "3000" tcp4 0 0 0.0.0.0:3000 DESKTOP LISTEN