Hardware details
M1 Mac is ARM64. This is the Apple Silicone chip.
- Architecture: ARM-based architecture (specifically, ARMv8-A)
- ARM64
- CPU (not a GPU)
Tree
- ignore one folder:
tree -L 2 -I node_modules - ignore multiple folders:
tree -L 2 -I "node_modules|.git|dist"
VSCode (Windsurf)
Prettier (and formatOnSave)
- add extension
- open settings.json by: "cmd+shift+p" (search for "Prefrences: Open User Settings (JSON)")
- Here is what I have recently used:
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"prettier.useTabs": true,//< -- just deleted this to test out
"editor.formatOnSave": true
My entire Windsurf settings.json
{
"windsurf.autocompleteSpeed": "default",
"windsurf.autoExecutionPolicy": "off",
"windsurf.chatFontSize": "default",
"windsurf.rememberLastModelSelection": false,
"windsurf.openRecentConversation": false,
"windsurf.explainAndFixInCurrentConversation": false,
"editor.minimap.enabled": false,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.formatOnSave": true,
"javascript.updateImportsOnFileMove.enabled": "always",
"security.workspace.trust.untrustedFiles": "open",
"git.autofetch": true,
"windsurf.enableTabToJump": false
}
Shortcuts
re-indent: cmd+K + cmd+F
Rosetta 2
This allows me to run a terminal with a translation layer so that apps with the X86_64 processor can run on this machine.
- This is used by older Apple machines that run the Intel Chip whic his the X86_64 processor
Terminals with Rosetta 2
When switching between terminals running Rosetta 2 you can uncheck the Rosetta 2
Create symbolic link instead of Finder alias
Here is an example using the _jupyter directory:
from the terminal:
ln -s "/Users/nick/Library/CloudStorage/OneDrive-Personal/Documents/_learning/_jupyter" "/Users/nick/Documents/__testFolder/_jupyter"ln -s "[source_location_of_file]" "[path_where_you_want_to_keep_link]/[name_of_link]"or if you are in, path_where_you_want_to_keep_link, you can just do:(ws_13) ➜ Documents ln -s "/Users/nick/Library/CloudStorage/OneDrive-Personal/Documents/_learning/_jupyter" "_jupyter"- quotations only needed for spaces
- or
ln -s /Users/nick/Library/CloudStorage/OneDrive-Personal/Documents/_learning/yQuestions/_ChatGptConversations/ChatGPTQuestions202510.docx- this will create ChatGPTQuestions202510.docx in the current directory
Jupyter Notebook
Quick Install (Python 3.11)
- Ensure Python 3.11 is installed (
python --version) - Install JupyterLab:
python -m pip install jupyterlab - Create a project venv:
python -m venv myenv - Activate venv:
source myenv/bin/activate - Install kernel:
pip install ipykernel - Register kernel:
python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
Jupyter will now list this environment as a selectable kernel.
- run with:
jupyter lab
JavaScritpt
My Steps to install Javascript to the Jupyter notebook. These are based on my memory after just having installed it.
- Step 1: Terminal use ARM64 arch
- This was done by unchecking the Rosetta 2 from the /Applications/Utilites/Terminal > Get Info.
- then restart the computer. Otherwise I was still running i386 arch. In other words type
archinto terminal. We want it to say:arm64.
- This was a step that I am pretty sure I used
brew install pkg-config zeromq - Step 2: install nvm 18
- I needed to install nvm 18, I don't know why... terminal > command:
nvm install 18
- I needed to install nvm 18, I don't know why... terminal > command:
- Step 3:
npm install -g ijavascript- This is properly install when you can do
ijs --versionand get a response
- This is properly install when you can do
- Step 4: Activate the Python environment with Jupyter Lab
- Step 5: install something ...
ijsinstall
From here you should be able to open a Jupyter Lab and see an option for JavaScript
Deno (Anohter JavaScript option that sort of works)
Install
- curl -fsSL https://deno.land/x/install/install.sh | sh
- deno jupyter --unstable --install
OBS Studio
Make video output for YouTube 1920x1080 16:9
- Settings (or Prefrences from top bar "OBS") > Video > Change base canvas
Then to adjust the screen go to Sources > [whatever the media source is] > Filters > Crop/Pad adjust size as needed.
Then with your cursor you can move around and adjust the screen as you need.
dimensions for screen record tall/narrow
500 x 680 start on 0:29
MacAir do not start on lift screen
sudo nvram AutoBoot=%00
- this did not work ?
Ownership of folders
- command to view ownership:
ls -l - change ownership to user:
sudo chown -R nick:staff my-app- where "nick" is users and "my-app" is the folder
Android Emulator
Installation de Android Emulator dans MacOS
- install watchman
brew install watchman - install JDK
brew install --cask zulu@17 - telecharger Android Studiohttps://developer.android.com/studio
- créer env variables:
export ANDROID_HOME=/Users/your-username/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
yarn start
nettoyer le android dossier
- dans le racine de le project il y a un android/. Dans ça fait
./gradlew clean
cd android
./gradlew clean
- re-install yarn env
rm -rf node_modules
rm -rf .expo
yarn install # or `npm install` if you use npm
.gitignore
Nick ajouter pour android emulator
android/ .idea/
Android Studio via commandline
- see list of emulators:
~/Library/Android/sdk/emulator/emulator -list-avds - launch specific emulator:
~/Library/Android/sdk/emulator/emulator -avd <avd_name> - wipe data
~/Library/Android/sdk/emulator/emulator -avd <avd_name> -wipe-data
CyberDuck
- install brew
brew install --cask cyberduckTo access servers via tunneling
- create bookmark
- select "SFTP (SSH File Transfer Protocol)"
- server:
localhost - port:
9000if we are tunneling in through port 9000 - enter credentials to access the server we are tunneling into.
Python
Brew install 3.11
- install with command:
brew install python@3.11 - saved here:
/opt/homebrew/bin/python3.11 - in ~/.zshrc i aliased
python=python3.11andpip=pip3.11 - test:
python --versionorpython -V
Ollama
- install
brew install ollama - to always start ollama automatically (and run in background)
brew services start ollama- to shut off
brew services stop ollama
- to shut off
- to get a model
ollama pull mistral:instruct - to test from terminal:
ollamacurl http://localhost:11434/api/generate -d '{"model":"llama3.2:3b","prompt":"Hello"}'
- get list of models
ollama list
less used commands
- on a server
ollama server, then keep the server open - download deepseek r1 smallest
ollama run deepseek-r1:1.5b
Windsurf
- in a file add a comment with the question or code your are trying to create
- code completion ctrl + cmd + enter
- once the code shows up you can use tab to accept it.
- install the VSIX file from the Windsurf website: https://persistent.oaistatic.com/pair-with-ai/openai-chatgpt-latest.vsix
- cmd + shift + p > type "Extensions: Install from VSIX…" > select the file
GitHub
when setting up gitHub on a new machine
git config user.name "Nick Rodriguez"
git config user.email "YOUR_GITHUB_EMAIL@example.com"
Fresco
Dual monitor app free Mac app store app
Shotcut
- install brew
brew install --cask shotcut
Krita
- install brew
brew install --cask krita
Claude Code
- install brew
brew install --cask claude-code
GitHub MCP
- see Bitwarden for credentials
- example of command line:
claude mcp add --transport http github https://api.githubcopilot.com/mcp -H "Authorization: Bearer <your_token>"