Skip to content

Add Internet Radio extension - #616

Open
Ikelene wants to merge 2 commits into
PenguinMod:mainfrom
Ikelene:internet-radio
Open

Add Internet Radio extension#616
Ikelene wants to merge 2 commits into
PenguinMod:mainfrom
Ikelene:internet-radio

Conversation

@Ikelene

@Ikelene Ikelene commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Internet Radio allows you to stream live audio from any internet radio station
idk live music player extension

@sakurabuilder

sakurabuilder Bot commented Aug 10, 2026

Copy link
Copy Markdown

❌ Preview build failed


permission denied while trying to connect to the docker API at unix:///var/run/docker.sock

Failed on dd4f5eb

@RedMan13 RedMan13 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and also, was this made with ai?

id: 'internetradio',
name: 'Internet Radio',
color1: '#00BFA5',
color2: '#009688',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why does the indentation just disappear here

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think something happened when I saved from my editor to my server I'm honestly not sure what happened


class InternetRadioExtension {
constructor() {
if (typeof Scratch !== 'undefined' && Scratch.vm) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

neither of these will ever be false. Scratch cant since its required to even get to this point in the code in the first place, and vm will not because PenguinMod will always unsandbox this extension.

{
opcode: 'getFrequencyVolume',
blockType: Scratch.BlockType.REPORTER,
text: 'volume on [SIDE] side',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this block makes no sense. its an exact duplicate of getFrequencyBand but worse because you cant tell what frequency your actually reading.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm slow I guess I forgot I already have a block that does the same thing 🙇‍♀️

{
opcode: 'getFrequencyBand',
blockType: Scratch.BlockType.REPORTER,
text: 'frequency band [BAND] volume',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there should be a block to go with this that says what the maximum available frequency is.

const apiUrl = `https://de1.api.radio-browser.info/json/stations/search?url=${encodeURIComponent(url)}&limit=1`;

return fetch(apiUrl)
.then(response => response.json())

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MyEvilIndentation.js


getInfo() {
return {
id: 'internetradio',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i compltely forgot to check the id 🎉 this should really include your name.

@Ikelene

Ikelene commented Aug 11, 2026

Copy link
Copy Markdown
Contributor Author

and also, was this made with ai?

I only use AI to fix small stuff / problems in my code but not to write the entire file for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants