Howdy! AgTern is a program that helps students find, track, and apply
to internships by scraping the web for job postings. Based off a
student profile (major, graduation date, industry interests, etc.),
it retrieves scraped internships that are most relevant to the
student. AgTern was built because searching for internships that
match your interests and situation can be hard. We wanted the process
to be as seamless as possible so that students can focus on applying
and not searching.
Explore the docs (TODO)»
Read the wiki »
View Demo
·
Report Bug
Table of Contents
About The Project
Current Features
Images
Built With
Getting Started
Installation
Running
Contributing
Contact
Acknowledgments
- Scrapes over 30 company job sites (over 1500 internships!)
- Search interface to search job keywords
- Displays relevant information about found internships
- Company
- Title
- Date of internship (e.g. Summer 2023)
- Link to apply
(back to top)
(back to top)
To set up your project locally and get it running, follow these simple steps.
Complete all the parts below (in order) for a complete installation.
- Install Git
- Clone the repository:
git clone https://github.com/johndpjr/AgTern.git
- Navigate to the
AgTern
directory - Change to
dev
branch:git checkout dev
Install Python
Create a virtual environment and activate it (run at repo root)
pip3 install virtualenv python3 -m virtualenv venv virtualenv venv # Linux & MacOS source venv/bin/activate # Windows .\venv\Scripts\activate
Install Python packages:
pip3 install -r requirements.txt
Install NodeJS
Navigate to the
frontend
directoryBuild the frontend
npm install npm run build
Note
If you are running the program for the first time, you either need to download the database (see #file-upload in Discord for file) or run a scraping job to populate jobs in a database
Common commands to run the program (make sure you're in the AgTern
directory):
Run frontend and backend:
1. Navigate to the frontend
directory
2. npm run start
3. (Open a new terminal) Run in repo root: python3 -m backend --dev --no-scrape
4. Goto localhost:8000
in your web browser
Run scraper command (only scrape):
python3 -m agtern --dev --scrape-only --save-jobs
If you are using PyCharm (it's free for students!), run configurations are already defined in the .idea
folder.
You should be able to run all configurations without issue.
- Install Docker
- Start Docker container:
docker-compose up
- Goto
localhost:8000
in your web browser
Note
Right now, the container won't auto-reload (detect local changes and rebuild), but this is planned!
Contributions are only open to students currently enrolled at Texas A&M University, as this is a club project for Aggie Coding Club.
Contributions give life to the project: without them this project dies.
Our list of tasks can be found on our GitHub projects page. Feel free to add issues to the project: these can be bugs, feature requests, or just observations. If you are interested in a ticket (that is not assigned already), assign it to yourself, make your changes, and create a pull request completing the task.
Assign the task to yourself and set the status as "In Progress"
Ensure you're on the
dev
branch with the latest changesgit checkout dev git pull
Create your feature branch:
git checkout -b feature/ticket#/short-description
Implement feature/bug fix and stage your changes:
git add .
Commit your changes with the following format:
git commit -m 'AT-ticket#: Add some feature
Push to the remote branch:
git push
Open a pull request to merge your feature branch into
dev
Project Manager - John Powell - Email
Project Link: https://github.com/johndpjr/AgTern
(back to top)
- All contributors: No matter the amount, each contributor on our team is appreciated for the work they do. Thank you!
- Aggie Coding Club: Continues to provide resources, contributors, and project advice. Thank you ACC!
(back to top)