djot | PDF.js | |
---|---|---|
43 | 84 | |
1,580 | 46,332 | |
- | 1.1% | |
5.8 | 9.9 | |
2 months ago | 4 days ago | |
HTML | JavaScript | |
MIT License | Apache License 2.0 |
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.
djot
-
LaTeX and Neovim for technical note-taking
I know this doesn't solve your problem directly, but I recommend people to try out Djot[0], a markup language from the author of CommonMark.
Djot has a single well-defined spec, and most of the basic formatting has the same syntax as (a) Markdown, so switching is pretty painless. It has as a main goal to be legible and visually aesthetic as-is, just like Markdown.
What Djot adds is its _predictability_. Nested formatting, precedence order, line breaks behavior, nested blocks, mixed inline and block formatting, custom attributes are all laid out precisely in the spec in a thought-out manner. Till this day I still can't remember how to put line break within a list item in Markdown (and I'm sure there're more than one way).
[0]: https://djot.net/
- Pandoc 3.1.12 Released
-
Pandoc
Worth noting that the author has also created a markup language, djot.
https://github.com/jgm/djot
-
Augmenting the Markdown Language for Great Python Graphical Interfaces
Every time I see people doing something with Markdown, I wish they just replace it with support for Djot[0] instead. It is a Markdown alternative by the creator of Pandoc and CommonMark that fixes all of the most egregious mistakes, while being legible and visually pleasant as-is. It is also syntactically similar to Markdown, which should ease adoption.
[0] https://github.com/jgm/djot
- Djot is a light markup syntax
- Beyond Markdown
-
HELP!!! Stuck forever
Are you using markdown? It might make sense to look at 'djot' as well: https://djot.net/; it's a new 'light' markup language conceived as a successor to commonmark; development is led by none other than John McFarlane (author of pandoc, & also led commonmark standardization) Djot makes it really easy to attach arbitrary attributes to block elements as well as inline elements; and the parser records source positions in the output -- all of which makes it really convenient keeping track of elements changing position or value.
-
Is there a way to send data from neovim in real-time to other applications? Want to create a neovim qmk bridge.
I have a simple script that sends a djot buffer (https://github.com/jgm/djot) to the parser, if there's a change, on the CursorHold event.
-
wiki.vim v0.6 is released
Since you mentioned you were considering moving to CommonMark, have you had time to look into Djot (also by jpm)? Djot is meant to be easier to parse, and I'm planning to write a tree-sitter grammar for it.
-
Typst, a modern LaTeX alternative written in Rust, is now open source
Another recent development here is https://djot.net/ (by the pandoc author). It indeed thoroughly solves both:
PDF.js
-
DEMO - Voice to PDF - Complete PDF documents with voice commands using the Claude 3 Opus API
readPdf: used for reading the dropped file and displaying it on the screen, it uses PDF.js to load the file, get all fields and display it on the browser.
-
Building W-9 Crafter
I first started building the app in the browser, using PDF.js and Download.js to take a PDF and edit it, and then download it to your computer.
-
Parsing PDFs in Node.js
pdf2json is a module that transforms PDF files from binary to JSON format, using pdf.js for its core functionality. It also incorporates support for interactive form elements, enhancing its utility in processing and interpreting PDF content.
-
Is it possible to port Edge's PDF Editor to other browsers or make your own custom one?
Why not PDF.js?
-
How to Write a Cold Email
I'd think opening a PDF in your browser would be at the same risk-level you associate with going to any random URL. On Firefox at least, I'm pretty sure the built-in PDF viewer is simply JS parsing and rendering the PDF anyway -- nothing with elevated permissions:
https://mozilla.github.io/pdf.js/
-
Firefox 119 unleashes PDF prowess and Sync sorcery
The PDF features are actually an extension, just one built in as Firefox's default pdf viewer.
It's called pdf.js https://github.com/mozilla/pdf.js/
You can actually use this pdf viewer in another browser like Chrome if you'd like, there's a demo URL on there.
-
PDF Chat with Node.js, OpenAI and ModelFusion
We use Mozilla's PDF.js via the pdfjs-dist NPM module to load pages from a PDF file. The loadPdfPages function reads the PDF file and extracts its content. It returns an array where each object contains the page number and the text of that page.
- Ask HN: Best toolkit to build custom pdf viewer?
-
Microsoft faces antitrust scrutiny from the EU over Teams, Office 365
The problem is that there simply wasn't a better option at the time.
Ogg Vorbis was a novelty at best, and it was the only decently widely adopted open source competitor for any of the items listed that was available at the time.
HTML5 was only just published when Chrome launched. So Flash was at that point the only option available to show a video in the browser (sure, downloading a RealPlayer file was always an option, but it was clunky, creators didn't like people being able to save stuff locally, and was also not open source). Chrome in fact arguably accelerated the process of getting web video open sourced: Google bought On2 in 2010 to get the rights to VP8 (the only decent H.264 competitor available at that point) so they could immediately open source it. The plan was in fact to remove H.264 from Chrome entirely once VP8/VP9 adoption ramped up[1], but that didn’t end up happening.
Flash was integrated into Chrome because people were going to use it anyway, and having Google distribute it at least let them both sandbox it and roll out automatic updates (a massive vector for malware at the time was ads pretending to be Flash updates, which worked because people were just that used to constant Flash security patches, most of which required a full reboot to apply; Chrome fixed both of those issues). Apple are the ones who ultimately dealt the death blow to Flash, and it was really just because Adobe could not optimize it for phone CPUs no matter what they tried (even the few Android releases of Flash that we got were practically unusable). That also further accelerated the adoption of open source HTML5 technologies.
PDF is an open source format, and has been since 2008. While I don't know if pressure from Google is what did it, that wouldn’t surprise me. Regardless, the Chrome PDF reader, PDFium, is open source[2] and Mozilla's equivalent project from 2011, PDF.js, is also open source.[3] Both of these projects replaced the distinctly closed source Adobe Reader plugin that was formerly mandatory for viewing PDFs in the browser.
Chrome is directly responsible for eliminating a lot of proprietary software from mainstream use and replacing it with high-quality open source tools. While they've caused problems in other areas of browser development that are worthy of criticism, Chrome's track record when it comes to open sourcing their tech has been very good.
[1]: https://blog.chromium.org/2011/01/html-video-codec-support-i...
[2]: https://github.com/chromium/pdfium
[3]: https://github.com/mozilla/pdf.js
-
How do Fix this issue while trying to save an edited PDF? (text gets really small and is rotated)(i'm using nightly)
Firefox Nightly is an unstable test version. You should report PDF issues to this GitHub repository.
What are some alternatives?
typst - A new markup-based typesetting system that is powerful and easy to learn.
jsPDF - Client-side JavaScript PDF generation for everyone.
mdBook - Create book from markdown files. Like Gitbook but implemented in Rust
pdfmake - Client/server side PDF printing in pure JavaScript
Zato - ESB, SOA, REST, APIs and Cloud Integrations in Python
PDFKit - A JavaScript PDF generation library for Node and the browser
scroll - Tools for thought. An extensible alternative to Markdown.
Papa Parse - Fast and powerful CSV (delimited text) parser that gracefully handles large files and malformed input
pdfsyntax - A Python library to inspect and modify the internal structure of a PDF file
diff2html - Pretty diff to html javascript library (diff2html)
pdfquery - A fast and friendly PDF scraping library.
pdf-lib - Create and modify PDF documents in any JavaScript environment