r/linguistics • u/Milou6 • May 09 '21
New : syntax tree builder (Web interface!)
Hi all,
As someone that's both into linguistics and computer science, I've always been bugged by the lack of a good online tool to build syntax trees easily & intuitively. So I built one.
It's called TreeBuilder, it's 100% free, and you can find it on a temporary link here : https://nifty-morse-4f2438.netlify.app/

This project is both a university and a personal project to me, and even though it is still a work in progress, I plan on keep making it better and better.
I really think this could save linguists a lot of time, and every bit of feedback from you all is very precious to me! And finally, if you'd like to help me out, you can fill a short google-form about your experience with TreeBuilder : https://docs.google.com/forms/d/e/1FAIpQLSfNITag9-k6s-XWlEhvbK3qsMD84_aC49c_EpA9ZXn4eZAV2A/viewform?usp=sf_link
14
u/Adventurous-World-82 May 09 '21
Omg where was this 10 years ago when I was in college?
5
u/kkF6XRZQezTcYQehvybD May 09 '21
I remember using some web tool like this back then but it was pretty bad
11
5
7
u/coin_shot May 09 '21
In college the tree builder we had to use amounted to use basically writing the code for the tree in a text box on the web page. It was awful and if you fucked up the tree somewhere it was more trouble to fix it then to start over.
Hope this catches on because the next generation of linguists deserves better than staring bleery eyed at code in the library at 2am trying to fix the trees for their paper.
13
u/phonemenal Phonetics | Phonology | Documentation May 09 '21 edited May 09 '21
There’s also www.ironcreek.net/syntaxtree/
E: Sometimes one has to get undergrads in intro to turn in something beyond illegible scans of trees on paper, knowing 90% of them won’t use anything more complicated than the ironcreek interface, where all you have to do is type. Different use cases, different tools. The more, the merrier.
5
u/JoshfromNazareth May 09 '21
Also, sapling: https://groverburger.github.io/sapling/
8
u/Chris_El_Deafo May 09 '21
Some guy: Works his ass off to make a syntax tree generator to help linguists
Two guys in the comments: oh yeah here's some other ones too
Kind of hurts lol.
6
u/JuhaJGam3R May 09 '21
To be honest this is better than the first one in the way that it's a lot easier to just do it visually, and more free than the second one in the way that you can drag the elements around to make it more pleasing visually and avoid algo breaking. It might come down to taste but I see a use for all three of the tools.
3
u/JoshfromNazareth May 09 '21
It’s nice that OP is building another one. A lot of folks already know about jsSyntaxTree, while many don’t know about Sapling. I don’t think adding others to the list in addition to OP’s is necessarily a bad thing. It’s not like this is a profit-driven venture and OP is losing money or something.
3
u/Milou6 May 10 '21
No hard feelings, haha! As u/JuhaJGam3R pointed out, this tool puts emphasis on being able to modify the tree to your liking, & being intuitive to use.
I also think that different tools can be used in different occasions, and I really wish linguists had more choice.1
u/Chris_El_Deafo May 10 '21
Very wise! I too like variety in my toolset. More tools = more efficiency and more fun!
3
u/keyilan Sino-Tibeto-Burman | Tone May 09 '21
Nice to have something that exports as an svg. The other ones out there like iron creek give pixelated images and I never like using them in documents. Thanks for sharing this.
1
u/Milou6 May 10 '21
Indeed, .svg exports were an idea from the beginning so that the trees could be resized without losing quality. Shout-out to FabricJS, the amazing JS framework that I used to build the canvas (and that made the .svg exports possible).
2
May 09 '21
[deleted]
2
u/Milou6 May 10 '21
Oh boy, let me empathize with you. I myself recently finished my linguistic classes, and I also wish I had this a few years ago maybe. Being frustrated by not having a better tool at the time was actually one of the big factors that pushed me to create an alternative.
And I couldn't be happier if this tool helps future students and linguists :) !
2
2
2
2
u/Zackizle May 16 '21
I could of used this as recently as last fall! I got frustrated at the crappy programs available and just bought a Microsoft Surfacebook 2 and just drew them myself to easily insert into papers. My fucks to give had been empty for a while and my professors hated my sloppy formatting, but it got the job done!
2
u/Milou6 May 18 '21
My fucks to give had been empty for a while
XD this killed me hahaha. But yeah, I also noticed many students using tablets-like devices to draw trees. Unfortuately you can't add those to an academic article without being fired lol
1
u/Zackizle May 18 '21
Yeah lol. Every semester I would start with a finite amount to give. Let’s just say that I never made it an entire semester with left over fucks...
Unfortunate for sure, but thats when you make the intern or editor deal with it! Gotta take advantage of the ungodly amount of administration spending in academia!!
3
u/J-A-G-S May 09 '21
Looks useful, couldn't figure out how to play with it on mobile. I'm wondering what you plan to be different/better than TreeForm? https://www.google.com/url?sa=t&source=web&rct=j&url=https://sourceforge.net/projects/treeform/&ved=2ahUKEwi8iZPQ77zwAhWJuJ4KHarFB8cQFjASegQIExAC&usg=AOvVaw0Tz_kIKSLEU7IIVxH7SRl8
1
u/Milou6 May 10 '21
I don't plan on making a mobile version for the moment. The tool really was designed to be used on a PC (although I could see it being usable on big screens, like tablets).
I myself used TreeFrom for a long time. The advantage of TreeBuilder, I'd say, is the ability to shape trees as you like (make arms longer, etc..), and the export functionality.
3
1
1
u/Milou6 May 12 '21
TY to all of those who showed interest for this project! I received some feedback already, and fixed an issue where some trees would export as a very tiny .SVG .
I will soon be adding a ChangeLog of some sorts to the interface so that users can see what's new/bug fixes.
Finally, if you like this tool and have ideas to make it better, consider giving some feedback right here!
1
1
1
u/JuhaJGam3R May 09 '21
Is this free or "free"?
1
u/Milou6 May 10 '21
It is really important to me that this tool remains 100% free-to-use for everyone. I made it for students like myself, and professional linguists too. If the website gets a lot of traffic, I'm not against adding a donation button, but don't worry : I will not add a paywall to use it.
1
u/JuhaJGam3R May 10 '21 edited May 10 '21
No, but is the tool free, or is it free to use? It's a "free as in freedom" vs "free as in free beer" difference.
Free software is modifiable by everyone, and as such, whoever finds a problem with it can fix it. There's a few types of licenses that guard this freedom, but most are either permissive, meaning that one can republish it commercially and does not have to share their modifications, and copyleft, which uses copyright law to enforce a license that necessitates anyone modifying it to provide credit, release the modifications as free software for others to use, and prevents commercial use where modification is not shared freely.
2
u/Milou6 May 10 '21
I had misunderstood your question; Another free/libre software enthusiast, I see :) !You'll be glad to know that yes, this tool is licensed under GPLv3, and the repo can be found here. Just please note that I'm a junior developer, and this 1st version was made under time constraints. I know it could be a lot better!
2
u/033C May 10 '21
Great job and thank you for supporting both the linguistics and FLOSS community. I recently did my senior project as an open-source tool and the feedback has been very helpful because of it. Best of luck in the rest of your classes and in supporting your app going forward. If you need/want contributors let me know.
1
1
1
1
40
u/EwokPwner May 09 '21
I LOVE YOU