scratch 3 en offline sur tout support

Voilà un bien épineux problème. Je suis sous linux et il n’existe pas de version scratch3.0 offline pour linux.

J’ai donc un premier temps repris une archive zip que l’académie de grenoble met à disposition et qu’il suffit de décompresser et lancer index.html.

Bon seul petit hic, ce n’est pas tout-à-fait la dernière version (cela se voit notamment sur le choix de langue qui n’est pas identique à la version proposée sur le site de scratch.edu). On voit également qu’on peut modifier le nom du projet pour l’enregistrement directement.

J’ai donc commencé à chercher comment compiler la dernière version de scratch et je l’ai mise à disposition pour vous!

Je vais vous indiquer aussi la méthode pour compiler sa propre version de scratch.

I.La version mathix de scratch.

J’ai donc ôté les trucs inutiles et notamment les parties qui ne sont pas possibles d’utiliser en hors-ligne (partage, compte personnel etc.)

C’est accessible ici
Et la version hors-ligne est téléchargeable là. il suffit ensuite d’exécuter le fichier index.html avec un explorateur internet.

Ce côté pratique c’est que c’est utilisable également sur des pcs où on ne peut installer la version desktop pour des raisons de privation de droits d’administration .

II. Comment faire soi-même la compilation de scratch?

Il faut au préalable installer git, npm et nodejs.

Voici la procédure sous linux que j’ai faite. (pour windows ce sont les mêmes commandes dans un prompt)

J’ai cloné le dépôt git de scratch (on récupère en fait le programme scratch) :

git clone https://github.com/LLK/scratch-gui.git
cd scratch-gui

on installe les bibliothèques adéquates.

npm install

Puis pour le compiler (ça prend quelques minutes)

NODE_ENV=production BUILD_MODE=dist npm run build

(pour cacher certains boutons, j’ai modifié, avant compilation, les fichiers css en ajoutant des display:none )

Pour tester votre version en live (pas besoin donc de recompiler scratch ce qui peut mettre quelques minutes), on peut passer par son exécution direct.

npm start

et vous aurez accès à votre version en allant sur http://0.0.0.0:8601 (voici ci-dessous ce qu’on obtient en lançant la commande)

Maintenant il y a plus qu’à!

A propos de l'auteur :

Enseignant de mathématiques : collège Belle-vue de Loué Membre de l'équipe du "Rallye mathématique de la Sarthe" blog : mathix.org

a écrit 1155 articles sur mathix.org.

Vous avez aimé cet article ? Alors partagez-le avec vos amis en cliquant sur les boutons ci-dessous :

Licence Creative Commons

20 commentaires

  1. Super merci 🙂
    La version de Grenoble a encore l’avantage de pouvoir enregistrer les projets sur tablettes en plus d’y être exécutée en local. Je n’arrive par contre toujours pas à trouver un contact avoir plus d’informations sur le futur de cette version.
    Reste plus qu’à trouver le moyen pour exporter les programmes en app/widget indépendants de l’environnement.
    Je referai bien une version avec une traduction plus correcte aussi parce que dans le site dédié, ça ne bouge pas trop quand on souligne les erreurs ou maladresses actuelles.

    1. Tout à fait. Je disais juste : sur tablettes, l’enregistrement des projets pour récupérer les fichiers .sb3 ne fonctionne pas avec la version officielle (je n’ai pas refais de test depuis 2 semaines sauf sur iPad/Documents ou cela ne fonctionne toujours pas) alors que Grenoble a fait ce qu’il fallait pour que cela fonctionne. Après il y a plein d’autres détails qui ne fonctionnent pas sur tablettes, j’espère que le MIT va corriger ça.

  2. Bonjour,
    Vous pouvez également générer une version statique redistribuable aux élèves, qui peut être installé directement sur les postes/tablettes/…

    Il suffit pour cela de taper la commande :
    NODE_ENV=production BUILD_MODE=dist npm run build

    Il fabriquera alors une image statique de la version de Scratch 3 dans le dossier build.

    Vous pouvez alors copier l’ensemble du dossier build sur tous les supports et lancer simplement le fichier index.html pour commencer. J’ai également fait ma propre distribution en y ajoutant mes propres blocs, notamment une extension constantes qui me permet d’avoir les blocs : Vrai/Faux/Pi/e/… et une extension Raspberry-Pi qui me permet de communiquer avec un service installé sur Raspberry-Pi pour commander des diodes, des petits écran LCD, … et recevoir des informations de différents capteurs (interrupteur/température/…)

    Cordialement,
    Jean BLIN

  3. Bonjour,
    Je cherche un peu d’aide pour pouvoir avoir scratch 3 avec linux.
    En tatonnant beaucoup j’ai pu avoir scratch 2 sur linux lite 3.8 mais j’ai beaucoup de bug de sauvegarde ce qui devient très problèmatique en classe.
    J’aimerai donc pouvoir mettre scratch 3 .
    Nous avons de bons vieux netbook (d’où linux lite)
    Petit soucis avec les fichiers de grenoble ou celui-ci:
    « your browser does not support webgl » (affiché après le chargement de la page)
    J’ai tenté les aides trouvées (about:config …/ passage a linux lie 4.8) mais j’arrive à rien.

    Si vous avez une idée ce serai super !

    Merci

    1. Alors pour firefox en version 71 normalement ça devrait être ok… Etrange
      Dans about.config on a parfois « webgl.force-enabled » et donc il faut changer la valeur à « true ». Et aussi on a « webgl.disabled » qui peut exister et donc il faut changer la valeur à « false ».

  4. Pourriez-vous faire une version avec le Byob (Snap)?
    Et si vous pouviez en faire un paquet installable dans Synaptics, pour Scratch ou Byob, je vous béni de toutes mes forces.

  5. Bonjour, est-ce que vous savez si c’est possible de modifier les sources de Scratch pour enlever les fonctionnalités liées aux sons, aux costumes et aux arrières plans ? (en retirant de l’affichage les onglets et les différents boutons j’imagine ?)
    Et de mettre un crayon en sprite par défaut au lieu du chat ?

  6. Un grand merci pour le boulot et le partage de cette version.
    Elle fonctionne très bien sur des vieux laptops Windows10 sur lesquelles le Scratch3 Offline officiel crashe.

Répondre à p Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *