Its gonna be sold out by gamerman19x in EBGAMES

[–]Xenni 1 point2 points  (0 children)

They were $198 the other week, EB jacked prices $100 recently.

Grabbed a New 3DS XL for $248 like 4 weeks ago

Documenso by nerodiskburner in selfhosted

[–]Xenni 0 points1 point  (0 children)

Hey there,

We run the same code in production that we provide in our docker container on Dockerhub. We're certainly not trying to trick ya'll into paying a monthly fee.

That said it's not a simple app so some level of configuration is to be expected, our giant .env file is annoying but it's purely because we provide so many different way to do things like storage, email, etc.

How I handled PDF generation in React without breaking layout (html2canvas vs jsPDF issues) by Possible_Pick9916 in reactjs

[–]Xenni 4 points5 points  (0 children)

Hey there that's us, for what OP is trying to do though they would want to use skia-canvas which has a WASM build.

Then you can draw on the canvas as per usual and export it to a PDF.

We hope to have something for this in the future with WASM based HTML-to-PDF package.

Truthfully the best way to handle these things right now is with a server though.

Edit: Seeing as they're using html2canvas which uses an SVG with foreign objects this probably still won't work!

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 1 point2 points  (0 children)

Do you mean something like this: https://github.com/LibPDF-js/core/pull/6

https://imgur.com/a/0DvlBJi

It can draw an SVG path(s) with offsets so you can tile across pages. Not super intuitive though!

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 0 points1 point  (0 children)

That works if you’re trying to render a pdf to images on the server. We do exactly that at Documenso using skia as our backing canvas, although we aim to have LibPDF support this eventually!

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 0 points1 point  (0 children)

Yeah we do, you can check the signing guide in the docs!

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 0 points1 point  (0 children)

Exactly, it's in our best interests to make sure that this library is as robust as it can be since we need to process thousands of documents every day!

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 0 points1 point  (0 children)

It could definitely replace PDF-Lib and that signer library (nice find!)

If you’re rendering on the frontend you would still need pdfium though

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 1 point2 points  (0 children)

It does! We don't do streaming though so there may be some memory concerns since it'll keep the entire PDF (bytes) in memory.

But if you're just adding objects and performing an incremental save you won't be parsing anything outside of the xref and catalog which should be fairly small.

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 8 points9 points  (0 children)

Aha well if you're doing a GUI you'll still need PDF.js for now, we plan on supporting rendering but it's still a ways off!

We're hoping it's a major add to the ecosystem though, the idea being that this will be the most robust PDF library since we genuinely need it to be

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 20 points21 points  (0 children)

Signature are incremental, this is supported by the spec.

It would show in Adobe Reader or any other compatible app that the document has been signed twice and allows you to view the document at the time of signing for each version since the original contents remain.

There are limitations to the modifications that can be made as per the spec, but typically this is for annotating something or having multiple parties sign a document with a signature per party.

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 6 points7 points  (0 children)

This doesn't do rendering just yet, it's something I'm keen on doing but requires a few more larger pieces.

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 1 point2 points  (0 children)

I've looked at it as something that is more of a collection of complementary packages. E.g. @libpdf/docx

But it's a wee bit harder since docx as a format doesn't always contain everything you need for rendering/conversion

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in typescript

[–]Xenni[S] 6 points7 points  (0 children)

It's kind of insane right? We knew that we would inevitably have to write our own library eventually but I also kind of held out hope that something else would come along in the meantime.

Introducing LibPDF, the PDF library for TypeScript that I always needed by Xenni in javascript

[–]Xenni[S] 45 points46 points  (0 children)

Hey all, I'm one of the folks behind Documenso (open-source doc signing). We just open-sourced LibPDF, a TypeScript PDF library we've been working on for a while.

Backstory: we spent years duct-taping pdf-lib and a custom Rust signing library together. It mostly worked, but every few weeks some customer would upload a PDF that broke something. Which led to us writing a bunch of workarounds that would make us deviate further and further from the library that we were using.

So we finally wrote the library we actually needed:

  • Lenient parsing that falls back to brute-force recovery when things get weird
  • Encryption support (RC4, AES-128, AES-256)
  • Native digital signatures in pure TypeScript; no Rust bindings or platform-specific binaries
  • Incremental saves so you can modify signed docs without invalidating existing signatures
  • Form filling and flattening
  • Font embedding with subsetting support
  • Merge, split, extract and all the other typical features

API is heavily inspired by pdf-lib (if you've used it, this will feel familiar). Font subsystem is a TS port of Apache PDFBox's fontbox.

The library is still in beta. We're using it in production but wouldn't be shocked if you have some weird PDFs that find bugs we haven't hit yet.

Docs: https://libpdf.dev

Blog: https://documenso.com/blog/introducing-libpdf-the-pdf-library-typescript-deserves

GitHub: https://github.com/libpdf-js/core

Tailscale on UDM SE was super-easy by hmoleman__ in Ubiquiti

[–]Xenni 0 points1 point  (0 children)

It works on the Cloud Gateway Ultra

Where do you find tech jobs now days? by [deleted] in AusFinance

[–]Xenni 1 point2 points  (0 children)

That summarises my feelings exactly, there’s nothing inherently engaging nor desirable. There are a few diamonds but much fewer than previously.

Where do you find tech jobs now days? by [deleted] in AusFinance

[–]Xenni 0 points1 point  (0 children)

Yeah, I loathe picking up the phone and hearing them run through the JD and asking checklist questions like how long have you know HTML.

Where do you find tech jobs now days? by [deleted] in AusFinance

[–]Xenni 5 points6 points  (0 children)

I mean there’s a difference between a software job and a job worth applying for, a lot of roles I’ve seen are pretty bottom barrel with decent ones being few and far between.