HNHacker News
TopNewBestAskShowJobs

tomyip

8 karma · joined July 3, 2017

submissionscomments
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Amazing! Will surely be keeping an out out for you guys as our requirements may change.
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Please do try creating a free account where you can edit your own drawings and easily share them.
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Thanks biztos, absolutely agreed on connectors and we are now improving it as we speak.

-Cloud icons are already there and so is a load of web applications icons, click on the menu icon to the right of stencil to access it.

- We are using SVG format as it has wide spread adoption and does not lock our users in.

- Confluence integration, coming up real soon.

Thanks for pointing these out.

tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Will absolutely double check on this one, and we did add a white background to and but will sure check why it does not work as well as we would like. Thanks a million for the feedback
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
1. We tried drawing libraries before using something in house. In fact what we have now is actually the 3rd version, where we throw away 2 previous versions that is not working as well as we would like. 2. We do not store SVG objects as JS object as we think that will be too memory intensive on a browser. What we have are wrappers, that will take SVG and wrap it internally as objects and to have a consistent and easy way to manipulate them, and once done working with them we throw them away. For example, we have wrappers for rectangle and ellipse and they both uses .move(x,y) and .size(width, height) which is more consistent than using SVG which requires x, y, width, height for rects and cx, cy, rx, ry for ellipses.

In addition, we have plans for opening up our API, so that people like yourself can build solutions on top of Vecta, right now you can play with it programmatically by opening your console, and typing Vecta. This single namespace allow you to access the page or shapes, Vecta.activePage.shapes, or you can set color to the first shape with Vecta.activePage.shapes(0).style('fill', '#ff0000');

4. We use document fragments to render to shadow DOM and write it to DOM, using in house code. However, we have found that what really matters is not so much of speed offered by rendering to shadown DOM but instead of the calculations we have to make internally like making sure the center of rotation and the tight bounding box. These, due to the inability of browsers to calculate them accurately, we have to make.

5. No, we rely on DOM and classes and wanted to keep things simple, so we have objects that handle the handles (no pun intended).

6. We use firebase. It not only handles our collaborative editing well but also allow us to generate previews, smooth and easy login, upload to storage, etc. We love firebase!

7. We do abstract mouse events, key events and many others with internal objects. These objects provide more information, like which shape the user has clicked on and therefore makes the entire task of handling the editing far easier, and we use JQuery for it's ease of use and cross browser compatibility.

8. There is no such thing as 2 users modify the same object at the same time, as one is always slower than the other. The slowest one wins. Say, I drag the object right and you drag it left, if you do it later, then the object is gonna go left.

Hopes that helps! Thanks for asking.

tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Thanks for the feedback, will surely look into it.
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Thanks a million, will double check on the flow to ensure no confusion and smooth flow. TQ!
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
This is a product that we are trying to solve a particular problem we are facing. How do we easily create amazing diagrams that is accurate and share them easily with our customers. How do we collaborate with others and be able to easily show what we meant. How do we built automation on top of it, so that it will help us count things, generate reports, etc. etc. So there, this is actually a first step where we have a few more things we wanna do down the line.
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
No, we use our own code plus some triangulation to predict user's mouse direction so that the menu will not hide if we detect a user heading that direction. Your answer is great by the way.
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
Thanks for the feedback. It's in beta now, and pricing is still in the works as we strive to provide value yet offer an affordable pricing. As the company behind Vecta, we have been profitable for a long time and has been making CAD software, for a while, and so we won't be going away anytime soon, well, at least that's the plan :)
tomyip··on Show HN: Vecta.io - Team diagramming with an advanced SVG editor
TQ, remedied will look into it further.