#!/usr/bin/env bun import { KEYWORDS } from "../config.ts"; import { fetchJobs, SOFTWARE_TITLE_RE } from "../fetch.ts"; import type { SearchConfig } from "../config.ts"; const JUNIOR_RE = /\b(junior|jr\.?|entry.?level|graduate|intern(?:ship)?|trainee|apprentice|werkstudent)\b/i; const searches: SearchConfig[] = [ { label: "Bern (city)", keywords: KEYWORDS, location: "Bern, Switzerland", workType: ["onsite", "hybrid"], timePosted: "month" }, ]; const seen = new Set(); const results: { title: string; company: string; link: string; search: string }[] = []; for (const config of searches) { console.log(`\n[${config.label}]`); const jobs = await fetchJobs(config, { raw: false }); for (const job of jobs) { if (!seen.has(job.id)) { seen.add(job.id); results.push({ title: job.title, company: job.company, link: job.link, search: job.search }); } } } console.log(`\n── ${results.length} jobs found in Bern ──\n`); for (const j of results) { console.log(` [${j.search}] ${j.title}`); console.log(` ${j.company} ${j.link}`); }