en
Feedback
JavaScript

JavaScript

Open in Telegram

A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript 🚀 Don't miss our Quizzes! Let's chat: @nairihar

Show more

📈 Analytical overview of Telegram channel JavaScript

Channel JavaScript (@javascript) in the English language segment is an active participant. Currently, the community unites 31 150 subscribers, ranking 4 164 in the Technologies & Applications category and 12 815 in the India region.

📊 Audience metrics and dynamics

Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 31 150 subscribers.

According to the latest data from 18 September, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -99 over the last 30 days and by -9 over the last 24 hours, overall reach remains high.

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 6.21%. Within the first 24 hours after publication, content typically collects 2.30% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 1 935 views. Within the first day, a publication typically gains 718 views.
  • Reactions and interaction: The audience actively supports content: the average number of reactions per post is 5.
  • Thematic interests: Content is focused on key topics such as javascript, console.log(gen.next().value, processdata, remix, acc.

📝 Description and content policy

The author describes the resource as a platform for expressing subjective opinions:
A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript 🚀 Don't miss our Quizzes! Let's chat: @nairihar

Thanks to the high frequency of updates (latest data received on 19 September, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.

31 150
Subscribers
-924 hours
-407 days
-9930 days
Posts Archive
😉 Evan You's State of Vue 2026 Talk A month ago, Evan You (of Vue.js and VoidZero fame) gave his annual address. Less Vue-fo
😉 Evan You's State of Vue 2026 Talk A month ago, Evan You (of Vue.js and VoidZero fame) gave his annual address. Less Vue-focused than usual (though Vapor Mode is “almost ready”), the talk focuses on Vite-ecosystem updates covering Vite 8, Vite+, and Void. Evan You / Vue.js Amsterdam

What is the output?
Anonymous voting

CHALLENGE
const counter = (function () {
  let count = 0;
  const history = [];

  return {
    increment(step = 1) {
      count += step;
      history.push(count);
      return this;
    },
    decrement(step = 1) {
      count -= step;
      history.push(count);
      return this;
    },
    getHistory: () => history,
    getCount: () => count,
  };
})();

counter.increment(5).increment(3).decrement(2);

console.log(counter.getCount(), counter.getHistory().join(" -> "));

😮 HyperFrames: Write HTML and JavaScript to Create Videos An open-source framework for creating and rendering videos with HT
😮 HyperFrames: Write HTML and JavaScript to Create Videos An open-source framework for creating and rendering videos with HTML and JavaScript. Essentially a simpler non-React alternative to Remotion. It includes a variety of built-in blocks/components for common video effects and elements, and can also composite existing video and audio clips. GitHub repo. HeyGen

What is the output?
Anonymous voting

CHALLENGE
const user = {
  profile: {
    name: "Marcus",
    score: 0,
    nickname: null,
    bio: undefined,
  },
};

user.profile.nickname ??= "Anonymous";
user.profile.bio ??= "No bio provided";
user.profile.score ??= 100;
user.profile.rank ??= "Beginner";

const { name, score, nickname, bio, rank } = user.profile;
console.log(`${name} | ${score} | ${nickname} | ${bio} | ${rank}`);

👀 Windows 95 as an Electron App A full Windows 95 experience as an app on macOS, Linux, and Windows, built upon the v86 Java
👀 Windows 95 as an Electron App A full Windows 95 experience as an app on macOS, Linux, and Windows, built upon the v86 JavaScript + WASM emulator. v5.0 is a big release as you can mount a folder from your machine into it as a Z: drive, mount ISOs as CD-ROMs, there’s a shared clipboard, and Internet access has been improved. I’m so trying to get Microsoft Encarta’s Mindmaze running on this… Felix Rieseberg

What is the output?
Anonymous voting

CHALLENGE
class Animal {
  #sound;

  constructor(name, sound) {
    this.name = name;
    this.#sound = sound;
  }

  speak() {
    return `${this.name} says ${this.#sound}`;
  }

  static create(name, sound) {
    return new this(name, sound);
  }
}

class Dog extends Animal {
  #tricks = [];

  constructor(name) {
    super(name, "woof");
  }

  learn(trick) {
    this.#tricks.push(trick);
    return this;
  }

  perform() {
    return `${this.name} performs: ${this.#tricks.join(", ")}`;
  }
}

const rex = Dog.create("Rex", "bark");
rex.learn("sit").learn("shake").learn("roll over");

console.log(rex.speak());
console.log(rex.perform());
console.log(rex instanceof Animal);
console.log(rex instanceof Dog);

🤔 Boneyard: Auto-Generated Skeleton Screens for Your UI Snapshots your real UI and captures a flat list of skeleton ‘bones’
🤔 Boneyard: Auto-Generated Skeleton Screens for Your UI Snapshots your real UI and captures a flat list of skeleton ‘bones’ which are positioned, sized rectangles that mirror the page exactly. Supports React, Preact, React Native, Vue, Svelte, and Angular. 0xGF

What is the output?
Anonymous voting

CHALLENGE
const values = [0.1 + 0.2, NaN, Infinity, -0, 42.6789];

const results = values.map((v, i) => {
  if (i === 0) return Number.isInteger(v) + " " + v.toFixed(1);
  if (i === 1) return Number.isFinite(v) + " " + Number.isNaN(v);
  if (i === 2) return Number.isFinite(v) + " " + isFinite(v);
  if (i === 3) return Object.is(v, -0) + " " + (v === 0);
  if (i === 4) return v.toPrecision(4) + " " + Math.trunc(v);
});

results.forEach(r => console.log(r));

🌕 Installing Every Firefox Extension One person’s entertaining and heroic tale of wielding JavaScript to explore the Firefox
🌕 Installing Every Firefox Extension One person’s entertaining and heroic tale of wielding JavaScript to explore the Firefox extension ecosystem. And what oddities there are within! I enjoyed this a lot, it’s like Alice in Wonderland for developers. More spelunking like this please. Jack Cab

What is the output?
Anonymous voting

CHALLENGE
const prefix = 'user';
const id = 42;
const role = 'admin';

const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1);

const profile = {
  [`${prefix}_${id}`]: 'Marcus',
  [Symbol.iterator]: null,
  [`get${capitalize(role)}`]: () => 'full-access',
  [`${prefix}Count`]: 3,
};

const dynamicKey = `${prefix}_${id}`;

console.log(
  profile[dynamicKey],
  profile[`get${capitalize(role)}`](),
  profile[`${prefix}Count`] * id,
  Object.keys(profile).length
);

😮 Under the Hood of MDN's New Frontend The hugely useful MDN has rebuilt its frontend stack from the ground up, ditching Rea
😮 Under the Hood of MDN's New Frontend The hugely useful MDN has rebuilt its frontend stack from the ground up, ditching React for web components and a homegrown server component system. A great read on building a modern, content-heavy site without shipping unnecessary JavaScript on every page. Leo McArdle (MDN)

What is the output?
Anonymous voting

CHALLENGE

const p1 = new Promise((resolve) => {
  console.log("A");
  resolve("B");
});

const p2 = p1.then((val) => {
  console.log(val);
  return "C";
});

p2.then((val) => {
  console.log(val);
});

console.log("D");

What is the output?
Anonymous voting

CHALLENGE

const str = "  Hello, World!  ";

const result = str
  .trim()
  .split(", ")
  .map((word, i) => {
    return i === 0
      ? word.toUpperCase()
      : word.replace(/!$/, "").split("").reverse().join("") + "?";
  })
  .join(" | ");

const [first, ...rest] = result.split(" | ");
const final = `${first} | ${rest.join(" & ")}`;

console.log(final);