This project automates the generation of personalized cover letters for job applications. It scans for new job listings from a specified career site, generates cover letters using a template, and sends notifications with the generated cover letters attached.
The application is deployed using Docker on Google Cloud Platform (GCP).
The project follows a modular architecture with the following components:
- Content Generation: Uses the ContentGenerator
class to create cover letter content based on job descriptions and user profiles.
- LaTeX PDF Generation: Uses the LaTeXGenerator
class to format the cover letter content into a PDF.
- Site Monitor: The SiteMonitor
class, hosted on GCP, scans for new job listings and processes them.
- Email Notification: The EmailSender
class sends emails with the generated cover letters attached.
To get a local copy up and running, follow these steps:
1. Clone the repository.
2. Rename config.example.json
to config.json
and update it with your personal and API details.
3. Install dependencies using pip install -r requirements.txt
.
4. Set up environment variables for email and API keys.
5. Build and run the Docker container using:
bash
docker build -t cover-letter-generator .
docker run -d cover-letter-generator
latex_template_path
and other paths are correctly set in the config.json
file.To run the application, follow these steps:
config.json
file with the necessary configurations.Make sure all dependencies are installed using pip install -r requirements.txt
.
Run the Application:
You can run the application using the following command:
bash
python main.py
Command Line Arguments:
bash
python main.py --list
bash
python main.py --site <site_url_1> <site_url_2> ...
Fractal Generators in C.
Fractals included are MandelBrot, Julia, Generalized Mandelbrot.
./Mandelbrot xMin xMax yMin yMax
Test if a complex number ( c ) is a member of the Mandelbrot set.
$$f_c(z) = z^2 + c$$
$$z_{n+1} = z_n^2 + c$$
A complex number ( c ) is a member of the Mandelbrot set if, when starting with ( z_0 = 0 ) and applying the iteration repeatedly, the absolute value of ( z_n ) remains bounded for all ( n > 0 ).
Mandelbrot Set render
Try rendering
./Mandelbrot 0.425 0.43 -0.2325 -0.23
./Mandelbrot -1.63 -1.62 -0.03 -0.02
Coordinates: -0.761574, -0.0847596
$$f_c(z) = z^2 + c$$
$$z_{n+1} = z_n^2 + c$$
Julia Set render
Generalized Mandelbrot Set render
Generate N points, choose a starting point at random between these N points. Choose a vertex at random and move halfway towards that vertex from the current point. Continue this process many times, eventually generating a pattern of points within the polygon.
gcc mandelbrot.c -o mandelbrot
To run the Mandelbrot program, use:
./mandelbrot
pack fractal function in function make loop use that function
better make file
Abstact up Color method to use in all fractals Colors Argument as parameter x= osv Out images Argument
Max Iter as argument to getColor
calculating roots of complex functions and ploting the result.
Paralel programing with OpenGL pragama statment
Calculating Heat Diffusion with Kernel and OpenCL
Simple website containing some simple games.
A fun game about a fun dude jumping.
Move to the sides by moving your mouse and upp by persing buttons.
Two player gmame about not getting wet.
One player usees the mouse to make drops. The other player uses arrow keys to avoid the drops.
Fix bugs in Boll upp och ner and Drops Add more Games fix loading .pde instead of pase in HTMl
Master Thesis Work. Tracking Yeast.
This Project Was created using Python 3.6.9 and OpenCV
Dependencies can be intalled using pip. For image analysis. pip3 install opencv-python For Graph ploting. pip3 install networkx
Also For loading .lif files the Bioformats Command Line Tools is needed. Can be dowloaded at https://downloads.openmicroscopy.org/bio-formats/6.5.0/artifacts/bftools.zip
install python: Ex: sudo apt install python
Instal Pacakge Manger: Ex: sudo apt install python3-pip
Install Requierments: pip install requierments.txt
Code Can be run in python
Python3 main.py
This loads the program with the file specified in loadData.py
Once the program is running the program can be controled by hitting following buttons.
q = quit
s = Show Segmentation
o = show Opt Chan
i = show cell ID
w = show WHI5 Activ Threshold
l = Print Lineage
p = Plot Data.
UserInterface Segmentation Tracking Load Data Croping alternative Testing