И да, соглашусь с мнением выше, Modx к сожалению с

И да, соглашусь с мнением выше, Modx к сожалению сильно устарел, несмотря на то, что работы над ним ведутся достаточно активно. Под капот заглядываешь и плакать хочется... Что касается менеджера, тоже соглашусь, ExtJS сам по себе весьма плох, старая версия все сильно усугубляет. Весь фреймворк в целом требует полной переработки на мой взгляд и с точки зрения архитектуры и с точки зрения реализации. Время идет, давно появились PSR стандарты, замечательная вещь, просто необходимая я считаю как для универсальности интерфейсов и разных механизмов так и для повышения культуры кода. Если кто не смотрит, загляните в расширения, кровь из глаз... Такое нельзя на свет выпускать :-).

Сам давно использую Modx, не думайте, я не тролю, просто печально, что проект так отстал, а в свете данной статьи этот контраст настолько силен, что люди выше задаются вопросом как одно с другим совместить ))). Из моего сообщения выше видно что в принципе никак ))). GraphQL читает данные напрямую из базы данных, доступность таблиц / полей и отношения между ними описывается в его моделях, по сути весь фронт вместе с бэком для фронта о Modx вообще не знает :-), а все потому, что Modx слишком устарел...

В любом случае автору за статью спасибо. Хотел бы один момент отметить, вот так объявлять state неправильно:

class PositionedSnackbar extends Component {
  state = {
    open: false,
    vertical: null,
    horizontal: null,
  };

Правильно в конструкторе:

class PositionedSnackbar extends Component {
  constructor(props) {
    super(props);
    this.state = {
      open: false,
      vertical: null,
      horizontal: null,
    };
  }

Вот пример в доке:

https://facebook.github.io/react/docs/state-and-lifecycle.html#adding-lifecycle-methods-to-a-class