After installing MySQL or MariaDB via Homebrew on macOS, you might face:
- No root password set by default
- Forgotten root password
- Need for passwordless
root@localhost
access for development tools (Laravel, Sequel Ace, TablePlus, etc.)
After installing MySQL or MariaDB via Homebrew on macOS, you might face:
root@localhost
access for development tools (Laravel, Sequel Ace, TablePlus, etc.)// Install with npm install @mendable/firecrawl-js | |
import FireCrawlApp from '@mendable/firecrawl-js'; | |
const app = new FireCrawlApp({apiKey: "YOUR_API_KEY"}); | |
const schema = z.object({ | |
gold_prices: z.array(z.object({ | |
karat: z.string(), | |
price: z.string(), | |
site: z.string(), |
A Python script to generate and verify email addresses for websites at scale, with Hunter.io-style validation logic.
By @irazasyed
A smart email unsubscribe link parser with multilingual. It can detect language or you can provide one. Let's you find the unsubscribe link which you can later trigger or utlize to process for any purposes.
Eg. To unsubscribe from newsletters for mailbox cleanup automatically).
# ~/.oh-my-zsh/custom/update.zsh | |
ARROW="οΏ«" | |
RED='\033[0;31m' | |
GREEN='\033[0;32m' | |
YELLOW='\033[0;33m' | |
NC='\033[0m' | |
# Run macOS Software Updates, and update Homebrew packages, brew cask updates, composer, bun, npm, and their installed packages | |
# Update Ruby Gems |
async function scrapeLinkedinSearch() { | |
let allProfiles = []; | |
let page = 1; | |
window.scrollTo(0, document.body.scrollHeight); | |
await new Promise((resolve) => setTimeout(resolve, 500)); | |
// find the button aria-label="Next" | |
let nextButton = document.querySelector('button[aria-label="Next"]'); | |
const peeps = getProfiles(); | |
allProfiles.push(...peeps); |
function clickAccessEmailIfAvailable() { | |
const tbodys = document.querySelectorAll( | |
".finder-results-list-panel-content table tbody" | |
); | |
for (let i = 0; i < tbodys.length; i++) { | |
const tbody = tbodys[i]; | |
const buttons = tbody.querySelectorAll("button"); | |
// Create an array to store buttons with text including "Access Email" | |
const filteredButtons = []; |
async function scrollDown() { | |
const wrapper = document.querySelector("#search-page-list-container"); | |
await new Promise((resolve, reject) => { | |
var totalHeight = 0; | |
var distance = 600; | |
var timer = setInterval(async () => { | |
var scrollHeightBefore = wrapper.scrollHeight; | |
wrapper.scrollBy(0, distance); | |
totalHeight += distance; |