Pedeffy
Generate any PDF file from a template. Within a microservice. Using React.
What else would you want?
How does it work?
Pedeffy uses the awesome react-pdf
package under the hood to transform your React code into the PDF you want.
As a result, you can use the components from react-pdf
to create your setup.
To see this in action, see the example/inventid/firstPage.js
file.
You can use all of Reacts features to create nice reusable components.
This is then combined with the inventid approach used by maily. This gives you the flexibility to create a layout using React, and to get the resulting document by POSTing data to the service endpoint.
Example
- Clone this repository
- Ensure you use node
8.9
- Run
yarn install
- Run
yarn example
- Go to
http://localhost:3000/resume
where you will see the resume of Luke Skywalker - Now go to
http://localhost:3000/resume?footer=React-pdf%20as%20a%20service%20sounds%20like%20a%20great%20idea!
. Note how the text in the footer is directly updated!
react-pdf
components
Using Components should not be used through react-pdf
named export, but should use the named export on pedeffy
itself.
This ensures the fonts, among other things, are registered in the correct render path.
What to use it for?
At inventid, we use it for the following purposes: Generate lots of documents using a framework (React) which we love and library (react-pdf) which is really easy to learn.
- Invoices
- Tickets
- Quotations
- Customer invoices
- ... And much more
Sounds awesome
It is.
Running it in Docker
todo
Big shoutout
- To the developers of
express
- To the developers of Docker (which allow us to push this to production within minutes)
- To the developers of
react-pdf