When comparing Marko vs Sencha Ext JS, the Slant community recommends Sencha Ext JS for most people. In the question“What are the best client-side JavaScript MV* frameworks?” Sencha Ext JS is ranked 12th while Marko is ranked 17th. The most important reason people chose Sencha Ext JS is:
The Sencha documentation is comprehensive, with detailed documentation and a number of examples displaying the various widgets, tools and themes.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Extremely fast
Marko consistently outperforms other alternatives in code benchmarks, both on rendering speed and compilation time.
Pro Custom tags
Custom tags provide a simple mechanism for embedding more complex components into a template by extending the HTML grammar with support for new tags. For example:
<div>
<say-hello name="World"/>
</div>
Custom tags are easy to create since they just map to a JavaScript "renderer" function as shown below:
module.exports = function sayHelloRenderer(input, out) {
out.write('Hello ' + input.name + '!');
}
Custom tags support nested content:
<fancy-overlay title="My Title">
This will be the body content of the overlay
</fancy-overlay>
Custom tags can also have parent/child relationships to support more complex use cases such a "tabs" component with nested "tab" components:
<fancy-tabs>
<fancy-tabs:tab label="Home">
Content for Home
</fancy-tabs:tab>
<fancy-tabs:tab label="Profile">
Content for Profile
</fancy-tabs:tab>
<fancy-tabs:tab label="Messages">
Content for Messages
</fancy-tabs:tab>
</fancy-tabs>
Pro Streaming
Streaming allows progressive HTML rendering and reduces time to first byte.
Pro Server-side rendering
Marko supports both server-side and client-side rendering.
Pro Marko Widgets
Marko Widgets allows UI components (rendering + behavior) to be built using Marko.
Pro Compiled templates are readable CommonJS modules
Avoids ugly globals and "named" templates.
var template = require('./template.marko');
var html = template.renderSync({name: 'Frank'});
Pro Asynchronous rendering
Marko makes additional asynchronous calls after the view rendering has begun.
Pro Lightweight runtime (~4 KB gzip)
Pro Easy to integrate with express.js
Easy Integration with Express and Node
Pro Documentation is well maintained and helpful
The documentation is extensive and very helpful. It also contains several sample applications which are very useful.
Pro Allows JavaScript expressions
JavaScript expressions can be executed inside the templates.
Pro Simple and readable syntax
Marko has a HTML-like syntax which should be easy to read and understand for everyone who has even minimal experience in web development.
Pro Short learning curve
It is easy to get up to speed and understand what is going on in a very short period of time.
Pro Small compiled templates
Marko's compiled templates are usually very small, as proven by benchmarks.
Pro Lots of tests
To prevent regressions, Marko includes a full suite of tests. The testing harness renders a collection of templates and does an exact string comparison to make sure that the tests rendered exactly as expected. There are also API tests, and negative tests to make sure that errors are reported in a friendly way.
To run tests:
git clone https://github.com/marko-js/marko
cd marko
npm install
npm test
Pro Friendly compile-time error messages
Error messages come in an easy to read and friendly format, with valid stack traces and file formats of the file(s) which brought the error(s).

Pro Concise and Mixed syntax
The Concise syntax type lets you write Marko with a Jade-like indentation based syntax, and the Mixed mode lets you combine in regular HTML-style syntax.
Pro Server and client logic can easily be expressed within the same template
Pro Has a very active and interactive community
Marko's development community is rather small compared to other frameworks but community is well mannered and active. You can chat with the core development team using gitter.im
Pro Comprehensive documentation
The Sencha documentation is comprehensive, with detailed documentation and a number of examples displaying the various widgets, tools and themes.
Pro Supports MVC and MVVM development
Pro Supports Web and Mobile deployment out of the one framework or codebase
Pro Support for easy theming of applications
Pro Visual Design tool available
The Sencha Architect product allows you to visually build your application, or rapidly prototype a system.
Pro IDE Plugins available
A number of plugins are available for some of the commonly used IDEs (eg: JetBrains, Eclipse, Visual Studio), providing templates, refactoring support, hinting and code completion/generation, as well as management of includes and other time-saving features.
Pro Charting package included
Cons
Con If you want to get the full experience you have to use NodeJS
To use markojs's most popular feature: SSR although you can use any language based server as a backend. It is rather complicated.
Con Very opinionated and not customizable enough
Some custom use cases are not possible. For example, trying to build an AMP page using Marko can be very challenging (special style tag requirements are hard to work with, also, Marko by default inserts a script tag into the rendered output html which is invalid in AMP and needs to be manually removed, etc..)
Con Sencha CMD is bloated and frustrating to work with
To do any meaningful development, you are stuck with CMD. There is a gulp task that will handle the JS concatenation, but there is nothing outside of CMD that can handle theming in their ecosystem.
In addition, CMD is based on Java, and is very heavy to run (600MB+ on Windows 10 to watch for changes in the application and recompile).
Con Sencha CMD (their CLI) is under documented, and out of date
Their latest release of CMD changed some configuration locations, but the documentation was not updated to reflect this. There is no reference guide on the json configuration files, other than the (unfortunate use of) comments in the generated json files.
Con They use proprietary extensions to SASS, making it incompatible with anything but their Fashion processor
On the plus side, you do not have to install ruby alongside CMD for more recent versions of ExtJS. However, their Fashion processor seems to only be available through CMD.
Con Too often breaking changes between versions. They have little concept of backwards compatibility
Compounded by the fact that there are now two "toolkits" in the same "version" of ExtJS, with certain components not existing in one vs the other.
Con The IDE tools are not sold separately - you must purchase the appropriate license pack
You get all the IDE plugins, even if you only need one. They should offer sell them individually, or continue to bundle them with a dev license pack.
Con Difficult to integrate with 3rd party software
Any third party library you wish to include has to be wrapped in some sort of component adapter. You have to do a lot of tweaking to get the build process right if you want the 3rd party lib to be bundled into your application in the right order.
Con Can be expensive
The framework is a commercial package, and the recent decision to start with a minimum of 5 users may rule out smaller developer teams or startups. Recently, they have started a program that allow essentially what are contractors to purchase single licenses, but not individual, independent developers.
