[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-106531":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":15,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":16,"rankGlobal":10,"rankLanguage":10,"license":17,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":18,"hasPages":18,"topics":20,"createdAt":10,"pushedAt":34,"updatedAt":35,"readmeContent":36,"aiSummary":10,"trendingCount":15,"starSnapshotCount":15,"syncStatus":13,"lastSyncTime":37,"discoverSource":38},106531,"Morrow","GuptaSoujanya\u002FMorrow","GuptaSoujanya","A learning-first, local-first career workspace & job application automation engine. Tailors resumes, applies across Naukri, Wellfound, Instahyre & career sites, and runs daily interview study plans.","https:\u002F\u002Fwww.soujanyalab.in\u002F",null,"Python",58,2,26,0,41.43,"MIT License",false,"main",[21,22,23,24,25,26,27,28,29,30,31,32,33],"ai-agents","automation","career-automation","career-workspace","interview-prep","job-bot","job-search","local-first","naukri-bot","playwright","python","resume-tailoring","wellfound-bot","2026-11-02 17:31:19","2026-11-02 17:31:24","\u003Cdiv align=\"center\">\n\n# Morrow\n\n### Your career workspace that studies with you, tailors your resume and applies for you, all on your own computer\n\n[![Release](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRelease-v1.0.0-7C5CFF?style=for-the-badge&logo=github)](https:\u002F\u002Fgithub.com\u002FGuptaSoujanya\u002FMorrow\u002Freleases\u002Ftag\u002Fv1.0.0)\n[![Python](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.11%2B-3776AB?style=for-the-badge&logo=python&logoColor=white)](https:\u002F\u002Fpython.org)\n[![Platform](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FmacOS%20%7C%20Linux-111?style=for-the-badge&logo=apple)](#-quick-start)\n[![Tests](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTests-1702%20passing-39D353?style=for-the-badge&logo=pytest&logoColor=white)](#-verify-it-works)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-F5A623?style=for-the-badge)](LICENSE)\n\n\u003Cbr\u002F>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGuptaSoujanya\u002FMorrow\u002Fstargazers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FGuptaSoujanya\u002FMorrow?style=for-the-badge&logo=apachespark&color=FFD700&label=STARS\" alt=\"GitHub Stars\" \u002F>\u003C\u002Fa>\n  &nbsp;\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGuptaSoujanya\u002FMorrow\u002Fnetwork\u002Fmembers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002FGuptaSoujanya\u002FMorrow?style=for-the-badge&logo=git&color=00F2FE&label=FORKS\" alt=\"GitHub Forks\" \u002F>\u003C\u002Fa>\n  &nbsp;\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGuptaSoujanya\u002FMorrow\u002Fwatchers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fwatchers\u002FGuptaSoujanya\u002FMorrow?style=for-the-badge&logo=github&color=39D353&label=WATCHERS\" alt=\"GitHub Watchers\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n**[Quick start](#-quick-start)** · **[Screenshots](#-a-look-inside)** · **[What it does](#-what-it-does)** · **[How it works](#-how-it-works)** · **[Full guide](GUIDE.md)** · **[SoujanyaLab](https:\u002F\u002Fwww.soujanyalab.in\u002F)**\n\n\u003Cbr\u002F>\n\n\u003Cimg src=\".github\u002Fassets\u002Ftour.gif\" alt=\"A tour of the Morrow dashboard: Launchpad, Insights, Bot Crew, Applications, Learning and Action inbox\" width=\"900\"\u002F>\n\n\u003Csub>A quick tour of the dashboard (example data)\u003C\u002Fsub>\n\n\u003C\u002Fdiv>\n\n\u003Cbr\u002F>\n\n> [!NOTE]\n> **The beta is free.** There's no account, subscription or payment. Your data stays on your machine; it only goes out through the browsers you sign in to and the AI CLI you already use (Claude Code or Kiro).\n\n## ✨ Why Morrow\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"33%\" valign=\"top\">\n\n### ✅ Checked on the page\nMorrow only reports a login, application, profile save or post as done after it has checked the page and seen it there.\n\n\u003C\u002Ftd>\n\u003Ctd width=\"33%\" valign=\"top\">\n\n### 🔒 Nothing made up\nAnswers come only from your resume, your facts and what you've told it. When it doesn't know, it asks you in the **Action inbox** instead of guessing.\n\n\u003C\u002Ftd>\n\u003Ctd width=\"33%\" valign=\"top\">\n\n### 🧾 Every run is recorded\nEach run writes to an SQLite ledger and a daily report with links, keeps its full log, and saves the exact resume each recruiter received.\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## 🚀 Quick start\n\n```bash\ngit clone --recurse-submodules https:\u002F\u002Fgithub.com\u002FGuptaSoujanya\u002FMorrow.git\ncd Morrow\nbash setup.sh\n```\n\nThat's it. `setup.sh` does the following, in order:\n\n| Step | What happens |\n|:---:|---|\n| 1️⃣ | Installs Python 3.11+, Node.js, Poppler and Chrome if they're missing |\n| 2️⃣ | Creates `venv\u002F` and installs the locked Python and dashboard packages |\n| 3️⃣ | Signs you in to **Claude Code** or **Kiro CLI** |\n| 4️⃣ | Installs the `morrow` command and starts the dashboard |\n| 5️⃣ | Opens **http:\u002F\u002F127.0.0.1:8100\u002F#\u002Fonboarding**, where you upload your resume and confirm your details |\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>setup.sh flags\u003C\u002Fb>\u003C\u002Fsummary>\n\n| Flag | Effect |\n|---|---|\n| `--provider claude\\|kiro` | choose the AI CLI without being asked |\n| `--skip-login` | skip the AI CLI sign-in step |\n| `--no-start` | install everything, but don't start the dashboard |\n| `--no-open` | start the dashboard, but don't open the browser |\n| `--check` | only report what's installed and what's missing |\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>Prefer to set it up by hand?\u003C\u002Fb>\u003C\u002Fsummary>\n\n```bash\npython3 -m venv venv && source venv\u002Fbin\u002Factivate\npip install -r requirements.lock\n.\u002Fscripts\u002Fsetup_user.sh          # your private data repo -> user\u002F, and .env\npython3 -m pipeline onboard      # resume + facts -> user\u002Finputs\u002F\npython3 -m naukri_bot --dry-run  # see what it would apply to; clicks nothing\nscripts\u002Fmorrow install && morrow start\n```\n\n\u003C\u002Fdetails>\n\n### Day to day\n\n| Command | Does |\n|---|---|\n| `morrow start` | start the dashboard on http:\u002F\u002F127.0.0.1:8100 |\n| `morrow stop` | stop it |\n| `morrow status` | check whether it's running |\n| `morrow logs` | follow the dashboard log |\n| `python3 -m pipeline` | run the whole morning: study, profiles, applications, briefings (picks up where it stopped) |\n\n> [!TIP]\n> The first real run on each site opens a visible Chrome window so you can enter the OTP. After that the session is saved under `user\u002Fbrowser\u002F` and later runs sign in on their own.\n>\n> On a Mac, when the checkout sits in Desktop, Documents or Downloads, the dashboard keeps the Chrome profiles in `~\u002FLibrary\u002FApplication Support\u002FMorrow\u002F` and makes `user\u002Fbrowser` a link to that folder. macOS does not let a Chrome started by the dashboard open a profile inside those three folders: the browser would sit in a \"cannot read and write to its data directory\" dialog and every run would time out.\n\n---\n\n## 📸 A look inside\n\n> Every screenshot below comes from the real dashboard running on **example data** (Example Candidate, made-up companies).\n\n### 🏠 Launchpad: everything at a glance\n\n\u003Cp align=\"center\">\u003Cimg src=\".github\u002Fassets\u002Flaunchpad.jpg\" alt=\"Launchpad: applications sent this period, jobs discovered, jobs above the match threshold, the bot crew and what needs your attention\" width=\"900\"\u002F>\u003C\u002Fp>\n\nApplications sent across Naukri, job boards and company sites, the jobs found and how many scored above your match threshold, and a short list of what needs you, all for the date range you pick.\n\n### 🤖 Bot Crew: 18 specialists, one click each\n\n\u003Cp align=\"center\">\u003Cimg src=\".github\u002Fassets\u002Fcrew.jpg\" alt=\"The eighteen Morrow specialists in three rows: apply, profile and assist\" width=\"900\"\u002F>\u003C\u002Fp>\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Fbot-crew-cards.jpg\" alt=\"Bot Crew cards for Naukri, Hirist, Instahyre, Cutshort, Wellfound and Company sites with Run now and Configure\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"50%\" valign=\"top\">\n\n**Six apply, six keep your profiles current, six help you research and study.**\n\n- **Run now** or **Configure** on each card\n- Run up to **8 agents at once**, each in its own browser\n- Turn on **Run in background** to hide the Chrome windows\n- Each card shows how many jobs that bot found and how many applications it sent\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### 📊 Insights: see what's working\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Finsights.jpg\" alt=\"Insights summary cards: applications sent, Naukri applications, opportunities found, needs your attention\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Finsights-charts.jpg\" alt=\"Insights charts: daily application bars by channel, the job funnel and the outcome ring\"\u002F>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd align=\"center\">\u003Cb>Totals for the period you choose\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>Daily activity, the job funnel and the outcome of each attempt\u003C\u002Fb>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### 📋 Applications and the Action inbox\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Fapplications.jpg\" alt=\"Applications ledger with role, platform, outcome, match score and time\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Faction-inbox.jpg\" alt=\"Action inbox listing employer questions waiting for an answer\"\u002F>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd align=\"center\">\u003Cb>Every attempt with its match score and outcome; search and filter it\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>Questions Morrow wouldn't guess at. Answer once and it reuses the answer\u003C\u002Fb>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### 📚 Learning: study while you apply\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Flearning.jpg\" alt=\"Today's learning: the next step and today's progress\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Fdsa.jpg\" alt=\"DSA practice lesson: learn, worked example, practice\"\u002F>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd align=\"center\">\u003Cb>Today's plan, built around your target role\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>DSA lessons: learn, worked example, practice (+XP)\u003C\u002Fb>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### 🔁 Flows and Connections\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Fflows.jpg\" alt=\"Flows: run the whole morning workflow and resume from saved progress\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"50%\">\u003Cimg src=\".github\u002Fassets\u002Fconnections.jpg\" alt=\"Connections: saved sign-ins for Google, Naukri and the job boards\"\u002F>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd align=\"center\">\u003Cb>Run the whole morning; pick up where it stopped\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>Sign in once per site; Morrow never sees your password\u003C\u002Fb>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n### 🪄 Onboarding: from resume to ready in three steps\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd width=\"33%\">\u003Cimg src=\".github\u002Fassets\u002Fonboarding-resume.png\" alt=\"Onboarding step 1: upload your resume\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"33%\">\u003Cimg src=\".github\u002Fassets\u002Fonboarding-profile.png\" alt=\"Onboarding step 2: review the details read from your resume\"\u002F>\u003C\u002Ftd>\n\u003Ctd width=\"33%\">\u003Cimg src=\".github\u002Fassets\u002Fonboarding-preferences.png\" alt=\"Onboarding step 3: choose target roles and locations\"\u002F>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd align=\"center\">\u003Cb>1 · Upload your resume\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>2 · Check what it found\u003C\u002Fb>\u003C\u002Ftd>\n\u003Ctd align=\"center\">\u003Cb>3 · Pick the jobs you want\u003C\u002Fb>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## 🧩 What it does\n\n| | Feature | Highlights |\n|---|---|---|\n| 📚 | **Learn** | Shared 90-day AI\u002FML, system-design and full-stack interview course, daily DSA, and additional papers, tech news and GitHub discoveries |\n| 👤 | **Profile** | Writes one profile plan from your resume to Naukri, LinkedIn, Hirist, Instahyre, Cutshort and Wellfound, then checks each one |\n| 📄 | **Resume** | Compiles your LaTeX resume and tailors it for each job by reordering what's already there, never adding to it |\n| 🎯 | **Apply** | Naukri, Hirist, Instahyre, Cutshort, Wellfound and company career sites (Greenhouse, Lever, Workday and more), ranked by an LLM against your resume |\n| 💬 | **Answer** | Fills in screening questions from your answers, your profile and quotes from your resume. If none of them has the answer, it asks you |\n| ✉️ | **Outreach** | Writes cold-email drafts to recruiters and one LinkedIn post a day, in your voice |\n| 📊 | **Report** | One daily report with what was applied, what was tried, what's left for you, and every run's log |\n| 🖥️ | **Dashboard** | Every bot as a button, live logs, a live view of each bot's browser, a Stop button, the application ledger and insights |\n\n### Supported job boards\n\n![Naukri](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNaukri-0A66C2?style=flat-square)\n![LinkedIn](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLinkedIn-0077B5?style=flat-square&logo=linkedin&logoColor=white)\n![Hirist](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FHirist-1E88E5?style=flat-square)\n![Instahyre](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FInstahyre-00BFA5?style=flat-square)\n![Cutshort](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCutshort-FF7043?style=flat-square)\n![Wellfound](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWellfound-000000?style=flat-square)\n![Greenhouse](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FGreenhouse-24A47F?style=flat-square)\n![Lever](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLever-555?style=flat-square)\n![Workday](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FWorkday-F5A623?style=flat-square)\n\n---\n\n## ⚙️ How it works\n\n```mermaid\nflowchart LR\n    R[📄 Your resume] --> O[Onboarding\u003Cbr\u002F>profile + answers]\n    O --> L[📚 Learn\u003Cbr\u002F>plan + briefings]\n    O --> P[👤 Profiles\u003Cbr\u002F>write + verify]\n    O --> A[🎯 Apply\u003Cbr\u002F>search · rank · tailor]\n    A --> Q{Question\u003Cbr\u002F>answerable?}\n    Q -- yes --> S[✅ Submit + verify]\n    Q -- no --> I[📥 Action inbox\u003Cbr\u002F>for you]\n    S --> D[(Ledger + daily report)]\n    P --> D\n    L --> D\n```\n\nEach site runs in its own process with its own Chrome profile. You can also run each one in its own Docker container and watch its screen in your browser.\n\n---\n\n## 🧰 Requirements\n\n| Tool | Why |\n|---|---|\n| **macOS** (Linux works for the bots) | launchd schedules are macOS-only |\n| **Python 3.11+**, **Node 22.19+** | the bots and the dashboard |\n| **Google Chrome** | every bot drives a real browser |\n| **Claude Code** or **Kiro CLI**, signed in | ranking, answers, briefings, writing (no API key needed) |\n| **tectonic** *(optional)* | compiling and tailoring a LaTeX resume |\n| **Docker** *(optional)* | one container per site |\n\n`setup.sh` installs the required ones for you.\n\n---\n\n## ✅ Verify it works\n\n```bash\nvenv\u002Fbin\u002Fpython -m pytest -q tests   # ~2 minutes\npython3 -m pipeline status           # today's progress (read-only)\nmorrow status                        # is the dashboard up?\n```\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>Common problems\u003C\u002Fb>\u003C\u002Fsummary>\n\n| Problem | Fix |\n|---|---|\n| `ModuleNotFoundError` | `pip install -r requirements.lock` inside the venv |\n| Exit code 2, \"needs a human\" | run with a visible window and finish the OTP in Chrome |\n| Dashboard port busy | `morrow start --port 8116`, or stop the process `morrow start` names |\n| A board says \"signed out\" | sign in again from the dashboard's **Connections** page |\n| Tailoring fails | needs a `.tex` resume and `brew install tectonic` |\n\nMore in the [full guide](GUIDE.md#troubleshooting).\n\n\u003C\u002Fdetails>\n\n---\n\n## 📖 Learn more\n\n| Document | What's in it |\n|---|---|\n| **[GUIDE.md](GUIDE.md)** | every feature, command, dashboard page and `.env` key in detail |\n| [froned-dashbord\u002FREADME.md](froned-dashbord\u002FREADME.md) | the dashboard, plus the optional accounts mode |\n| [morrow-api\u002FREADME.md](morrow-api\u002FREADME.md) | the account API |\n| [CONTRIBUTING.md](CONTRIBUTING.md) | how to help |\n| [.env.example](.env.example) | every setting and its default |\n\n---\n\n> [!WARNING]\n> Use Morrow responsibly and within each site's terms. LinkedIn's User Agreement forbids automated access, and Naukri and the other boards may restrict accounts that automate. Start with dry runs and low limits, and read the daily report. Morrow is provided for educational use.\n\n---\n\n## ⭐ Star History & Community\n\nIf you find Morrow helpful for your career and job application workflow, please consider starring ⭐ the repository and forking 🍴 it to stay synchronized with new updates!\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fstar-history.com\u002F#guptasoujanya\u002Fmorrow&Date\">\n    \u003Cimg src=\"https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=guptasoujanya\u002Fmorrow&type=Date&theme=dark\" width=\"750\" alt=\"Morrow Star History Chart\" \u002F>\n  \u003C\u002Fa>\n\u003C\u002Fdiv>\n\n\u003Cbr\u002F>\n\n\u003Cdiv align=\"center\">\n\nBuilt by **Soujanya Gupta** at [SoujanyaLab](https:\u002F\u002Fwww.soujanyalab.in\u002F) · Released under the [MIT license](LICENSE)\n\n\u003C\u002Fdiv>\n","2026-11-03 04:32:13","CREATED_QUERY"]