Skip to main content

A CLI tool for job seekers

Project description

swelist

CI codecov License: MIT PyPI version Python Versions

A CLI tool for job seekers to track tech internships and new-grad positions. Data is sourced from the Summer2025-Internships and New-Grad-Positions repositories.

Features

  • Track both internships and new-grad positions
  • Filter job postings by time (last day, week, or month)
  • Filter job postings by locations
  • View company name, job title, location, and application link
  • Real-time data from GitHub repositories
  • Local SQLite application tracker (swelist tracker)
  • AI-powered interview prep via swelist jobgpt

Installation

pip install swelist

Usage

Command Line

Basic usage:

# Show internship positions from last 24 hours (default)
swelist

# Show new-grad positions from last 24 hours
swelist --role newgrad

# Show internship positions from last week
swelist --role internship --timeframe lastweek

# Show internship positions for Toronto
swelist --role internship --location Toronto

# Show new-grad positions for last month for Boston and New York
swelist --role newgrad --timeframe lastmonth --location "Boston, New York"

Options

  • --role: Choose between internship (default) or newgrad positions
  • --timeframe: Filter postings by time period: lastday (default), lastweek, or lastmonth
  • --location: Filter locations by giving single location: Canada or multiple locations "Boston, Toronto, New York"

Application Tracker

Track job applications locally with SQLite — no account required:

# Initialize (once)
swelist tracker init

# Add applications
swelist tracker add "Amazon — SDE, AWS" --status "In progress" --job-id 10414382 --applied-on 2026-05-17

# Update status
swelist tracker update "Amazon — SDE, AWS" --status "Rejected"

# View all
swelist tracker list
swelist tracker list --status "In progress" --company amazon

# Export
swelist tracker export --format json
swelist tracker export --format csv

Agent Integration

swelist can be integrated into AI automation workflows to parse job postings and convert them to structured JSON:

import subprocess
import json

# Get job postings
output = subprocess.run(['swelist', '--role', 'internship'], capture_output=True, text=True)

# Parse into structured JSON
jobs = []
current_job = {}
for line in output.stdout.splitlines():
    if line.startswith("Company:"):
        current_job = {"company": line.split(":", 1)[1].strip()}
    elif line.startswith("Title:"):
        current_job["title"] = line.split(":", 1)[1].strip()
    elif line.startswith("Location:"):
        current_job["location"] = line.split(":", 1)[1].strip()
    elif line.startswith("Link:"):
        current_job["link"] = line.split(":", 1)[1].strip()
        jobs.append(current_job)

print(json.dumps(jobs, indent=2))

This enables use cases like:

  • Automated daily job tracking agents
  • Integration with AI writing assistants for application workflows
  • Real-time job aggregation pipelines

Example Output

Welcome to swelist.com
Last updated: Sun Feb 23 13:03:45 2025
Found 1227 tech internships from 2025Summer-Internships
Found 103 new-grad tech jobs from New-Grad-Positions
Sign-up below to receive updates when new internships/jobs are added

Found 15 postings in the last day:

Company: Example Tech
Title: Software Engineering Intern
Location: New York, NY
Link: https://example.com/apply
...

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swelist-0.1.9.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

swelist-0.1.9-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file swelist-0.1.9.tar.gz.

File metadata

  • Download URL: swelist-0.1.9.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for swelist-0.1.9.tar.gz
Algorithm Hash digest
SHA256 56c80b45fc1c52d3bee1080d58f1a15aeb7ab557b5f3aed2b4db6ff8909e412c
MD5 b5c14ee355df6af863945c5edf22989e
BLAKE2b-256 9209d41dafb55f4d1db40d482c42340f7c9496d2cf63a46ae3f06b08b9809f9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for swelist-0.1.9.tar.gz:

Publisher: python-publish.yml on chenyuan99/swelist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file swelist-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: swelist-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for swelist-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 b15b0935d804ad0bdc3ac6cc0d850b6fbc3b8bad435b4d61921d24f4cff893dc
MD5 8d61c8d1e359b4987248ea02f582aeac
BLAKE2b-256 07aca94f0e077b43e5d124791a029933a8c322d1b87ba43adaa4c3b25c8f444d

See more details on using hashes here.

Provenance

The following attestation bundles were made for swelist-0.1.9-py3-none-any.whl:

Publisher: python-publish.yml on chenyuan99/swelist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page