Obter Nome da Categoria usando JS

Pode haver uma maneira de fazer isso de forma consistente tanto nas páginas de tópicos quanto nas de categorias, mas obtive o ID da categoria de duas maneiras diferentes… uma para páginas de categoria:

<script type="text/discourse-plugin" version="0.8">
const container = Discourse.__container__;
const controller = container.lookup('controller:navigation/category');

api.onPageChange((url, title) => {
  console.log(controller.get("category.id"));
});
</script>

e uma forma semelhante para páginas de tópicos:

<script type="text/discourse-plugin" version="0.8">
const container = Discourse.__container__;
const controller = container.lookup('controller:topic');

api.onPageChange((url, title) => {
  console.log(controller.get("model.category_id"));
});
</script>

No exemplo da página de categoria, você pode usar alternativamente category.name ou category.slug, mas no modelo de tópico apenas o category_id está disponível, então você precisaria fazer um pouco mais de trabalho para obter o nome. O ID pode ser um caminho melhor de qualquer forma, pois é consistente mesmo que o nome ou o slug da categoria mudem.