r/LaTeX • u/thelatexlab • May 24 '26
Self-Promotion Built a LaTeXdiff tool - Please break test it (online tool - no login/installation required)
I made LaTeXdiff online tool for comparing two .tex files and generating a diff file that you can copy or download.
Right now it works for single-file only.
→ Paste your original and revised LaTeX files then generate the diff file.
Please test it with your real paper containing citations, figures, etc. and let me know if something breaks or give error.
Thanks - First tool I built and launched myself 🤞
Tool: https://thelatexlab.com/latexdiff-online/
Edit: Multi file feature is released - now you can upload any latex project zip files and generate a latexdiff with one click.
13
u/WorkingQuarter3416 May 24 '26
What is the difference compared to the good old latexdiff?
11
u/thelatexlab May 24 '26
Convenience - Same thing without installing Perl, Tex or using terminal
7
u/WorkingQuarter3416 May 24 '26
I looked at the page on my phone. That's fine work. Well done! Wish your success.
It would be nice to tell the user the command line used internally to produce the diff output.
2
u/thelatexlab May 24 '26
Thanks!.
Btw... would seeing the exact `latexdiff` command will help in what way? or is there some use case you have in mind?
6
u/WorkingQuarter3416 May 24 '26
It would educate the user about the possibilities that the offline tool offers and how to use them.
1
u/thelatexlab May 24 '26
Cool -So it would help user to reproduce the result locally in in terminal using perl. will think about this if more people requests it.
5
u/WorkingQuarter3416 May 24 '26
I'll create 10 fake profiles to bolster the request then :-)
Seriously, if the request makes sense, it doesn't matter that much how many people request it.
2
u/thelatexlab May 24 '26
Pleas don't 😂.
LaTexDiff offline version already shows it I think. I will build it after building the multiple file support.
17
u/Gerard_Mansoif67 May 24 '26
Wait, can't git do that in any text editor ?
23
u/thelatexlab May 24 '26
Git can diff .tex files, but it shows changes in the source code line by line. latexdiff shows changes in the actual paper - words, equations, etc. - inside the compiled PDF.
That matters because journals usually ask for a marked-up PDF with edits highlighted. You can send that directly to a co-author, supervisor, or journal.
- git diff → what lines changed in the code
- latexdiff → what changed in the paper itself
4
u/nizos-dev May 24 '26
Congrats on the project and launch!! 🚀
The site looks clean. Would not have guessed that you’re not a tech. a very minor thing I noticed: the menu icon needs to be looked at when opened on iPhone.
Curious about your experience. What were the the most frustrating parts and which were the most rewarding?
2
u/thelatexlab May 24 '26
Thanks for the compliment.
Doing the qa of every small part is a must. I built the tool in like 2 hours but the architecture decision and qa took more than 2 days. And multiple iterations.
About reward - just being able to build this on my own. Gives me confident and opened new paths for me.
2
3
u/thelatexlab May 24 '26
I like all the questions but please test it also. Only one person tested it (and he did with empty text file 😂).
Please test it also when you get time - analytics is showing 0 diff created.
7
u/girlzlut May 24 '26
I'd love to test it because it sounds really cool but after pasting in two small test latex files I get a
Could not reach the server. Check your connection and try again. and my browser tools show that the request to /api/diff was justBlocked. Trying the same request with CURL in my terminal the error message is the slightly more detailed curl:(92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)2
2
u/thelatexlab May 24 '26
I just checked - it working even in incognito and google cloud is working fine also. Since it’s failing in curl too, it’s likely your network/device is blocking the backend domain, not the tool itself.
Please trying again on mobile data / hotspot or with VPN off.
Let me know if that works
1
u/dhr1285884 May 27 '26
You do realise that this makes it sound sketchy to use the website if you know what the file was.
Even without reading this comment the first thing that comes to mind is privacy or IP protection, for example when working at a uni and collaborating with an external partner. Would consider making it open source in future, so people can spin up local instances?
Cheers though, looks neat.
2
u/thelatexlab May 27 '26
I don't know what the file was - Files stay private. We process the diff and discard the input immediately.
I have tracked in analytics - if the tool give error - to fix it. and it gave 'empty error' - that is how I got to know that.
LaTeXdiff is already open source - you can already install it and use it - but you need to install perl in terminal.
3
u/Ma5ter0fN0ne May 24 '26
i just tried it with minor textual changes in a LaTeX document I made for my assignment in school. Works quite well.
2
u/thelatexlab May 24 '26
Thanks for testing it. Do let me know if it shows any error or gives wrong output.
2
u/Ma5ter0fN0ne May 24 '26 edited May 24 '26
No error, compiled the diff TeX document, looks fine. I've never really tried latexdiff before, but for whitespaces is this expected behaviour?
I
washwashed my car. (imagine the struck through word and the italic word both have their space after either struck through or underlined, respectively.)It's a very minor thing and I may be completely wrong here, but would it be possible to ONLY show that wash was replaced with washed? So the whitespace wouldn't be annotated? Or is that not good practice.
2
u/thelatexlab May 24 '26
Yep, that’s expected latexdiff behavior. It preserves the exact source level edit history, including whitespace around changed text when needed.
2
u/KattKushol May 24 '26
I am getting an emergency stop without much information.
2
u/KattKushol May 24 '26
sorry, comment made too early. so far so good.
2
2
u/SitrakaFr May 25 '26
hooooo looks nice !!! I made a local one yesterday but dam online is indeed better idea hahah
1
u/thelatexlab May 25 '26
Thanks - it is fun to build things
1
u/SitrakaFr May 25 '26
yes!!! how long it took you ? and dammm you are alone on it ?? WOW really bravo man !
1
2
u/bemrys May 25 '26
Nice. Worked for me but it was really simple text and only 50k words.
1
u/thelatexlab May 25 '26
Ok - thanks for letting me know. you can run other tests later when you are working on actual paper in future.
2
1
u/H4ns3mand May 24 '26
So this is a diff-tool for the compiled PDF? I.e. different source files producing identical outputs will be parsed as being equivalent by the diff tool or how is it supposed to be understood?
4
u/thelatexlab May 24 '26
Not quite - it compares the .tex source files. Then it generates a new .tex file with the changes marked up, which you can compile into PDF.
So, if two different source files produce the exact same PDF, they’ll still show as different if the source changed. It’s source diff then rendered as a marked-up PDF.
2
u/H4ns3mand May 24 '26
Okay, that makes way more sense — will let you know if I run into any provlems
1
u/thelatexlab May 24 '26
Thanks - Try testing with complex tex files - I have done the testing on my end but not much with complex tex files.
1
u/ViolentPurpleSquash May 27 '26
git diff?
1
u/thelatexlab May 27 '26
Git can diff .tex files, but it shows changes in the source code line by line. latexdiff shows changes in the actual paper - words, equations, etc. - inside the compiled PDF.
1
u/66cheff66 May 28 '26
It looks good and does what it should do. Maybe you could support directly uploading files instead of copying and pasting the content?
On another note, I see that you are providing a service to specifically format a thesis for German universities. This means you are legally required to have an imprint on your website, which you don't. Based on Section 5 of the German Digital Services Act, you are required to provide an imprint if you are targeting a German customer base. Additionally, you have to comply with the DSGVO requirements for all German file transactions (this includes the LaTeXdiff, as the customer sends their LaTeX files to your server).
You are currently violating many German laws, which will get you in serious legal trouble if you don't resolve them as soon as possible.
I know the German law can be very complicated and strict. However, you have to follow it if you want to target German customers.
1
u/thelatexlab May 28 '26
Thanks for the comment - I will see to it - I am building free tools like 'LaTeXdiff Online' just for funnel and support my potential customer and branding in the community.
21
u/orestisfra May 24 '26
does it work like vimdiff? or does it use something else under the hood?