RGhost
Wicked Pdf
RGhost | Wicked Pdf | |
---|---|---|
- | 7 | |
187 | 3,536 | |
- | - | |
6.8 | 6.4 | |
7 months ago | 2 months ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
RGhost
We haven't tracked posts mentioning RGhost yet.
Tracking mentions began in Dec 2020.
Wicked Pdf
-
Job Adventures - PDF generation | Jun 2024
My first contact with building PDFs was with rails using https://github.com/mileszs/wicked_pdf. The task always seems easy, you just build HTML and render that to pdf. And in fact, the part of rendering the info to the pdf is easy. The nightmare comes when implementing what is on the mockups. How will CSS behave in printing mode? What if we have a component that can’t split on a page break, it should jump in its entirety to the next page? What if our cover page does not count to the page total? What if the cover page does not have an header/footer? Why is the pdf so big?
-
Working with PDFs in Ruby
We’ll start with the WickedPDF gem, which is powered by the wkhtmltopdf command-line library.
-
Creating PDFs in a Ruby on Rails application
You have a few options when trying to create a PDF in a Rails environment. Prawn and Wicked PDF have been around for quite a while. I have been using both gems and they work fine. However, they have a few limitations that can make it difficult to handle more complex PDFs. I recently discovered Grover, which can remediate some of this inflexibility in creating PDFs.
-
Generate PDF with gem wicked_pdf
# WickedPDF Global Configuration # # Use this to set up shared configuration options for your entire application. # Any of the configuration options shown here can also be applied to single # models by passing arguments to the `render :pdf` call. # # To learn more, check out the README: # # https://github.com/mileszs/wicked_pdf/blob/master/README.md WickedPdf.config ||= {} WickedPdf.config.merge!({ layout: "pdf.html.erb", orientation: "Landscape", lowquality: true, zoom: 1, dpi: 75 })
-
Converting HTML to PDF using Rails
A couple of popular gems to convert HTML to PDF in Rails are PDFKit and WickedPDF. They both use a command line utility called wkhtmltopdf under the hood; which uses WebKit to render a PDF from HTML.
- Gerando PDF com a gem wicked_pdf no Rails 6
-
20 months, 2K hours, 200K € lost. A story about resilience and sunk cost fallacy
Thanks for sharing - it takes a lot to share these sort of personal experiences. I've definitely been there, too.
Aside from all the good and valid comments about reducing scope and shipping an MVP, I'd like to raise another point which may be controversial (or even wrong), but still worth raising:
Would it have been different if you had used Rails? A few of the problems you mention (rich text editing, validation, and to some extend, pdf exports) are very easily solved in Rails. Take rich text editing: It's literally a couple minutes to use ActionText. Or validations / forms, there's really not much work to do. PDF exports are also not too hard via wicked_pdf [1] if you're okay with fixing some formatting quirks later on.
I've seen both worlds by writing tons of JS / React code myself, and at that time (2016-2018) those problems were almost an order of magnitude more time-costly to implement in SPAs. I remember react-router.. not great memories.
Of course, all the points reducing MVP scope still hold, yadda yadda, but.. if you could have had all those features (nearly) for free, would you be at another stage now? Who knows.
[1] https://github.com/mileszs/wicked_pdf
What are some alternatives?
Wisepdf - Wkhtmltopdf wrapper done right
Pdfkit - A Ruby gem to transform HTML + CSS into PDFs using the command-line utility wkhtmltopdf
CombinePDF - A Pure ruby library to merge PDF files, number pages and maybe more...
Prawn - Fast, Nimble PDF Writer for Ruby
HexaPDF - Versatile PDF creation and manipulation for Ruby
Grover - A Ruby gem to transform HTML into PDFs, PNGs or JPEGs using Google Puppeteer/Chromium
Tailwind CSS - A utility-first CSS framework for rapid UI development.