resume_copilot 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +60 -0
- data/lib/resume_copilot/geographic_location.rb +11 -0
- data/lib/resume_copilot/job.rb +21 -0
- data/lib/resume_copilot/job_location.rb +14 -0
- data/lib/resume_copilot/job_search_helper.rb +27 -0
- data/lib/resume_copilot/job_search_request.rb +29 -0
- data/lib/resume_copilot/job_search_result.rb +11 -0
- data/lib/resume_copilot/version.rb +4 -0
- data/lib/resume_copilot.rb +10 -0
- metadata +80 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 1638ed1685cd276a9a2693b17be62d43ba16f397c260b287e8f5f35cd685e074
|
4
|
+
data.tar.gz: 35424ba16b6b53d75929dd0c0e5d1e6d97ecdd32f3f50c88e214d088b285fefb
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: df2bdcf2cb0652d7fc09716e8fcc53e2fa2f9f9113cc1ace2f7c1ed87da19501107ba31f0c6e9df84c7191b488c0cd22e54636d40342f46ad5ea6c3cee462bca
|
7
|
+
data.tar.gz: 8443b61c8bbd3b8947528cdee2936173a3b8f40b5d5299767785d1e4112705e7a0f3955b873704c31801db36a3491a62096c026ba6f94d1b8a274a3d13c03fca
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
ResumeCopilot (c) 2025
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
# ResumeCopilot
|
2
|
+
|
3
|
+
## Overview
|
4
|
+
ResumeCopilot is a Ruby library designed to interact with the Resume Copilot API, allowing developers to integrate job search functionality into their applications.
|
5
|
+
|
6
|
+
## API Documentation
|
7
|
+
For detailed API documentation, visit:
|
8
|
+
[Resume Copilot API](https://api.resumecopilot.net/swagger/index.html)
|
9
|
+
|
10
|
+
## What is Resume Copilot?
|
11
|
+
Resume Copilot is your one-stop solution for crafting the perfect resume. It is available as a plugin in the ChatGPT Plus version, helping users streamline their resume-building process. With Resume Copilot, you can:
|
12
|
+
|
13
|
+
- Effortlessly upload and edit resumes
|
14
|
+
- Make precise improvements and enhancements
|
15
|
+
- Choose from a diverse range of professional templates
|
16
|
+
- Navigate and implement suggested changes with ease
|
17
|
+
|
18
|
+
To learn more, visit:
|
19
|
+
[Resume Copilot Website](https://resumecopilot.net/)
|
20
|
+
|
21
|
+
## ChatGPT Plugin
|
22
|
+
Resume Copilot is also available as a ChatGPT plugin to enhance your resume-writing experience. You can access it here:
|
23
|
+
[Resume Copilot on ChatGPT](https://chatgpt.com/g/g-EcIzZRYVx-resume-copilot)
|
24
|
+
|
25
|
+
## Installation
|
26
|
+
To install ResumeCopilot as a RubyGem, use the following command:
|
27
|
+
```sh
|
28
|
+
gem install resume_copilot
|
29
|
+
```
|
30
|
+
|
31
|
+
Or add it to your Gemfile:
|
32
|
+
```ruby
|
33
|
+
gem 'resume_copilot'
|
34
|
+
```
|
35
|
+
Then run:
|
36
|
+
```sh
|
37
|
+
bundle install
|
38
|
+
```
|
39
|
+
|
40
|
+
## Usage
|
41
|
+
Here’s a basic example of how to use the library to perform a job search:
|
42
|
+
```ruby
|
43
|
+
require 'resume_copilot'
|
44
|
+
|
45
|
+
request = ResumeCopilot::JobSearchRequest.new(
|
46
|
+
title: "developer",
|
47
|
+
size: 10
|
48
|
+
)
|
49
|
+
|
50
|
+
results = ResumeCopilot::JobSearchHelper.search_jobs(request)
|
51
|
+
results.jobs.each do |job|
|
52
|
+
puts "Job: #{job.name} at #{job.company_name}"
|
53
|
+
end
|
54
|
+
```
|
55
|
+
|
56
|
+
## Contributing
|
57
|
+
We welcome contributions! Feel free to open issues or submit pull requests to improve the library.
|
58
|
+
|
59
|
+
## License
|
60
|
+
This project is licensed under the MIT License.
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require_relative "job_location"
|
2
|
+
|
3
|
+
module ResumeCopilot
|
4
|
+
class Job
|
5
|
+
attr_accessor :name, :company_name, :location, :feed, :id, :created
|
6
|
+
|
7
|
+
def initialize(name:, companyName:, location:, feed:, id:, created:)
|
8
|
+
@name = name
|
9
|
+
@company_name = companyName
|
10
|
+
@location = location ? JobLocation.new(
|
11
|
+
city: location[:city],
|
12
|
+
state: location[:state],
|
13
|
+
country: location[:country],
|
14
|
+
loc: location[:loc]
|
15
|
+
) : nil
|
16
|
+
@feed = feed
|
17
|
+
@id = id
|
18
|
+
@created = created
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require_relative "geographic_location"
|
2
|
+
|
3
|
+
module ResumeCopilot
|
4
|
+
class JobLocation
|
5
|
+
attr_accessor :city, :state, :country, :loc
|
6
|
+
|
7
|
+
def initialize(city:, state:, country:, loc:)
|
8
|
+
@city = city
|
9
|
+
@state = state
|
10
|
+
@country = country
|
11
|
+
@loc = loc ? GeographicLocation.new(lat: loc[:lat], lon: loc[:lon]) : nil
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
require 'json'
|
3
|
+
require 'uri'
|
4
|
+
|
5
|
+
module ResumeCopilot
|
6
|
+
class JobSearchHelper
|
7
|
+
API_BASE_URL = 'https://api.resumecopilot.net'.freeze
|
8
|
+
|
9
|
+
def self.search_jobs(request)
|
10
|
+
uri = URI("#{API_BASE_URL}/api/v1/search")
|
11
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
12
|
+
http.use_ssl = true
|
13
|
+
|
14
|
+
request_body = request.to_json
|
15
|
+
headers = { 'Content-Type' => 'application/json' }
|
16
|
+
|
17
|
+
response = http.post(uri.path, request_body, headers)
|
18
|
+
|
19
|
+
raise "HTTP Error: #{response.code}" unless response.is_a?(Net::HTTPSuccess)
|
20
|
+
|
21
|
+
parsed_response = JSON.parse(response.body, symbolize_names: true)
|
22
|
+
JobSearchResult.new(jobs: parsed_response[:jobs])
|
23
|
+
rescue StandardError => e
|
24
|
+
raise "Error connecting to job search service: #{e.message}"
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'json'
|
2
|
+
|
3
|
+
module ResumeCopilot
|
4
|
+
class JobSearchRequest
|
5
|
+
attr_accessor :title, :company_name, :city, :state, :country, :is_remote, :size
|
6
|
+
|
7
|
+
def initialize(title:, company_name:, city:, state:, country:, is_remote: nil, size: 10)
|
8
|
+
@title = title
|
9
|
+
@company_name = company_name
|
10
|
+
@city = city
|
11
|
+
@state = state
|
12
|
+
@country = country
|
13
|
+
@is_remote = is_remote
|
14
|
+
@size = size
|
15
|
+
end
|
16
|
+
|
17
|
+
def to_json(*_args)
|
18
|
+
{
|
19
|
+
title: @title,
|
20
|
+
companyName: @company_name,
|
21
|
+
city: @city,
|
22
|
+
state: @state,
|
23
|
+
country: @country,
|
24
|
+
isRemote: @is_remote,
|
25
|
+
size: @size
|
26
|
+
}.to_json
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
require_relative "resume_copilot/version"
|
2
|
+
require_relative "resume_copilot/job_search_request"
|
3
|
+
require_relative "resume_copilot/job_search_helper"
|
4
|
+
require_relative "resume_copilot/job_location"
|
5
|
+
require_relative "resume_copilot/geographic_location"
|
6
|
+
require_relative "resume_copilot/job"
|
7
|
+
require_relative "resume_copilot/job_search_result"
|
8
|
+
|
9
|
+
module ResumeCopilot
|
10
|
+
end
|
metadata
ADDED
@@ -0,0 +1,80 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: resume_copilot
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Resume Copilot
|
8
|
+
bindir: bin
|
9
|
+
cert_chain: []
|
10
|
+
date: 2025-03-05 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: json
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: '0'
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '0'
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: net-http
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
description: ResumeCopilot is a Ruby client library that allows users to search for
|
41
|
+
jobs using ResumeCopilot API.
|
42
|
+
email:
|
43
|
+
- support@resumecopilot.net
|
44
|
+
executables: []
|
45
|
+
extensions: []
|
46
|
+
extra_rdoc_files: []
|
47
|
+
files:
|
48
|
+
- LICENSE.txt
|
49
|
+
- README.md
|
50
|
+
- lib/resume_copilot.rb
|
51
|
+
- lib/resume_copilot/geographic_location.rb
|
52
|
+
- lib/resume_copilot/job.rb
|
53
|
+
- lib/resume_copilot/job_location.rb
|
54
|
+
- lib/resume_copilot/job_search_helper.rb
|
55
|
+
- lib/resume_copilot/job_search_request.rb
|
56
|
+
- lib/resume_copilot/job_search_result.rb
|
57
|
+
- lib/resume_copilot/version.rb
|
58
|
+
homepage: https://github.com/resumecopilot-net/resume-copilot-lib-ruby
|
59
|
+
licenses:
|
60
|
+
- MIT
|
61
|
+
metadata:
|
62
|
+
rubygems_mfa_required: 'true'
|
63
|
+
rdoc_options: []
|
64
|
+
require_paths:
|
65
|
+
- lib
|
66
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
71
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
requirements: []
|
77
|
+
rubygems_version: 3.6.5
|
78
|
+
specification_version: 4
|
79
|
+
summary: A Ruby library for job search integration with ResumeCopilot API.
|
80
|
+
test_files: []
|