Software Alternatives, Accelerators & Startups

GoJS VS Underscore.js

Compare GoJS VS Underscore.js and see what are their differences

Note: These products don't have any matching categories. If you think this is a mistake, please edit the details of one of the products and suggest appropriate categories.

GoJS logo GoJS

GoJS is a JavaScript library for building interactive diagrams on HTML web pages. Build apps with flowcharts, org charts, BPMN, UML, modeling, and other visual graph types.

Underscore.js logo Underscore.js

Underscore is a utility-belt library for JavaScript that provides a lot of the functional...
  • GoJS Landing page
    Landing page //
    2023-03-21
  • Underscore.js Landing page
    Landing page //
    2018-12-17

GoJS features and specs

  • Rich Feature Set
    GoJS offers a comprehensive set of features designed for creating interactive diagrams, charts, and complex visualizations. This includes node and link modeling, custom styling, data binding, automatic layouts, and more.
  • Extensive Documentation
    The library is well-documented, providing developers with thorough guides, a detailed API reference, and numerous examples to assist in the implementation and troubleshooting of applications.
  • High Performance
    GoJS is optimized for performance, enabling the creation of responsive web applications that can handle a large number of nodes and complex interactions efficiently.
  • Flexibility and Customization
    GoJS offers great flexibility, allowing developers to customize the appearance and behavior of diagrams entirely, which makes it suitable for a wide range of use cases.
  • Active Support and Community
    The GoJS team provides active support to users through their forum and is responsive to issues and feature requests. This is complemented by a growing community of users sharing insights and solutions.

Possible disadvantages of GoJS

  • Commercial Licensing
    GoJS is a commercial product, and while it offers a free trial, a license is required for sustained use. This might be a constraint for projects with limited budgets.
  • Steep Learning Curve
    Due to its extensive capabilities and myriad of options, there can be a steep learning curve for developers new to GoJS to understand and effectively use all its features.
  • Complexity for Simple Diagrams
    While GoJS is powerful for complex diagrams, it might be considered overkill for simpler visualizations, where a lightweight library might suffice.
  • Browser Compatibility
    Although modern browsers are generally supported, there might be some compatibility issues or performance differences to manage when targeting older or less common browsers.
  • File Size
    The library's comprehensive feature set comes with a relatively large file size, which could impact loading times, particularly in environments with limited bandwidth.

Underscore.js features and specs

  • Utility Functions
    Underscore.js provides a wealth of utility functions for common tasks such as map, reduce, filter, and more, making it easier to perform operations on arrays, objects, and collections.
  • Consistency
    The library offers a consistent API, which can make your code more readable and maintainable by providing a standard way to perform common programming tasks.
  • Lightweight
    Underscore.js is lightweight compared to full-featured libraries like Lodash, which can be a benefit if you're looking to minimize your application's footprint.
  • Browser Compatibility
    It supports a wide range of JavaScript environments, making it a good choice for projects that need to work across different browsers and Node.js.
  • Quick to Learn
    Easy to pick up for developers with even a basic understanding of JavaScript, due to its straightforward documentation and familiar function names.

Possible disadvantages of Underscore.js

  • Performance
    Underscore.js may not offer the same level of performance optimizations as more modern utility libraries like Lodash, potentially leading to slower execution for some tasks.
  • Limited Functionality
    While it covers many basic utility functions, its feature set is not as extensive as Lodash or other similar libraries, which provide a broader range of capabilities.
  • Outdated
    With the advent of ECMAScript 5 and later versions, many of the functions provided by Underscore.js are now natively available in JavaScript, reducing its necessity.
  • No Modularization
    Underscore does not support modular builds in the same way Lodash does, meaning you might end up including the entire library even if you only need a few functions.
  • Community and Maintenance
    While still maintained, Underscore.js has seen less active development and contributions compared to newer libraries, which could impact its long-term viability and support.

Analysis of GoJS

Overall verdict

  • GoJS is considered a good choice for developers needing a versatile and feature-rich library for developing complex diagramming applications. Its performance, flexibility, and extensive support make it a reliable tool for both small and large-scale projects.

Why this product is good

  • GoJS is widely regarded as a powerful JavaScript and TypeScript library for building interactive diagrams and graphs. It offers a comprehensive set of features, including customizable templates, support for a variety of diagram types, and intuitive drag-and-drop functionality. The library is optimized for performance with large datasets and provides a robust API for creating complex visual representations. It also boasts thorough documentation and a range of examples to help developers get started quickly.

Recommended for

  • Developers working on data visualization apps
  • Teams creating interactive diagrams or flowcharts
  • Projects requiring complex and scalable diagram solutions
  • Organizations needing customizable and high-performance diagram libraries

Analysis of Underscore.js

Overall verdict

  • Underscore.js is a reasonable choice if you need a lightweight library for concise, functional programming helpers. While newer libraries or vanilla JavaScript have made some of its functions less essential, Underscore.js remains useful for its simplicity and comprehensive utility set.

Why this product is good

  • Underscore.js is a popular JavaScript library that provides a comprehensive set of utility functions for common programming tasks. It is valued for its simplicity and ease of integration, especially in projects that require functional programming patterns but do not need the full capabilities of larger libraries like Lodash. Underscore.js is lightweight and can significantly enhance productivity by offering functions for tasks such as object manipulation, array operations, and function binding, making code more readable and maintainable.

Recommended for

    Developers working on smaller projects or legacy codebases that require a reliable utility library with functional programming techniques. Itโ€™s also suitable for those who prefer a minimalistic approach and donโ€™t require the extensive features of heavier alternatives.

GoJS videos

GoJS in 12 Minutes: JavaScript Diagramming Library Tutorial

More videos:

  • Tutorial - What's in a GoJS JavaScript Application? | GoJS Beginner Tutorial #1
  • Review - [GOJS] Design Patterns em Javascript

Underscore.js videos

Introduction to Underscore.JS

Category Popularity

0-100% (relative to GoJS and Underscore.js)
Javascript UI Libraries
17 17%
83% 83
Flowcharts
100 100%
0% 0
Development Tools
0 0%
100% 100
Development
100 100%
0% 0

User comments

Share your experience with using GoJS and Underscore.js. For example, how are they different and which one is better?
Log in or Post with

Reviews

These are some of the external sources and on-site user reviews we've used to compare GoJS and Underscore.js

GoJS Reviews

20+ JavaScript libraries to draw your own diagrams (2022 edition)
GoJS offers many advanced features for user interactivity such as drag-and-drop, copy-and-paste, transactional state and undo management, palettes, overviews, data-bound models, event handlers, and an extensible tool system for custom operations. They provide over 150 interactive samples to help you get started with diagrams such as BPMN, flowchart, state chart, visual...

Underscore.js Reviews

We have no reviews of Underscore.js yet.
Be the first one to post

Social recommendations and mentions

Based on our record, Underscore.js should be more popular than GoJS. It has been mentiond 24 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

GoJS mentions (13)

  • Ask HN: What do you use to create diagrams?
    Well I make https://gojs.net, so I just use the GoJS diagramming library to make diagrams :D Of course, its made for developers trying to make applications, not end users. - Source: Hacker News / over 1 year ago
  • Ask HN: What is the best software to visualize a graph with a billion nodes?
    My library (https://gojs.net) can do that easily. Give it a look, and if you think the price is acceptable for your project, contact us and we can make you a proof-of-concept. - Source: Hacker News / about 2 years ago
  • Your 14-Day Free Trial Ain't Gonna Cut It
    If you click on their username, it takes you to their profile. https://news.ycombinator.com/user?id=simonsarris. - Source: Hacker News / over 2 years ago
  • Burning money on paid ads for a dev tool โ€“ what we've learned
    Have spent six figures yearly on ads, mostly for reach for the developer-focused diagram library GoJS (https://gojs.net) > Each experiment will need ~$500 and 2 weeks I would add a zero if you want serious data. I would also double the timescale. $5,000 over 4 weeks I second the uselessness of Google Display, it might look like conversions numbers are good but they are 100% too good to be true. As soon as you look... - Source: Hacker News / almost 3 years ago
  • Any Ideas How to Create a Graph Builder UI in React?
    Used goJS in one project and konva in another. Source: over 3 years ago
View more

Underscore.js mentions (24)

  • JavaScript Awesome Package
    Underscore - JavaScript library that provides a whole mess of useful functional programming. - Source: dev.to / 6 months ago
  • JavaScript evolution: From Lodash and Underscore to vanilla
    Underscore was created by Jeremy Ashkenas (the creator of Backbone.js) in 2009 to provide a set of utility functions that JavaScript lacked at the time. It was also created to work with Backbone.js, but it slowly became a favorite among developers who needed utility functions that they could just call and get stuff done with without having to worry about the inner implementations and browser compatibility. - Source: dev.to / over 1 year ago
  • KlongPy: High-Performance Array Programming in Python
    There was a step-change improvement for me when I tried expressing some JS patterns via `underscore.js` instead of procedurally: eg: http://underscorejs.org/#each Thinking of something as `each | map | filter | sum` is waaay less buggy than writing bespoke procedural code to do the same thing. No doubt there is a "cost" to it as well, but the _abstraction_ is valuable. Now, if there were a "compiler" which could... - Source: Hacker News / over 1 year ago
  • 100+ Must-Have Web Development Resources
    Underscore.js: A utility library that offers a full set of functional programming helpers without extending any built-in JavaScript objects. - Source: dev.to / almost 2 years ago
  • Mastering Node.js
    Underscore contains just about every core utility method you want. - Source: dev.to / about 2 years ago
View more

What are some alternatives?

When comparing GoJS and Underscore.js, you can also consider the following products

mxGraph - mxGraph is a fully client side JavaScript diagramming library - jgraph/mxgraph

jQuery - The Write Less, Do More, JavaScript Library.

jsPlumb - jsPlumb is an advanced, standards-compliant and easy to use JS library for building connectivity based applications, such as flowcharts, process flow diagrams, sequence diagrams, organisation charts, etc. More than just a diagram library.

React Native - A framework for building native apps with React

Konva - Konva is 2d Canvas JavaScript framework for drawings shapes, animations, node nesting, layering, filtering, event handling, drag and drop and much more.

Babel - Babel is a compiler for writing next generation JavaScript.