This is a Node.js API with UI for users to interact and send a POST request for generating professional resumes using the AdobePdfServices SDK.
Website: The website for generating resumes is hosted at Resume Builder. You can access the website to create professional resumes using a user-friendly interface. remember to give data exactly described in constants.js
The file structure of the project is organized as follows:
├── __tests__
│ ├── resume-invalid-json.test.js
│ ├── resume-internal-server-error.test.js
│ ├── resume-success.test.js
│ ├── resume-template-not-found.test.js
│ └── resume-unauthorized.test.js
├── node_modules
├── public
│ ├── images
│ │ ├── BasicTemplatePhoto.jpg
│ │ ├── ImageTemplatePhoto.jpg
│ │ └── LinkTemplatePhoto.jpg
│ ├── script.js
│ └── styles.css
├── routers
│ ├── resume.js
│ └── views.js
├── src
│ ├── api-app.js
│ ├── constants.js
│ ├── pdf.js
│ ├── server.js
│ ├── validation.js
│ └── view-app.js
├── temp
├── Templates(Templates Data)
├── views
│ └── form.ejs
├── .gitignore
├── certificate_pub.crt
├── LICENSE
├── package-lock.json
├── package.json
├── pdfservices-api-credentials.json
├── private.key
└── README.md
To set up the API, follow these steps:
-
Set up AdobePdfServices credentials by following the instructions in Adobe's Document Generation API Quickstarts for Node.js.
-
Install the application's dependencies by running the command:
npm i
-
Place the
pdfservices-api-credentials.json
file in the root folder of the project. set the env variables
Windows (CMD):
set PDF_SERVICES_CLIENT_ID=<YOUR_CLIENT_ID>
set PDF_SERVICES_CLIENT_SECRET=<YOUR_CLIENT_SECRET>
MacOS/Linux:
export PDF_SERVICES_CLIENT_ID=<YOUR_CLIENT_ID>
export PDF_SERVICES_CLIENT_SECRET=<YOUR_CLIENT_SECRET>
.
The technologies used in this API are:
- Jest: A JavaScript testing framework.
- EJS: A templating engine for generating HTML markup with JavaScript.
- Express: A web application framework for Node.js.
- AdobePdfServices SDK: A software development kit for interacting with Adobe's PDF services.
The API provides the following endpoint:
POST /resume
: Generates a resume in PDF format based on the provided data.
To use the API:
-
Start the API server by running the command:
npm run dev
-
Send a POST request to
http://localhost:8080/resume
with the necessary data in the request body to generate a resume in PDF format and the user interface is hosted athttp://localhost:3000
To run the unit tests and view the results, use the command:
npm test
Conducted unit tests over 77 cases and 5 test suites
This project is licensed under the MIT License.
Feel free to explore and modify the API according to your needs!