Skip to content

About

App for finding internships and jobs. Scrapes postings from multiple sources and helps you apply. Flutter frontend, Node.js backend.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

11 Commits

Folders and files

Repository files navigation

Internship App

An app for finding internships and jobs. It scrapes postings from several sources, shows them in one place, and helps you apply with less manual form filling. The frontend is a Flutter app (iOS, Android, Windows), and the backend is a Node.js service that handles scraping, storage, and the API.

This is a personal project and a work in progress.

Features

  • Scrapes job and internship postings from multiple sites and shows them together.
  • Helps fill out application forms once you pick a listing.
  • Node.js backend API for scraping and data storage.
  • Single Flutter codebase targeting iOS, Android, and Windows.

Project layout

.
├── Resume_App__Frontend/   Flutter app
│   ├── pubspec.yaml
│   └── lib/
├── Resume_App__Backend/    Node.js backend
│   ├── package.json
│   └── server/
└── docker-compose.yml      Postgres for local development

Frontend

Requirements:

  • Flutter SDK (Dart SDK 3.6.0 or newer)
  • Android Studio or Xcode for mobile builds, Windows SDK for Windows builds

Run it:

cd Resume_App__Frontend
flutter pub get

# Android or iOS
flutter run

# Windows
flutter run -d windows

Main dependencies include go_router, provider, shared_preferences, url_launcher, and flutter_markdown (see pubspec.yaml for the full list).

Backend

The backend is a Node.js (Express) service that scrapes postings with axios and cheerio, schedules jobs with node-cron, and stores data in PostgreSQL via pg.

Requirements:

  • Node.js and npm
  • PostgreSQL (a docker-compose.yml is included to run Postgres locally)

Run it:

# Optional: start Postgres with Docker
docker compose up -d

cd Resume_App__Backend
npm install
npm start

Configure a .env with your database connection and any scraper settings before starting the server. Scraper helpers are available through npm scripts:

npm run scrape:countries
npm run domains:process

License

MIT. See LICENSE.

About

App for finding internships and jobs. Scrapes postings from multiple sources and helps you apply. Flutter frontend, Node.js backend.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Contributors

Languages