There are several articles scattered around the internet that provide either a cursory overview of PowerShell profiles or a detailed explanation of their functionality. I have written one such article about PowerShell profiles which can be found here
#--------------------# Generic Profile CommandsGet-ChildItemC:\GitRepos\ProfileFunctions\ProfileFunctions\*.ps1|ForEach-Object{.$_}oh-my-poshinitpwsh--configC:\GitRepos\ProfileFunctions\BanterBoyOhMyPoshConfig.json|Invoke-Expression# basic greeting function, contents to be added to current functionWrite-Output"Type Get-ProfileFunctions to see the available functions"#--------------------# Configure PowerShell Console Window Size/PreferencesSet-ConsoleConfig-WindowHeight45-WindowWidth180|Out-Null#--------------------# PSDrivesNew-PSDrive-NameGitRepos-PSProviderFileSystem-RootC:\GitRepos\-Description"GitHub Repositories"|Out-NullNew-PSDrive-NameSysint-PSProviderFileSystem-Root"$env:OneDrive\Software\SysinternalsSuite"-Description"Sysinternals Suite Software"|Out-Null#--------------------# AliasesNew-Alias-Name'Notepad++'-Value'C:\Program Files\Notepad++\notepad++.exe'-Description'Launch Notepad++'#--------------------# Profile Starts here!Write-Output""Show-IsAdminOrNotWrite-Output""New-Greeting