A BIOS update for the Framework Laptop 13 with AMD Ryzen 7040-series processors is bricking the systems, multiple users have reported online.
Framework started shipping pre-built Ryzen 7040-based Framework Laptop 13 computers and compatible motherboards in 2023. In June 2026, Framework released BIOS 3.20 for the devices. The update adds mainboard support for features, including a haptic touchpad and new speakers, for the higher-end Framework Laptop 13 Pro and fixes issues, including one “where the Battery Extender status was reported incorrectly following a reboot, hibernation, or shutdown after the timer had expired," per a post on Framework’s forum from an employee.
Some users say that they installed the update successfully.
![]()
![]()
Compare five Mac Studio alternatives for professional graphics, creative work, local AI, and repairability, including pricing, strengths, and trade-offs.
The post 5 Mac Studio Alternatives for 2026 appeared first on TechRepublic.
I've liked the Framework Laptop 13 since the first time I used it, partly because I just think the idea of a repairable and upgradeable laptop is cool and partly because it's not Yet Another Ultraportable Trying To Be A MacBook Air Clone. But the design has always had real shortcomings—the most noticeable and serious being its mediocre battery life.
Enter the Framework Laptop 13 Pro. While all previous Laptop 13 refreshes have tinkered around the edges with the original design (a tweaked lid design here, new hinges or new speakers there), the Laptop 13 Pro is as close as we've gotten to a second-generation revision for the original design.
This means that it breaks backward compatibility for some (but not all) Laptop 13 components, most notably the bottom case, the keyboard and trackpad, and the original 55 WHr and 61 WHr battery designs. But by allowing itself to make larger changes to the design, Framework has made major strides in battery life and general fit and finish.
![]()
![]()
![]()
Mise à jour : Le MiniPC Framework Desktop en version Ryzen AI Max+ Pro 495 avec 192 Go de mémoire vive vient d’ouvrir ses précommandes. Deux solutions s’offrent à vous pour l’acquérir. Le modèle « DIY Edition » à monter vous-même y est proposé à 7 659€. À ce prix, il faudra donc de l’huile de coude mais également un stockage, celui-ci n’est pas compris. L’autre option est le modèle « pre-built » avec un Windows 11 ou une Fedora 44 KDE Plasma installés sur un SSD de 2 To. Là vous partez sur un 8 739€ bien tassé. L’expédition est prévue pour… novembre.
![]()
Billet original du 23/07/2026 : Vous reconnaissez le MiniPC Framework Desktop avec sa façade modulaire et son gabarit de 4.5 litres. L’engin a été lancé en février 2025 avec la première génération de processeurs Strix Halo. Les fameux Ryzen AI Max+ Pro 395 secondés par un maximum de mémoire vive.
![]()
En 2026, AMD lance le Ryzen AI Max+ Pro 495, une version améliorée du 395 avec quelques poussées de performances assez marginales. La structure est identique avec toujours une architecture Zen 5 développée sur 16 Coeurs et 32 Threads et le circuit graphique Radeon 8065S. Les fréquences ont été très légèrement optimisées de 100 MHz et cela se ressent avec des performances qui ne décollent que très marginalement de l’offre 395…
Mais alors pourquoi passer le Framework Desktop en Ryzen AI Max+ Pro 495 ? Parce que la vraie nouveauté de cette puce est dans l’explosion de sa capacité de gestion mémoire. Si le 395 est capable de manger 128 Go de LPDDR5X au petit-déjeuner, le 495 peut avaler jusqu’à 192 Go de RAM. Un « détail » qui va permettre d’avaler tout cru des LLM beaucoup plus larges pour une exploitation d’IA locale.
Le Framework Desktop à son lancement en février 2025
Il sera donc possible de commander cette nouvelle version du Desktop avec 192 Go de LPDDR5X en échange, bien entendu, d’une jolie somme. La marque n’a pas précisé de prix pour le moment, mais elle n’a pas cessé d’augmenter les tarifs de ses engins au fil des mois pour faire face à la hausse des composants. La version 395+ 128 Go est ainsi passée de 2000$ en début d’année 2025 pour son lancement à 3449$ aujourd’hui.
Le Framework Desktop aujourd’hui
Le marché local fait donc lui aussi le pari de la mémoire vive et assèche également l’offre de mémoire dont il dispose. Non pas que ce soit le plus gourmand par rapport à la production actuelle. Les centres de données IA sont beaucoup, beaucoup plus demandeurs. Mais des engins de ce type participent à creuser la propre tombe du secteur. Le volume des ventes de Framework sur cette machine doit être marginal par rapport aux Top 10 des fabricants de PC… mais la majorité de ces fabricants vont ou ont déjà emboîté le pas de la même stratégie.
Paradoxalement, alors que la mémoire vive est à son tarif le plus haut, les engins de ce type se vendent beaucoup moins bien avec peu de mémoire. C’est finalement assez logique, l’offre PC est très onéreuse en ce moment et acheter un engin avec 32 Go ne résoudra rien de spécial niveau usage par rapport à un engin de la génération précédente. Par contre, la même machine avec 128 ou, désormais, 192 Go de mémoire vive, est beaucoup plus intéressante puisqu’elle ouvre les portes d’une exploitation d’IA locale. Avec 128 Go vous pouvez construire 8 machines équipées de 16 Go, avec 192 Go ce sont 12 machines qui peuvent sortir d’un atelier de montage. Autrement dit, l’augmentation des capacités de gestion de la mémoire vive du Ryzen AI Max+ Pro 495 va encore plus limiter la production de PC globale.
![]()
Par ces nouveaux usages, l’IA étouffe littéralement à petit feu le marché d’un PC personnel classique. Le fait que les sociétés qui font ce marché foncent dans ce déploiement spécifique est totalement compréhensible, mais cela va tendre encore plus fortement les stocks. Et, par effet rebond, pousser encore plus les prix à la hausse. Un effet dont se plaint en permanence Framework puisque cela affecte son secteur d’activité principal par la hausse constante des prix. La dernière mise à jour de leur blog à ce sujet date… d’hier.
Et oui, le serpent se mord la queue.
Framework pousse son Desktop vers le Ryzen AI Max+ Pro 495 et 192 Go de mémoire © MiniMachines.net. 2026
![]()
Framework a toujours été assez transparent sur ses soucis de composants. Le constructeur a appris à ses dépens que le marché frappait tout le monde de manière différente et fait depuis des points réguliers sur sa propre situation.
Framework Laptop 13 Pro
Et si ces derniers mois Framework proposait des informations plutôt négatives avec des hausses de tarifs à répétition, les dernières nouvelles sont plutôt bonnes. Un nouveau SSD issu des productions d’ADATA semble avoir fait son chemin vers leurs ateliers. Les SSD NVMe PCIe Gen 5 intégrés dans le Framework Laptop 13 Pro seront désormais des XPG MARS 970 qui offriront, je cite, « de meilleures performances, efficacité et une meilleure fiabilité » que les anciens SSD. Cerise sur le gâteau, ils sont proposés à un tarif meilleur marché que les modèles qu’ils vont remplacer.
Les précommandes du Framework Laptop 13 Pro n’ayant pas encore été expédiées puisque toutes les machines ont été retardées, les équipes vont donc remplacer tous les SSD par ces nouveaux modèles avec un joli bonus. Les SSD XPG MARS 970 n’existent qu’en 1 et 2 To mais comme le modèle 1 To est moins cher que le modèle de SSD de 500 Go précédemment choisi, les personnes ayant commandé des machines avec 500 Go auront droit au nouveau stockage de 1 To. Toutes les nouvelles commandes de cette machine seront livrées en SSD ADATA.
Le constructeur suggère que plusieurs signaux annoncent une nette augmentation des prix des processeurs pour très bientôt. Ce qui va affecter l’ensemble des machines. La marque vous encourage donc à passer vos précommandes rapidement si vous voulez acheter un de ces modèles.
Ce n’est pas le premier constructeur à faire écho de cette hausse. Si la proposition de ce SSD ADATA est conjoncturelle et reste une excellente nouvelle pour la marque, le marché est tout entier dirigé vers la hausse. Encore une fois, la majorité des contrats passés entre les constructeurs de PC et leurs fournisseurs se termine entre mai et juin. Ces contrats forcent les fabricants de mémoire, stockage, écrans, processeurs et autres à respecter des prix décidés en début d’année 2026 ou à la fin de l’année 2025. Quand ces contrats seront terminés, d’autres seront négociés. En général cela survient pour les engins qui commencent à entrer en production en juillet pour la rentrée de septembre. À ce moment précis, de nouveaux contrats sont signés et vont durer plus ou moins longtemps suivant les marchés et leurs fluctuations.
Les échos que j’ai de la situation actuelle sont assez simples :
Sur la mémoire vive, les contrats sont quasiment tous tombés avant la date de fin de ceux-ci. Les pénalités encourues pour ne pas livrer les composants exigés contractuellement étaient inférieures aux prix du marché. Quand un fournisseur de RAM devait payer 10 ou 20% du prix des composants non livrés, le marché lui proposait entre 300 et 400% de marge supplémentaire par rapport au prix négocié. Les fabricants de mémoire ont donc accepté de payer les pénalités pour dégager plus de bénéfices. Énormément de production s’est réorienté vers la mémoire HBM au détriment de la production de DDR5 et les nouvelles usines en cours de développement ne seront pas sorties de terre avant 2028.
Sur le stockage, c’est un peu la même chose mais en moins pire. D’abord parce que l’offre est plus large que la mémoire vive, la concurrence est plus large, mais aussi parce que le marché des Datacenters s’intéresse moins à certaines références. Là où la mémoire a été réorientée vers la DDR5 et la HBM, les puces des SSD sont toujours plus largement fabriquées avec des contrôleurs très différents dans des assemblages de contrôleurs et de modules aux capacités et vitesses plus variables.
Processeurs, c’est un peu plus tendu. AMD comme Intel ont annoncé des augmentations de prix. La demande en puces est également énorme et les prix de fabrication sont à la hausse aussi bien dans les usines d’Intel que dans les usines de TSMC ou GlobalFoundries. Les calendriers sont très chargés et la situation géopolitique de ces derniers mois semble avoir affecté le prix de production à cause de l’augmentation du prix de l’énergie. Bref, les prix grimpent.
Sur le reste, notamment les affichages mais aussi certaines pièces comme les pavés tactiles ou les batteries, la baisse de volume de production a conduit certaines marques à augmenter leurs prix de quelques dollars pour compenser la faiblesse de leurs ventes.
Mis bout à bout, l’ensemble de ces éléments va tirer les prix des machines largement vers le haut pour toute la fin de l’année. Et probablement toute lannée 2027 également…
Framework a de bonnes et de moins bonnes nouvelles sur ses tarifs © MiniMachines.net. 2026
![]()
Le SoC Spacemit K3 est une solution RISC-V d’une marque que l’on a déjà croisée à plusieurs reprises sur Minimachines avec des déploiements variés dans diverses cartes de développement.
Il est ici proposé dans un format pensé pour être intégré aux Framework Laptop 13, afin de remplacer les puces plus classiques livrées par défaut par des puces évidemment plus exotiques et spécialisées, mais qui vont intéresser les développeurs.
![]()
Il faudra tout de même être motivé, réellement motivé, car la carte DC-ROMA RISC-V proposée par DeepComputingg est au prix de 612.95€ Hors Taxes et hors frais de port. Pour ce tarif, vous obtiendrez un modèle complet et presque prêt à l’emploi puisque la carte propose bien un SoC et 16 Go de mémoire vive LPDDR5 soudée, elle n’embarque pas de stockage. On pourra lui ajouter un SSD au format M.2 2280 compatible avec les standards NVMe ou SATA3. Un lecteur de cartes MicroSDXC sera également intégré.
![]()
Vous pourrez également ajouter des options avec votre carte. La version de base propose le fameux boîtier de Cooler Master ainsi qu’un module Wi-Fi et une carte de débug (oui parce que ne vous y trompez pas, ce genre de cartes est avant tout fait pour les développeurs chevronnés). Une version « standard » est proposée avec un module d’extension USB Type-C et un SSD de 1 To et enfin le modèle « Pro » est fourni avec un stockage et deux extensions Type-C et toujours un SSD de 1 To. Les prix montent suivant les modèles pour atteindre 1314.95€ en version 16Go/1To. Et cela peut même gonfler encore un peu plus si vous choisissez l’option 32 Go de mémoire pour la version Pro, à ce moment-là, il faudra débourser 1577.95€ pour la carte.
![]()
Totalement compatible avec le 13 pouces de Framework, la DC-ROMA RISC-V peut également être utilisée en solo en l’intégrant comme une sorte de MiniPC dans le boitier de Cooler Master co-développé avec Framework.
![]()
Si DeepComputing propose cette carte, ce n’est pas vraiment pour séduire les particuliers. L’idée est plus de proposer une base de travail et de développement clé en main pour optimiser code et accessoires pour la puce SpacemiT K3. La plateforme est donnée comme « compatible » avec Ubuntu 26.01. Sachant que le constructeur indique que cette distribution est limitée à une exploitation par des développeurs, mais pas vraiment « grand public ». À terme, ce genre de carte SoC SpacemiT K3 permettra sans doute de développer des outils matériels et logiciels qui seront ensuite déployés dans des formats très différents d’une carte de ce type. DeepComputing fournit un environnement de travail professionnel pour des industriels qui proposeront ensuite des solutions variées.
Le gros avantage pour un fabricant qui déploie son produit sur cette plateforme RSIC-V est l’absence de royalties et un coût de fabrication qui peut être extremement bas. Ce qui a énormément de sens si votre produit est destiné à une production industrielle de millions d’unités. Les investissements en amont représentent de sacrées économies en aval.
SpacemiT K3
8 cœurs 64-bit RISC-V X100 “big” cadencés à 2.4 GHz
8 cœurs IA RISC-V A100
Circuit graphique Imagination Technologies BXM4-64-MC1 GPU
Décodeur vidéo H.265, H.264, VP9 up to 4K @ 120 FPS
Encodeur vidéo H.265, H.264 up to 4K @ 60 FPS
NPU 60 TOPS (INT4)
Allez vous RISC-V votre portable Framework Laptop 13 ? © MiniMachines.net. 2026
Whether you're a gamer trying to play recent AAA titles at high resolutions and maxed-out settings or an AI enthusiast trying to run models locally, we've reached the point where a GPU with 8GB of video memory is a pretty limiting bottleneck. But because of ongoing memory shortages and price spikes, it's also a uniquely bad time for GPU makers to attempt to fix this problem—rumors suggested that a RAM-boosting mid-generation "Super" refresh for Nvidia's RTX 50-series GPUs was quietly delayed or canceled earlier this year, at least in part because of memory costs.
One of Nvidia's GPUs is getting a RAM upgrade, according to an announcement the company buried at the bottom of a blog post about a routine Game Ready driver update. The laptop version of the GeForce RTX 5070 is getting a bump from 8GB to 12GB of GDDR7, a 50 percent increase that should reduce some performance bottlenecks and generally future-proof the GPU.
Otherwise, the 12GB version of the mobile RTX 5070 is the same as the 8GB version. The RAM is still connected to the GPU with a 128-bit memory interface, and the GPU still has 4,608 CUDA cores. The mobile 5070 uses the same GB206 silicon die as the desktop RTX 5060 instead of the larger, more powerful GB205 die in the desktop version of the RTX 5070, meaning that despite the RAM increase, the desktop version remains a much more powerful GPU.
![]()
![]()
![]()
Le Wireless TouchPad Keyboard a été annoncé en même temps que le nouveau Framework Laptop 13 Pro. C’est un produit malin, intéressant dans son approche, très ouvert et potentiellement une excellente nouvelle pour le secteur.
Le premier Logitech K400
Framework ne révolutionne rien avec le Wireless TouchPad Keyboard. Le clavier reprend les codes classiques de ce type d’instrument pensé pour piloter une interface graphique loin de son poste. On retrouve un clavier déployé de manière habituelle pour la frappe et, juste à côté, sur la droite, un pavé tactile qui permet de naviguer avec un curseur. C’est la formule consacrée pour ce type de produit qu’on connait tous avec le Logitech K400. L’exemple que tout le monde a en tête quand on veut décrire ce type de dispositif. Il faut dire que le K400 a roulé sa bosse et qu’il est depuis des années la solution préconisée pour piloter un PC de salon.
Le All-in-One Media de Microsoft
Je me suis toujours demandé pourquoi les constructeurs ne s’intéressaient pas plus à ce type de clavier. Microsoft, par exemple, a pendant un temps proposé un excellent All-in-One Media à 30€ sur le même principe. Corsair a imaginé un K83 avec un pavé tactile original. Ceux qui ont connu les Logitech Illuminated Living Keyboard K830, proposés à un prix beaucoup plus élevé mais d’un confort sans pareil, le regrettent probablement amèrement. Car les productions concurrentes se sont toutes taries et la majorité des claviers de ce type ont disparu.
C’est ce qui fait le succès du K400 Plus actuellement d’ailleurs. Non pas que ce soit un clavier exceptionnel, c’est tout simplement le seul qui reste vraiment sur le marché pour piloter confortablement un PC depuis son canapé. Présent dans le paysage depuis tellement longtemps, disponible facilement, régulièrement en promo, c’est une valeur sûre qui fait le travail. Il est par exemple en ce moment proposé à moins de 25€, un prix tout simplement imbattable sur ce segment. On a bien de temps en temps des produits alternatifs sympathiques comme le Omoton, mais sur le principe, rien qui ne vient chasser le Logitech de son trône.
Et c’est d’abord pour cela que l’annonce d’un nouveau challenger est intéressante. Si Framework maîtrise le prix de l’objet, il peut être un vrai concurrent pour Logitech. Ce qui peut également entrainer d’autres acteurs sur ce terrain notablement délaissé depuis de nombreuses années.
Le Framework Wireless TouchPad Keyboard
Le clavier est calqué sur le standard habituel : pavé tactile à droite (tant pis pour les gauchers) et clavier à gauche. On retrouve un jeu de touches de fonctions combinées avec des commandes multimédia qui ont la priorité de frappe. On pourra donc simplement mettre en pause ou relancer un média. L’arrêter, le mettre en sourdine mais également lancer une recherche, ouvrir les paramètres système ou couper son micro.
![]()
Le pavé tactile mesure 6.88 cm de large pour 8.56 cm de haut et propose une surface entièrement réactive aux clics et prenant en charge les gestes multipoints sous Windows (norme Windows precision touchpad) comme sous Linux.
La partie clavier est classique, pour le moment uniquement annoncée en QWERTY « US English ». Les touches sont de type chiclets et elles proposent une course sensiblement profonde de 1.5 mm pour une frappe précise. Le Wireless TouchPad Keyboard n’est pas rétroéclairé, ce qui est parfois gênant au vu de l’usage classique de ce type de produit mais a le mérite de sauvegarder la batterie. On ne connait d’ailleurs pas la capacité de cet élément et la marque reste évasive sur la durée de vie entre deux charges pour le moment.
Ce qui est mis en avant par le constructeur, c’est l’ouverture de son produit. Outre le fait qu’un seul de ces claviers saura piloter jusqu’à quatre appareils par défaut et ainsi jongler d’un PC portable à un PC de bureau, d’une tablette à un MiniPC de salon, par une simple combinaison de touches. La marque insiste sur des détails pas anodins avec la présence d’un circuit de communication sans fil Nordic nRF54L20. Une puce « magique » qui prend en charge aussi bien le Bluetooth LE que les formats propriétaires RF 2.4 GHz mais aussi les protocoles Zigbee, Matter et même Thread.
Le clavier du Framework Laptop 12
Et cela n’est pas vain car Framework promet un véritable écosystème de développement pour l’objet. Des fichiers open source permettront de dessiner le châssis de son choix et donc de l’intégrer parfaitement dans un projet. On comprend d’ailleurs cette philosophie car elle correspond exactement à ce qu’a fait le constructeur pour concevoir ce clavier. Les composants sont exactement ceux d’un portable Framework Laptop 12 réassemblés l’un à côté de l’autre. Un tour de passe-passe piloté par un autre élément intéressant. Le « cœur » du clavier s’appuie sur le firmware ZMK, bien connu des soudeurs de touches invétérés. Ce firmware sera programmé sous licence Zephyr et permettra de définir précisément les interactions entre chaque touche pressée et l’ordinateur connecté. On peut donc l’utiliser pour définir précisément les actions à mener. Qu’il s’agisse d’une frappe simple ou de combinaisons de touches.
L’arrière du clavier permettra d’accéder aux composants, de changer la batterie, d’extraire la carte mère…
La carte mère du clavier va être, par ailleurs, commercialisée par la marque, seule, prête à l’emploi pour les plus expérimentateurs d’entre nous. Elle permettra de construire le jeu de touches de son choix, d’y ajouter un pavé tactile et de programmer le tout à sa sauce pour définir exactement ses besoins. Framework va donc proposer son Wireless TouchPad Keyboard aussi bien pour les particuliers désireux d’obtenir une simple solution de salon, que pour ceux à la recherche d’un clavier capable de seconder un ordinateur portable et un objet bien pratique pour piloter un PC assigné à un vidéoprojecteur en salle de réunion. Mais aussi tous ceux qui veulent une solution adaptable à tout type de scénario matériel pour des projets industriels ou personnels.
Le pavé tactile du Framework Laptop 12 a simplement été réorienté de 90°
La beauté de la chose, c’est que pour le constructeur, il n’y a pas ici un énorme investissement technique mais plutôt le recyclage de composants existants. Un assemblage de pièces déjà développées dans leur catalogue. Un coût beaucoup plus marginal qu’un développement de A à Z et un moyen intelligent de mettre en valeur son matériel. Je ne serais pas surpris que le projet de ce clavier soit né dans l’esprit d’un des ingénieurs de Framework et qu’il l’ait développé de son côté avant de le proposer quasi finalisé à la direction. On sent toute la mécanique du « DIY » derrière ce produit.
On ne connait pas encore le tarif du Wireless TouchPad Keyboard, pas plus que son autonomie réelle ni l’éventuelle disponibilité d’un jeu de touches en AZERTY. Pour ce dernier poste, pas trop d’inquiétudes à avoir. Le Framework Laptop 12 existe avec un clavier français et il sera donc possible de l’intégrer simplement dans la coque du clavier.
![]()
Je me suis d’abord demandé pourquoi la marque s’engageait dans ce secteur. Et, en décortiquant le produit, j’ai fini par comprendre quelle aubaine c’était pour Framework ! Ce Wireless TouchPad Keyboard est l’outil parfait pour la marque, il ne lui coûte pas cher en développement et va lui permettre de recycler des composants. Mais surtout, cela lui offre une occasion d’exister en dehors du cercle restreint de ses clients habituels.
On ne peut pas dire que Framework soit le constructeur le plus connu du marché. S’il bénéficie d’un beau succès d’estime chez les passionnés d’informatique, sa clientèle reste assez restreinte. Le fait de se diversifier avec ce type de produit va étendre son image sans avoir à passer par la case publicité. Le côté séduisant de son offre combiné à l’aspect DIY et open source de celle-ci peut convaincre de nouveaux utilisateurs de la vraie pertinence de ses produits.
Cette diversification va également permettre à Framework d’améliorer son chiffre d’affaires. Ce clavier n’embarque pas de composants en tension, il est donc beaucoup moins sujet à des fluctuations de tarifs que le reste de sa production. Il peut être fabriqué en masse et stocké longtemps sans perdre son intérêt ni se dévaluer. Après tout, cela fait des années que Logitech vend des milliers de K400 Plus chaque mois sans avoir changé son produit depuis.… 2012.
Wireless TouchPad Keyboard : le cheval de Troie de Framework © MiniMachines.net. 2026
![]()
![]()
Le nouveau Framework Laptop 13 Pro reprend tous les codes de la marque. L’engin est sobre, totalement modulaire et se présente comme une solution à même de piloter de nombreux usages. Il garde la même approche de réparabilité et d’évolution technique en aménageant la possibilité de glisser ses composants dans un ancien système.
![]()
Cela ne veut pas dire que le Framework Laptop 13 Pro fait du surplace technique. Les changements sont nombreux pour cette plateforme. Le châssis a beau être rétrocompatible avec les anciennes cartes mères, il n’en a pas moins changé. On retrouve ainsi une structure totalement métallique en aluminium usiné, une batterie qui gagne en capacité, un meilleur écran et un jeu de puce Panther Lake. Le nouveau venu pourra piloter des puces allant jusqu’au Core Ultra X9 388H d’Intel.
![]()
Pour lutter contre la hausse des prix des composants, la première offre est de type barebone. L’utilisateur devra donc lui apporter sa mémoire vive, son stockage et son système d’exploitation. Cette « DIY Edition » est proposée à 1349€ dans sa version la plus basique sous Core Ultra 5 325. Comptez 450€ de plus pour un Core Ultra X7 358H. Le modèle Core Ultra x9 388H n’a plus de tarif pour le moment puisqu’il a été totalement épuisé très rapidement.
![]()
Une seule version prête à l’emploi est disponible avec 32 Go de LPDDR5x-8533 au format LPCAMM2 et 1 To de stockage NVMe PCIe 4.0 en M.2 2280. Il s’agit d’un modèle Core Ultra X7 358H. Le modèle Core Ultra 5 325 n’est pas proposé.
![]()
Vous l’aurez compris, les éditions « DIY » sont confrontées à un problème majeur, la disponibilité et les tarifs de la mémoire LPCAMM2 qui n’est pas encore très répandue et dont les tarifs ont peut-être encore plus explosé que les autres. La plupart des utilisateurs devront donc aller à la pêche aux composants et espérer en trouver de pas trop chers ou se rabattre sur les versions prêtes à l’emploi.
Tous les modèles totalement équipés seront livrés au choix avec une distribution Ubuntu gratuite ou un Windows 11 Pro qui vous coutera 220€. Framework assurera également le support de diverses distributions comme Fedora, NixOS, Linux Mint, CachyOs et même Bazzite. Des personnalisations supplémentaires existent comme le choix d’un clavier anglais international, allemand ou français. On retrouve même des enceintes stéréo compatibles Dolby Atmos pour améliorer la qualité sonore de l’ensemble.
Framework Laptop 13 Pro
On retrouve donc ici un portable de 13.5 pouces assez sobre avec un écran IPS en 2880 par 1920 pixels tactile et mat. Un écran au format 3:2 qui pourra travailler des fréquences allant de 30 à 120 Hz. La dalle s’annonce mate avec une luminosité de 700 nits, ce qui devrait lui permettre de fonctionner correctement en extérieur.
![]()
Un gros travail a été fait sur la batterie pour grimper à 74 Wh, soit 21% de plus que le dernier modèle de la marque. En combinaison d’une puce Panther Lake plus efficace, cela devrait permettre d’atteindre 20 heures d’autonomie dans des conditions optimales. En pratique, cela signifie de longues sessions de travail sans trop penser à devoir recharger l’engin suffisamment pour tenir des réunions qui s’enchaînent. Le constructeur donne plusieurs scénarios : 20 heures en streaming Netflix 4K sous Windows avec une luminosité de 250 nits et un volume audio à 30%. 17 heures pour du surf en ligne dans les mêmes conditions, 11 heures en visioconférence et… 7 jours en veille sous Ubuntu.
![]()
Le tout entre dans un châssis de 1.4 Kg en aluminium avec 29.66 cm de large, 22.89 cm de profondeur et 1.58 cm d’épaisseur. Évidemment le Framework Laptop 13 Pro est toujours livré avec des connecteurs entièrement modulaires qui permettent de choisir les sorties disponibles sur sa machine mais également d’en changer la géographie. On retrouve pour le reste une attention particulière à de nombreux détails. La possibilité de bloquer la webcam avec un œilleton de confidentialité et de couper les micros dans le même temps, un grand pavé tactile, un clavier personnalisable et autres détails du genre.
Si des ajustements techniques ont été faits, il est parfaitement possible de greffer des composants des anciens modèles de Framework Laptop 13 sur cette nouvelle version « pro ». Évidemment certains postes ne pourront pas être récupérés. Le passage de la mémoire sera par exemple assez compliqué vu le changement de format, mais Framework a travaillé dans le bon sens. Ainsi les tous premiers modèles de portables de la marque employaient de la mémoire SODIMM classique… Les processeurs Intel Panther Lake demandent de la LPDDR5x qui est donc généralement soudée à la carte mère. Framework ayant compris à ses dépens que la hausse de la mémoire vive l’impacterait probablement plus que ses grands concurrents, la marque a recours à de la mémoire LPCAMM2 qui n’est plus compatible avec les anciens modèles mais qui évite d’enfermer la capacité mémoire… et permet de distribuer une édition « DIY ».
L’avantage des connecteurs modulaires est qu’ils permettent de rendre les châssis adaptables d’une génération à l’autre. Ainsi on pourra glisser une carte mère équipée des nouvelles puces du Framework Laptop 13 Pro dans une ancienne génération de ces machine au prix de quelques ajustements techniques. La vidéo ci-dessus montre la possibilité d’une mise à jour d’un modèle vers un autre.
![]()
Ce tableau récapitule les compatibilités – et incompatibilités de base – entre les modèles précédents et le nouveau format du Framework Laptop 13 Pro. Il montre que certains éléments comme le châssis inférieur ou le clavier sont bien compatibles mais nécessitent des kits d’ajustement proposés par la marque sur son magasin. A noter que des guides et documents sont toujours disponibles pour développer ses propres accessoires et extensions.
La marque poursuit sa trajectoire alternative au monde des ordinateurs portables traditionnels. Elle est plus ouverte, plus libre et pense à un marché à la recherche de solutions pérennes. C’est un postulat qui fonctionne et qui rencontre son public. Évidemment la note est salée et le grand public n’y verra peut-être pas un avantage. Mais la frange de clients susceptibles d’être intéressés par ce type de matériel semble grossir au fil des ans. Framework a tenu bon et ceux qui pariaient sur son échec à ses débuts ne peuvent que reconnaitre la pertinence de leur offre.
| Année de sortie | 2026 |
|---|---|
| Prix | À partir de 1 349 € |
| Assemblage | À construire soi-même Temps : 10 – 20 minutes Difficulté : modérée |
| Processeurs disponibles | Intel Core Ultra 5 325 Jusqu’à 4,5 GHz • 4P + 4 basse conso • 8 threads Intel Core Ultra X7 358H Intel Core Ultra X9 388H |
| Consommation CPU | Mode performance : 30W (60W boost) Mode équilibré : 25W (60W boost) Mode efficacité : 15W (20W boost) |
| Graphiques intégrés | Ultra 5 : Intel Graphics (4 cœurs Xe, 2.45 GHz) Ultra X7/X9 : Intel® Arc B390 (12 cœurs Xe, 2.5 GHz) |
| NPU (IA) | Ultra 5 : jusqu’à 47 TOPS Ultra X7/X9 : jusqu’à 50 TOPS |
| Refroidissement | Ventilateur 65 x 5,5 mm Caloduc 10 mm Interface thermique Honeywell PTM7958 |
| Système d’exploitation | Aucun (Windows / Linux au choix) |
| Stockage | Jusqu’à 2 To PCIe 5.0 NVMe Jusqu’à 8 To PCIe 4.0 NVMe Ou stockage personnel |
| Mémoire | Jusqu’à 64 Go LPCAMM2 LPDDR5X |
| Connectivité | Intel Wi-Fi 7 BE211 (sans vPro) |
| Poids | 1,44 kg (avec cartes) 1,41 kg (sans cartes) |
| Dimensions | 15,85 x 296,63 x 228,98 mm |
| Écran | 13.5″ tactile 2.8K (2880 x 1920) Ratio 3:2 • 700 nits 30–120 Hz • 100% sRGB Surface mate antireflet |
| Ports | 4 cartes d’extension modulaires USB-C, USB-A, HDMI, DisplayPort, Ethernet Jack 3,5 mm, MicroSD, SD |
| Audio | Dolby Atmos (Windows) Haut-parleurs stéréo 2W x2 2 micros MEMS avec interrupteur de confidentialité |
| Interfaces | Thunderbolt 4 DisplayPort 2.1 USB-C PD jusqu’à 140W |
| Batterie | 74.45 Wh 80% de capacité après 1000 cycles |
| Caméra | 1080p 30 fps Capteur 9.2 MP Cache de confidentialité matériel |
| Biométrie | Lecteur d’empreintes (Windows Hello / Linux) |
| Chargeur | USB-C 100W GaN (optionnel) |
| Clavier | Rétroéclairé Course 1,5 mm Configurable (langue / disposition) |
| Pavé tactile | Haptique piézoélectrique 123,7 x 76,7 mm Retour réglable |
| Matériaux | Aluminium 6063 CNC (châssis complet) Nouvelle charnière renforcée |
| Durabilité | 75% aluminium recyclé 35% plastique recyclé Emballage 100% recyclable Compensation carbone |
| Contenu de la boîte | Laptop Framework 13 DIY Clavier, contour écran RAM / SSD (optionnel) Cartes d’extension Chargeur (optionnel) Tournevis Framework |
Framework Laptop 13 Pro : passage au Panther Lake pour le portable modulaire © MiniMachines.net. 2026
![]()
Résumé des épisodes précédents. Le 17 décembre dernier, Framework se pose en défenseur du grand public en expliquant que les grandes marques se gavent avec la hausse des prix en pratiquant des tarifs sans rapport avec la hausse. Plus raisonnable, la marque indiquait alors ne pas pouvoir faire autrement qu’augmenter ses prix mais en étant plus sage et moins gourmand que Dell ou Apple. Deux jours plus tard, elle augmentait à nouveau la mémoire vive une première fois… Avant de remettre le couvert en février avec une troisième hausse.
Aujourd’hui, quasiment un mois plus tard, c’est une quatrième hausse qui est annoncée. Je n’ai rien contre Framework en particulier, je les aime plutôt beaucoup, mais cela illustre extrêmement bien la problématique rencontrée par le marché. Dès le mois de décembre, je vous expliquais que la critique de leur PDG était infondée. Elle s’établissait sur une vision quelque peu étroite.
Framework, avec une production estimée à quelques dizaines de milliers de pièces par trimestre, se comparait à un Dell qui vend en moyenne plus de 110 000 ordinateurs par jour. À chaque fois que Framework commande de la mémoire ou du stockage ces derniers mois, il se voit contraint d’augmenter ses tarifs. Chez Dell, ou Apple, également mis en cause, cette commande mensuelle correspond à quelques heures de leur activité.
![]()
Pour ne pas modifier leurs prix au quotidien, voire pire heure par heure, les grandes marques ont simplement anticipé leurs tarifs à plus long terme et reflété le prix d’un contrat passé avec leurs fournisseurs. Ceux-ci ont établi un prix moyen à long terme et les marques ont répercuté le tout. En décembre, Framework indiquait que le passage de 16 Go à 32 Go de DDR5 coutait 80$ HT chez eux.
Les options du Framework Laptop 13
Chez Dell, ces 80$ HT étaient exigés pour passer de 0 Go à 16 Go. Aujourd’hui, Framework propose un Laptop 13 vide de mémoire à 1049€ et une option à 156€ pour lui ajouter 8 Go de DDR5. Et 312€ pour passer à 16 Go… Chez Dell, on trouve désormais des portables à 1099€ avec 32 Go de mémoire vive. Les engins ne sont pas comparables mais la situation sur la mémoire s’est totalement inversée.
![]()
Et c’est totalement logique, alors que Framework continue d’acheter sa mémoire vive au « compte-goutte », Dell a sécurisé des contrats à moyen terme qui lui assurent un prix plus stable et des livraisons suffisantes. Cela leur a coûté cher les premiers temps mais c’est maintenant à leur avantage. Apple aurait fait la même chose il y a peu en s’assurant un contrat en béton avec Samsung. Un contrat signé aux exigences de prix du fabricant de mémoire et sans « négocier » sur celle-ci. Car l’obtention d’une mémoire en flux stable, même au plus cher, est plus importante pour la marque que de gagner quelques dollars sur chaque module… Avant de renégocier deux mois plus tard ou risquer de ne pas être livré parce qu’un autre acteur aurait accepté de mettre plus sur la table
Les machines de Framework restent parmi les plus intéressantes du marché actuel et leur modularité est exemplaire. Mais il est toujours très délicat de critiquer ses concurrents de cette manière. La crise de la mémoire vive touche tout le monde mais il semble évident que les plus petits acteurs sont ceux qui peuvent le plus en subir les effets.
Reste un point capital à comprendre : qu’elles soient effectuées d’un coup comme Dell ou Apple, ou par étape comme Framework, ces hausses sont massives et continuent d’enfler. La situation actuelle est légèrement stabilisée car beaucoup de marques vivent encore en partie sur des stocks de composants établis en 2025. Les prochains mois vont aller de mal en pis.
Mémoire vive : une quatrième hausse des prix pour Framework © MiniMachines.net. 2026
Thousands of iPhones were compromised using the Coruna exploit kit, which chained 23 iOS vulnerabilities into advanced attacks used for espionage and cybercrime.
The post Hackers Used New Exploit Kit to Compromise Thousands of iPhones appeared first on TechRepublic.
![]()
La hausse des prix de la mémoire vive joue des tours à toute l’industrie. Mais pour Framework, c’est particulièrement sensible et révélateur de la dimension de cette entreprise.
Chaque composant de mémoire a vu son prix augmenter
Le 17 décembre dernier, une première hausse des prix chez Framework s’accompagnait d’un grincement de dents. Son PDG expliquait que les entreprises concurrentes n’étaient pas justes dans leurs augmentations de tarifs. Qu’ils « profitaient » de la crise de la mémoire vive pour augmenter leurs marges. Chose que ne faisait pas Framework. Deux jours plus tard, la même marque annonçait une seconde hausse de mémoire qui rattrapait d’un coup sensiblement l’écart qu’il constatait juste quelques jours avant avec ses concurrents.
Une troisième hausse des prix est désormais annoncée pour Framework, ce 11 février c’est un message laconique qui explique que l’achat de mémoire LPDDR5x qui équipe les ordinateurs portables de la marque continue d’augmenter. Ce qui ne laisse pas d’autres choix pour le constructeur que de refléter cette hausse sur ses tarifs publics. Au passage, les prix de vente proposés pour ces modules LPDDR5x sont dévoilés. En décembre, le gigaoctet de LPDDR5x était positionné à 10$ environ. Un prix HT en gros et avant toute implantation.
![]()
Aujourd’hui, ce même gigaoctet varie entre 12 et 16$ suivant la densité des puces. Les composants de 1 Go, peu denses, sont les moins chers. Si vous construisez un portable avec quatre emplacements de LPDDR5x cela ne permet que de proposer 4 Go de mémoire à vos clients. Si vous voulez 8 Go il vous faut des puces LPDDR5x plus denses de 2 Go. Et ainsi de suite : pour avoir 16 Go il vous faut des puces de 4 Go. Cela va jusqu’à 32 Go avec quatre puces de 8 Go. Les prix de ces composants LPDDR5x de meilleure capacité s’envolent et s’approchent de 16$ le Go.
Les modules les plus denses de mémoire vive sont plus chers.
Autrement dit, chaque petit composant de 4 Go RAM à souder sur une carte mère pour sortir un portable en 16 Go est passé de 40$ pièce en décembre à 64$ pièce. Un prix Hors Taxes qui a des impacts en cascade, notamment sur la trésorerie des entreprises. Avec cette hausse des prix spectaculaire, le constructeur ne peut plus commander autant de mémoire qu’avant et donc ne peut pas sortir autant de portables qu’avant.
En décembre, Framework pouvait, en utilisant 10 000$, acheter 250 modules de 4 Go de LPDDR5x à 40$. Désormais, avec des modules à 64$, il ne peut plus que commander 156 modules pour la même somme. Avec 250 modules, la marque pouvait sortir de ses lignes 62 portables équipés en 16 Go. Avec 156 modules, ce ne sont plus que 39 machines qui peuvent être produites1. Il faut donc payer son personnel, ses locaux, ses charges avec 39 machines vendues pour 10 000 dollars injectés, ce qui a également un impact sur le prix de chaque engin.
Cette hausse des prix s’accompagne chez Framework d’un message indiquant que, non seulement, la marque essayait d’ajuster le prix des composants au plus proche de son prix d’achat, mais qu’elle absorbait une partie de ce tarif pour ne pas le répercuter sur ses clients. En clair, Framework a baissé ses marges. Elle sait pertinemment que si elle ne le fait pas, comme les autres constructeurs du marché, elle va gripper son carnet de commandes. Baisser ses marges n’est pas un choix pour l’industrie aujourd’hui, c’est une mesure de sauvegarde pour ne pas mettre ses ventes à l’arrêt.
Un module de mémoire Micron
Comme je vous le disais en décembre, Framework a été un peu cavalier de se déclarer plus proche des prix réels de la hausse que ses concurrents. Quand la marque annonçait que Dell et Apple surfacturaient le prix de leur mémoire vive, c’est bien parce que les problématiques en jeu sont différentes. Les échelles de ventes sont très étrangères et les outils industriels ne sont pas dimensionnés de la même façon.
Au final, Framework a sans doute « rattrapé » aujourd’hui la différence de tarif qu’elle reprochait à ses concurrents. Mais lorsque Framework commandait de quoi produire quelques dizaines de milliers de machines en décembre, les grands fabricants de la planète devaient trouver des ressources pour en fabriquer des millions. Dell a sorti 11.7 millions de PC au troisième trimestre 2025. Cela fait 2.92 millions de machines sur la période et donc autant de modules de mémoire vive à obtenir. Framework ne communique pas sur sa production, évoquant juste un nombre « à six chiffres » et donc quelque chose entre 100 000 et 999 999 machines à l’année.
On peut se dire que la capacité d’achat d’un Dell permet de payer moins cher sa mémoire vive et donc d’avoir de meilleurs tarifs qu’un plus petit concurrent. C’est tout à fait vrai lorsque l’offre est plus grande que la demande. Mais dans le cas présent, c’est tout le contraire. Si un fournisseur de mémoire vive comme Micron, Samsung ou SK Hynix ne produit plus assez parce que le gros de sa production est absorbé par des serveurs de calcul d’IA. Il va vous demander de payer plus cher pour obtenir la garantie de recevoir la mémoire vive dont vous avez besoin.
Au final, les prix d’une entité comme Framework ou d’une autre comme Dell vont se retrouver être assez similaires. Framework aura pour lui l’agilité et la possibilité de compléter ses commandes au fil de l’eau par « petits » lots. Saisissant les occasions comme elles se présentent. Dell aura sa force de frappe et l’historique de son carnet de commandes pour négocier sa mémoire.
Chaque lame de serveur d’IA consomme des To de mémoire vive
Comparer ses actions et ses prix sur un marché informatique si spécifique est donc toujours assez dangereux. Au mieux, c’est assez naïf, au pire c’est une pratique commerciale douteuse et teintée de mauvaise foi. Encore une fois, les constructeurs font face à une situation dont ils connaissaient les risques. De nombreux signaux d’alerte ont par le passé déjà fait largement fluctuer les cours de la mémoire.
En 2020 par exemple, une ligne de production Micron tombe en panne et le cours de la mémoire vive s’envole immédiatement. Le flux entre production et demande étant déjà extrêmement tendu. En 2017, ce n’étaient pas les serveurs d’IA qui faisaient monter les cours, mais l’impact de la demande de smartphones de plus en plus gourmands.
La différence aujourd’hui, c’est que les plans d’investissement des géants de l’IA sont absolument sauvages. Ils ne sont pas « auto-régulés » par l’arbitrage d’une clientèle qui est l’acheteur final et vont durer très longtemps. Une usine qui pose problème, à la suite d’une panne ou d’une catastrophe naturelle, cela se répare et les constructeurs peuvent jouer sur leurs stocks pour faire tampon. Le calendrier des investissements liés à l’intelligence artificielle s’étale au contraire sur plusieurs années. Ce qui rend la tension trop longue pour être encaissée.
Quant aux tarifs des produits qui pouvaient limiter la hausse, elle n’existe tout simplement pas. En 2017 quand les smartphones se sont mis à faire flamber les cours, le prix a dû s’arrêter de monter parce que les constructeurs se sont rendus compte que l’impact de cette hausse ralentissait leurs ventes. Les centres de données d’IA n’ont aucune notion de rentabilité à court, moyen et long terme pour le moment. Ils achètent donc de la mémoire pour n’importe quel montant, même le plus délirant. Sans jamais être ralentis par une quelconque question de retour sur investissement.
Et la hausse des prix n’est pas prête de s’arrêter.
Troisième hausse des prix de Framework à cause de la mémoire © MiniMachines.net. 2026
![]()
L’idée du DockFrame est simple et c’est ce qui en fait toute la beauté. L’appareil reprend les différents accessoires de connectique des portables Framework pour les assembler dans un dock indépendant.
Un prototype du DockFrame
Le DockFrame répond à une question assez simple : que faire des différents modèles de connecteurs Framework quand vous ne vous en servez pas ? Il permet également de construire le dock sur mesure dont vous avez besoin en exploitant les différentes options proposées par la marque.
De premières images de prototypes ont été publiées en ligne avec les différents connecteurs disponibles : USB Type-A et Type-C, Ethernet, HDMI, DisplayPort, jack audio 3.5 mm. Une des idées fortes de Framework est en effet de proposer une base de connecteurs en USB Type-C et de leur adjoindre une extension qui embarque à la fois la connectique de sortie voulue, mais aussi l’électronique pour convertir ces ports USB Type-C internes au portable vers le format souhaité. Ainsi, un ensemble de petites cartouches propose un composant qui va prendre le signal USB 3.1 du portable et le convertir en HDMI ou en lecteur de cartes SDXC.
![]()
Framework propose plusieurs types de connecteurs différents et encourage sa communauté à en développer d’autres. Ici le DockFrame s’appuie donc sur ces accessoires pour vous permettre de construire une solution sur mesure en assemblant pas moins de quatre extensions. Trop peu ? Pas grave, le dock propose une face supérieure qui reprend le format de connexion des LEGO pour permettre d’empiler plusieurs docks ensemble et passer à huit extensions ou plus.
Le DockFrame avec un connecteur d’alimentation et un multimètre.
Le créateur de ce dock particulier a décidé d’aller encore plus loin en imaginant des extensions utiles pour son propre usage. En plus de ce projet de base, il a décidé de construire des extensions adaptées à ses propres besoins. On retrouvera ainsi une alimentation ajustable du 3.3 au 12V, un multimètre, un lecteur Mini SSD et même une solution de développement qui s’appuie sur les formats de SEEED.
Évidemment, ce DockFrame n’a pas besoin d’un ordinateur Framework pour être utilisé, il s’agit juste d’une fonctionnalité USB classique et il pourra être connecté à n’importe quel ordinateur compatible avec les formats USB 3.x. Les extensions de type SSD seront évidemment plus rapides si vous le connectez à un port USB4 ou Thunderbolt.
Pas de prix ni de date officielle de lancement, le site du projet permet toutefois de s’inscrire à une liste d’information.
Source : Tomshardware
DockFrame : un dock modulaire sous extensions Framework © MiniMachines.net. 2025
![]()
Framework mettait en cause Dell et Apple en expliquant qu’ils exagéraient sur le prix de leurs options mémoire. Je vous expliquais il y a deux jours pourquoi comparer la marque Framework à Dell et Apple était assez maladroit. Les dimensions des trois entités étant totalement différentes.
![]()
Aujourd’hui Framework est contraint d’augmenter à nouveau ses tarifs. Ce sont les unités de stockage qui grimpent cette fois-ci. Voilà donc deux hausses en une semaine seulement. Ce qui donne une bonne idée des problématiques en jeu. Si la marque pensait pouvoir échapper en passant entre les gouttes grâce à plus de souplesse que de grands industriels comme Dell et Apple, elle se fait probablement rattraper par des volumes beaucoup plus faibles. C’est le problème quand on critique la concurrence, on devient la cible d’une analyse plus poussée.
![]()
Source Notebookcheck
L’augmentation est sensible, l’ajout d’un SSD WD Black SN7100 de 500 Go coutait 79€ auparavant, il passe à 92€. Un 1 To bascule de +115€ à +150€. Un 2 To passe de +229€ à +259€. Plus on monte en gamme et en capacités, plus la hausse se ressent.
La marque indique que les prix devraient encore augmenter pendant le premier semestre 2026. Ce qui pourrait mettre à mal sa communication de base. Celle qui grinçait des dents sur les options d’Apple et de Dell. Ces grands groupes pouvant être mieux protégés sur le long terme que certains plus petits concurrents.
Toujours impossible de voir jusqu’où les tarifs vont grimper, mais la situation empire de jour en jour aux dires des revendeurs, grossistes et marques que j’ai pu interroger.
Framework augmente – encore – ses tarifs © MiniMachines.net. 2025
![]()
Après avoir critiqué Dell et Apple pour faire leur beurre sur la disette imposée de mémoire vive, Framework annonce à son tour une augmentation de la mémoire vive dans ses options de DDR5. Hausse qui s’associe avec une mise à jour des conditions de ventes de ses machines.
Chez Framework, on estimait le 9 décembre que des entités comme Dell et Apple surfacturaient l’augmentation de la mémoire. Ce qui n’est franchement pas un scoop et qui fait partie intégrante des schémas de commercialisation de ces entreprises. Si la crise actuelle accentue le phénomène, tout le catalogue de Dell et d’Apple sont pensés dans ce sens.
Framework indiquait que son passage de 16 à 32 Go de DDR5 ne coutait que 80$ le 9 décembre. Tout en mettant en avant le fait que ce tarif ne vous offrirait qu’une seule barrette de 16 Go depuis un engin vide chez Dell. Et qu’il vous en couterait le double pour en avoir deux. Je ne vais pas revenir en détail sur les stratégies de chacun, mais cela me parait un peu difficile de comparer Dell, Apple et Framework.
Tout le monde sait, depuis toujours, qu’appeler un conseiller Dell permet de réduire sa facture d’achat significativement. Les entreprises qui contactent le service client pour acheter quelques machines à l’année bénéficient de réductions et le calcul des composants secondaires est souvent lié à cela. Doubler « gratuitement » sa mémoire vive est un « geste commercial » assez classique chez Dell. Du moins, ça l’était.
Depuis le Apple M1, la mémoire vive est intégrée directement sur le SOC
Apple de son côté embarque directement la mémoire vive dans ses puces et cela rend cette comparaison très étrange. L’impact de l’augmentation de la mémoire et des tensions d’approvisionnement est forcément très différent. Apple achète en amont de la fabrication de ses SoC. Et la marque choisit des grades de mémoire très élevés. Elle n’intègre évidemment que le très haut de gamme dans ses puces pour ne pas générer de couteux déchets de production ou de pannes à moyen terme. Là où un autre constructeur peut tolérer des barrettes défectueuses, Apple ne laissera rien passer. Imaginez vous acheter de la mémoire un peu moins haut de gamme, la monter sur une série de quelques milliers de puces et découvrir ensuite des erreurs en sortie de chaine. Le coût de fabrication d’un SoC Apple avec cette mémoire défectueuse embarquée serait catastrophique. Framework de son côté peut simplement renvoyer les barrettes qui posent un éventuel souci en SAV.
Enfin, les volumes des trois entités sont totalement différents. Les chiffres de Framework ne sont pas connus, mais Dell a distribué 10.3 millions de PC au troisième trimestre 2025. Apple, 6.8 millions. Je doute fortement que l’impact d’une pénurie de mémoire soit le même pour les trois entités. Je ne suis pas là pour défendre Dell ou Apple mais s’ils ont décidé une augmentation de la mémoire vive, c’est en anticipant probablement le scénario que va connaitre toute l’industrie en 2026. Ils le font peut être plus rapidement que d’autres tout simplement parce qu’ils vendent plus que d’autres. C’est par ailleurs lié à leur position particulière dans un calcul permettant de lisser les tarifs pour ne pas avoir à changer les prix en permanence1. Tout simplement parce que pour Dell comme pour Apple, il est difficile de proposer des devis et des contrats professionnels avec des tarifs qui fluctuent.
Ainsi Framework achète sa mémoire avec plus de souplesse que Dell ou Apple, peut changer de fournisseur/fabricant et même utiliser des grossistes au besoin. Son appétit n’est pas tout à fait le même en quantité. Dell et Apple ont dû signer des engagements sur une période plus longue pour obtenir l’approvisionnement nécessaire à leur fonctionnement. Et leurs fournisseurs n’ont évidemment pas décidé de leur faire un cadeau en se basant sur le cours du jour pour déterminer leurs contrats à long terme. S’ils savent que les prix vont monter à l’avenir, ils vont anticiper un tarif moyen sur l’année 2026.
![]()
Au final, Framework monte donc le prix de ses composants à son tour mais uniquement pour les options. La marque a dû sécuriser un assez gros stock de DDR5 avant la hausse qu’elle conservera au prix d’avant la hausse pour ses machines pré-équipées. Comme la marque n’écoule pas 10.3 millions de PC par trimestre comme Dell, ce qui veut dire 3.43 millions de PC par mois entre juillet en septembre, ou 114 333 PC par jour, chaque jour pendant trois mois, elle peut se le permettre. Si elle avait la même distribution que Dell, Apple ou un autre acteur du TOP 10 des vendeurs de PC mondiaux, elle serait dans le même bain.
D’ailleurs ce n’est qu’une question de temps avant que la marque soit obligée d’augmenter tous les tarifs de ses composants mémoire. Le fait que ses composants n’augmentent pas dans ses portables va les rendre plus séduisants et son stock va disparaitre plus vite. Et le constructeur en est pleinement conscient puisqu’il a déjà modifié ses conditions générales de vente pour éviter que de petits malins achètent des portables Framework avec des options mémoire vive et puissent les renvoyer sans cette même mémoire. Désormais il faudra renvoyer la machine telle qu’elle a été livrée, options comprises, pour bénéficier d’un remboursement.
Framework de mauvaise foi avec l’augmentation de la mémoire © MiniMachines.net. 2025
![]()
À bord de cette carte mère MetaComputing ARM AI PC, un SoC que l’on a déjà croisé. Du moins sur le papier. Le CIX P1 a en effet été retenu par Radxa, Orange Pi et Minisforum.
![]()
Il s’agit toujours d’un CXI CP8180 au TDP de 28 W, une solution 12 cœurs comprenant deux cœurs Cortex-A720 à 2.6 GHz, deux cœurs Cortex-A720 à 2.4 GHz, quatre cœurs cortex-A-720 à 2.3 GHz et enfin quatre cœurs Cortex-A520 à 1.8 GHz. Un circuit graphique Immortalis-G720 MC10 et un NPU 30 TOPS complètent l’ensemble. Cette puce prendra ici en charge de la mémoire vive LPDDR5-5500 en 16 et 32 Go avec un stockage associé de 1 To.
La carte mère sera proposée à partir de 480.95€ HT en version standard. Mais elle pourra également être achetée avec un ordinateur Framework, totalement préinstallée, pour une base tarifaire de 962.95€ HT. Il semble qu’il sera également possible d’obtenir le boitier dédié mis au point par Cooler Master.
CNX Software pointe vers deux éléments intéressants pour cette carte. Le premier est technique et remonte que si la puce CIX P1 présente bien un TDP de 28 watts compatible avec les portables, sa consommation électrique est en revanche bien plus élevée que les puces classiques de ce marché. Là où des processeurs AMD, Qualcomm ou Intel proposent des fonctionnements en veille sous les 3 watts, la CXI grimpe à 16 watts. Ce qui affectera énormément l’autonomie du portable sur batterie.
La carte mère MetaComputing sous CIX P1
L’autre point notable est dans la société MetaComputing elle même. Il semble qu’elle soit pilotée par le créateur de DeepComputing qui développe des solutions RISC-V dont une en particulier. La carte mère spécialisée qui propose une de ces puces RISC-V Starfive aux… Framework.
La carte mère DeepComputing sous StarFive JH7110
MetaComputing semble donc avoir repris purement et simplement l’image de la carte mère de DeepComputing sur son site. De là à dire que la carte n’est pour le moment pas encore fabriquée mais uniquement en précommande ? Difficile d’être totalement affirmatif mais le site de vente de la marque ne donne aucune indication de délai, de stock ou de situation géographique.
MetaComputing développe une carte mère ARM CIX P1 pour Framework © MiniMachines.net. 2025
Deux nouveaux accessoires sont annoncés sur le MarketPlace de Framework. D’abord une poignée pour porter le châssis facilement d’un poste à l’autre. Ensuite et surtout un moyen de monter la carte mère de la machine en rack.
![]()
La Framework Desktop Handle peut paraitre un peu gadget mais c’est un ajout sympathique pour certaines personnes qui baladent leurs machines. C’est aussi une solution appréciée par les gens qui transportent des engins sur des salons ou chez des clients. Elle est désormais accessible dans les options du produit lors de l’achat et pourra également être achetée dans la boutique pour 20 €.
![]()
Le support de rack est quant à lui proposé à 40 €, il permettra de monter la carte mère du Framework sur un support 2U de 10 pouces. Le format MiniITX de la carte peut par ailleurs être monté sur d’autres supports de ce type plus classiques. Celui-ci a néanmoins été pensé pour coller aux standards de Framework, porter l’alimentation du boitier et même servir à accueillir des cartes à d’autres formats avec une compatibilité Flex-ATX.
Le Framework Desktop peut désormais être utilisé en rack © MiniMachines.net. 2025
Prenez un ordinateur Framework, ajoutez lui une toute nouvelle coque sur mesure en aluminium et un clavier mécanique et vous obtiendrez Campus. Un portable certes un peu plus épais, un peu moins… portable. Mais très séduisant.
Flurpes est un moddeur qui propose sur Youtube des expérimentations assez originales très orientées autour des claviers4.
Propriétaire d’un ordinateur Framework, il était ravi de l’offre proposée par la marque mais déçu de la prestation du clavier proposé sur le portable. Sans surprise pour un habitué de claviers mécaniques, le modèle ultrafin proposé par Framework n’était pas forcément le plus ergonomique ni le plus agréable. Le projet Campus est donc une tentative destinée à remplacer la solution d’origine par un nouveau clavier. Plus conforme aux attentes de notre moddeur.
![]()
Le projet débute par la reconstruction d’un châssis de portable Framework 13. Tout a été mesuré et recréé pour accueillir non seulement les éléments d’origine de la machine et les ajuster au millimètre mais également permettre l’intégration d’une solution mécanique beaucoup plus épaisse. Pour réaliser ce nouveau châssis, des prototypes ont été imprimés en 3D afin d’ajuster tous les éléments du mieux possible avant de voir l’ensemble être réalisé par une CNC dans un bloc d’aluminium massif.
![]()
Un travail très rarement vu pour ce type de réalisation de « hobbyiste » car ce genre de réalisation est aussi longue que couteuse. Le résultat est assez incroyable.
![]()
Pour éviter l’usure prématurée du châssis en aluminium, notamment des parties devant recevoir des vis, l’idée a été de monter des supports imprimés en 3D sur le châssis en aluminium. Ce seront ces supports qui auront ensuite à porter les différents composants, cela évitera d’abîmer le pas de vis en aluminium plus fragile. En cas de casse des supports imprimés en 3D, ils seront plus simples à remplacer et pourront recevoir des inserts en alliages de métal plus résistants aux contraintes que l’aluminium.
![]()
Les différentes inscriptions et le logo Campus sont rajoutés dans un second temps à l’aide d’une graveuse laser directement sur la coque en aluminium
![]()
Le nouveau clavier mécanique affleure juste sur la surface du Campus et permet une frappe confortable. Il s’agit d’une solution 60% assez classique dans le monde des fondus de claviers mécaniques. Pour les plus curieux, on retrouve ici des mécanismes Kailh Choc Sunset et des keycaps MBK.
![]()
Le tout est soudé pour gagner en épaisseur. Sur le côté du châssis, on peut distinguer trois boutons rotatifs qui affleurent en surface. Ils sont reliés à des encodeurs rotatifs qui vont piloter le volume, la luminosité de l’écran et le rétro-éclairage du clavier. Le tout exploite un firmware QMK pour une programmation complète du dispositif.
![]()
En interne, puisqu’il y avait de la place disponible, un hub USB a été ajouté sur un des ports USB Type-C de base de la machine. Le Campus offre ainsi en plus un lecteur de cartes MicroSDXC, une sortie HDMI et un USB type-A.
![]()
Flurpes souligne plusieurs points problématiques dans sa vidéo, chose que peu de créateurs dans son genre ne mettent en avant. D’abord le fait que tout n’a pas fonctionné comme prévu. Son hub interne pose d’importants problèmes et malgré du temps et un investissement conséquent, il n’est pour le moment pas parvenu à l’alimenter correctement ni à l’exploiter. Cela n’empêche pas la machine d’être fonctionnelle, mais cela montre la complexité de ce genre de choses que l’on prend souvent pour des gadgets simples à réaliser. Autre déception de ce projet Campus, la qualité du signal Wi-Fi. Contrairement à une certaine croyance assez commune, le positionnement d’antennes et la gestion de celles-ci n’est pas aussi simple qu’il n’y parait. La « magie » des ondes se calcule très précisément et non pas au petit bonheur. Ainsi en déplaçant les antennes et en les repositionnant presque au même endroit qu’à l’origine, la puissance du réseau a largement décliné.
![]()
Rien qui ne pose véritablement de problèmes et qui montre à quel point ce genre de projet peut être compliqué à maitriser, même pour quelqu’un de très talentueux et motivé.
Campus : un portable Framework en alu avec un clavier méca © MiniMachines.net. 2025
Le Framework Laptop 16 est sorti en 2023 avec une promesse, permettre à ses acquéreurs de le faire évoluer. C’est le mantra de la marque, proposer des ordinateurs évolutifs même quand il s’agit de portables. Ses clients étaient donc en droit d’espérer des mises à jour matérielles. Ils ne seront pas déçus.
![]()
Le portable 16 pouces de Framework est apparu en 2023 et promettait un bon niveau de performance avec la gamme de puces AMD Ryzen 7040HS et la possibilité d’ajouter des circuits graphiques Radeon RX 7700S. Cette machine pourra bientôt être mise à jour grâce à la modularité de son concept. La nouvelle série propose de basculer sur la gamme Ryzen AI 300 et même de choisir un circuit Nvidia GeForce RTX 5070. Cette nouvelle gamme proposera pas moins de quatre sorties vidéo.
![]()
Ticket d’entrée pour cette nouvelle gamme complète et prémontée ? Le modèle de base n’est pas donné avec son Ryzen AI 7 350, 16 Go de mémoire vive et 512 Go de stockage sous Windows 11 il se positionne à 2029€. Si vous voulez le monter vous-même, vous pourrez économiser quelques dizaines d’euros avec un prix de base qui bascule à 1689€. Cela sans circuit graphique secondaire. Ajoutez 720€ si vous voulez un module d’extension Nvidia RTX 5070.
![]()
Le module d’extension graphique
D’autres options sont disponibles pour atteindre le modèle Ryzen AI 9 HX 370 à 2869€ prémonté avec 64 Go de mémoire vive et 2 To de stockage. Toujours sans circuit graphique Nvidia. C’est, semble-t-il, le prix à payer pour la modularité. Toutes les machines ne seront expédiées qu’en décembre si vous vous positionnez aujourd’hui en les précommandant. A noter que Framework a rogné sur le tarif des modèles précédents sous Ryzen 7040HS. Le modèle de base est désormais à 1799€ en 16/512 Go sous Win11.
![]()
La nouvelle version du Framework Laptop 16 propose également une webcam de meilleure qualité avec un modèle 9.2 MP OVO8X d’Omnivision entourée de deux micros, un châssis en aluminium renforcé et de nouvelles options de claviers… Framework propose surtout des lettrages classiques et peut également vous proposer d’embarquer un logo Windows et même une touche Copilot si vous aimez faire de la pub à Microsoft…
![]()
Pour le reste, c’est assez classique, on retrouve deux slots DDR5-5600 pour un maximum de 96 Go de mémoire vive, deux ports M.2 pour l’extension de stockage. Un M.2 2280 de base et un M.2 2230 en option. On retrouve un module Wi-Fi7 et Bluetooth 5.4 AMD RZ717, une paire d’enceintes stéréo et une batterie 85 Wh qui nécessitera le chargeur 240 W en USB Type-C livré avec.
![]()
Le système conserve évidemment sa particularité d’avoir une connectique magnétique avec des ports échangeables et vous pourrez donc ajouter six éléments à votre machine : des ports USB Type-A ou C, du HDMI ou DisplayPort, de l’Ethernet, un lecteur de carte, des sorties audio et même des SSD de 250 Go ou 1 To.
![]()
Évidemment, le gros intérêt de cette annonce est pour ceux qui possèdent déjà un Framework Laptop 16. Ils peuvent facilement remplacer la carte mère de leur modèle par une des nouveaux. Un échange qui permettra de garder son écran, son clavier et le reste de ses composants. L’ancienne carte mère pouvant être recyclée de différentes manières. Vous pouvez par exemple vous inspirer des nombreux projets DIY qui reprennent des cartes de la marque pour monter des minimachines : : Le Framedeck, le Mainboard Terminal, ce MiniPC Tout en un, le pseudo-netbook Penkesu Computer et même un format tablette. les nouvelles cartes se négocient de 929 à 1979€ suivant les composants embarqués.
Framework offre une option Gaming à son portable 16″ évolutif © MiniMachines.net. 2025
A couple of months ago we announced that you can test the online text-based Code Editor we’re building to help young people aged 7 and older learn to write code. Now we’ve made the code for the Editor open source so people can repurpose and contribute to it.

You and your learners can try out the Code Editor in our Python project paths. We’ve included a feedback form for you to let us know what you think about the Editor.
Since the Editor lets learners save their code using their Raspberry Pi Foundation account, it’s easy for them to build on projects they’ve started in the classroom or at home, or bring a project they’ve started at home to their coding club.

Python is the first programming language our Code Editor supports because it’s popular in schools, CoderDojos, and Code Clubs, as well as in industry. We’ll soon be adding support for web development languages (HTML/CSS).

We know that starting out with new programming tools can be tricky and add to the cognitive load of learning new subject matter itself. That’s why our Editor has a simple and accessible user interface and design:
We’ll expand the Editor’s functionalities as we go. For example, at the moment we’re looking at how to improve the Editor’s user interface (UI) for better mobile support.
If there’s a feature you think would help the Editor become more accessible and more suitable for young learners, or make it better for your classroom or club, please let us know via the feedback form.
Our vision is that every young person develops the knowledge, skills, and confidence to use digital technologies effectively, and to be able to critically evaluate these technologies and confidently engage with technological change. We’re part of a global community that shares that vision, so we’ve made the Editor available as an open-source project. That means other projects and organisations focussed on helping people learn about coding and digital technologies can benefit from the work.
To support the widest possible range of learners, we’ve designed the Code Editor application to work well on constrained devices and low-bandwidth connections. Safeguarding, accessibility, and data privacy are also key considerations when we build digital products at the Foundation. That’s why we decided to design the front end of the Editor to work in a standalone capacity, with Python executed through Skulpt, an entirely in-browser implementation of Python, and code changes persisted in local storage by default. Learners have the option of using a Raspberry Pi Foundation account to save their work, with changes then persisted via calls to a back end application programming interface (API).


As safeguarding is always at the core of what we do, we only make features available that comply with our safeguarding policies as well as the ICO’s age-appropriate design code. We considered supporting functionality such as image uploads and code sharing, but at the time of writing have decided to not add these features given that, without proper moderation, they present risks to safeguarding.
There’s an amazing community developing a wealth of open-source libraries. We chose to build our text-editor interface using CodeMirror, which has out-of-the-box mobile and tablet support and includes various useful features such as syntax highlighting and keyboard shortcuts. This has enabled us to focus on building the best experience for learners, rather than reinventing the wheel.
Diving a bit more into the technical details:
You can find out more about our Editor’s code for both the UI front end and API back end in our GitHub readme and contributions documentation. These kick-starter docs will help you get up and running faster:
The Editor’s front end is licensed as permissively as possible under the Apache Licence 2.0, and we’ve chosen to license the back end under the copyleft AGPL V3 licence. Copyleft licences mean derived works must be licensed under the same terms, including making any derived projects also available to the community.
We’d greatly appreciate your support with developing the Editor further, which you can give by:
Our work to develop and publish the Code Editor as an open-source project has been funded by Endless. We thank them for their generous support.
If you are interested in partnering with us to fund this key work, or you are part of an organisation that would like to make use of the Code Editor, please reach out to us via email.
The post Our Code Editor is open source appeared first on Raspberry Pi Foundation.
We are building a new online text-based Code Editor to help young people aged 7 and older learn to write code. It’s free and designed for young people who attend Code Clubs and CoderDojos, students in schools, and learners at home.

At this stage of development, the Code Editor enables learners to:

We’ve chosen Python as the first programming language our Code Editor supports because it is popular in schools, CoderDojos, and Code Clubs. Many educators and young people like Python because they see it as similar to the English language. It is often the text-based language young people learn when they take their first steps away from a block-based programming environment, such as Scratch.
Python is also widely used by professional programmers and usually tops at least one of the industry-standard indexes that ranks programming languages.
We will be adding support for web development languages (HTML/CSS/JavaScript) to the Editor in the near future.
We’re also planning to add features such as project sharing and collaboration, which we know young people will love. We want the Editor to be safe, accessible, and age-appropriate. As safeguarding is always at the core of what we do, we’ll only make new features available once we’ve ensured they comply with the ICO’s age-appropriate design code and our safeguarding policies.
We are inviting you to test the Code Editor as part of what we call the beta phase of development. As the Editor is still in development, some things might not look or work as well as we’d like — and this is why we need your help.

We’d love you to try the Editor out and let us know what worked well for you, what didn’t work well, and what you’d like to see next.
You can now try out the Code Editor in the first two projects of our ‘Intro to Python’ path. We’ve included a feedback form for you to let us know which project you tried, and what you think of the Editor. We’d love to hear from you.
Your feedback helps us decide what to do next. Based on what learners, educators, volunteers, teachers, and parents tell us, we will make the improvements to the Editor that matter most to the young people we aim to support.
One of our long-term goals is to engage millions of young people in learning about computing and how to create with digital technologies. We’re developing the Code Editor with three main aims in mind.
We aim to build the Code Editor so it:
Our work on the Code Editor will:
We want to offer a Code Editor that:
We’re also planning on making the Editor available as an open source project so that other projects and organisations focussed on helping people learn to code can benefit. More on this soon.
Our work on the Code Editor has been generously funded by the Algorand Foundation and Endless, and we thank them for their generous support. If you are interested in partnering with us to fund this key work, please reach out to us via email.
The post Test our new Code Editor for young people appeared first on Raspberry Pi Foundation.
A year ago we launched our Introduction to Scratch path of six new coding projects. This was the first path to use our new 3…2…1…Make! approach for prioritising fun and engagement whilst enabling creators to make the things that matter to them. Creators learn how to add code, costumes, and sounds to sprites as they make animations, a game, an app, and a book.

As the first birthday of the Introduction to Scratch path approached, we decided to review and refresh each project. We used input from the community, looked at remixes of the projects, and analysed visitor data to guide us in our review.
We would like to say a massive thank you to everyone who engaged in focus groups, provided input via social channels, or clicked the project feedback buttons. We really appreciate you taking the time to reach out and we hope you will be pleased with the changes.
The updates are split into two parts, those we made specifically to the Introduction to Scratch path, and changes made across all of the 3…2…1…Make! projects.
The first thing you might notice is the revamp of our Introduction step, now called ‘You will make’. This simplified step focuses on setting the scene and encourages creators to play with a completed project example.

Also changed is the Reflection step, replaced by ‘Quick quiz’ — a much neater page that guides creators through three questions before awarding a project badge.
Here is an overview of the Scratch path to tell you more about the projects and the changes we’ve made to the content.
Creators can start using the updated Scratch projects right away!
Our first three projects in the path introduce creators to a set of skills and provide step-by-step instructions to help them develop initial confidence.
In this project, creators design a space scene with characters that emote to share their thoughts or feelings. We received some amazing feedback from a member of the Deaf community to enhance the Nano uses sign language task and include a great new boxout to prompt discussion amongst our creators.
We also heard from a couple of club leaders that the Text to Speech extension in Scratch was a great addition to this project so we added an optional Text to Speech information card to the Upgrade your project step.

The bus in the Catch the bus project is a tour bus, but we originally used the school backdrop as a departure point. We liked how the backdrop looked but now recognise that doing a project about a school bus whilst in a club was probably not the most popular choice. Please forgive us! The project now uses a nighttime city scene.
We also removed the use of the ‘Timer hat block’ from this project — it isn’t needed for the rest of the path and has behaviour that complicates things. The ‘timer hat block’ has been replaced by a ‘wait block’.

We have loved engaging with the community submissions of this project and really enjoyed seeing how quickly we can find the small bugs on each level of the games that have been created. With replicating that enthusiasm in mind, our changes to this project focused on young creators sharing their project and playing projects created by others.
Our new Share and play step has a number of options, including sharing in a club, submitting your project to a shared studio, and experiencing remixes as a user. We have also embedded some community projects into the step to provide upgrade ideas and inspiration.

The next two projects in the path encourage creators to practise the skills they learned in the previous ‘Explore’ projects, and to express themselves creatively while they grow in independence.
The revamped Get ideas task on the first step of each Design project now has a featured community project that will be regularly updated. You may also notice that the inspirational examples have been reordered or changed using analysis from interactions with them.
Additional community submissions can be found in the Share and play steps to provide upgrade ideas and creators are encouraged to look at remixes of the starter project for even more inspiration.
Interacting with remixes of the Silly eyes project is one of our favourite things to do! The project involves creating a character whose eyes follow the mouse pointer. We love seeing how design decisions have shaped each project and how various upgrades have been used.
For this project, we decided to remove the ‘Add stage effects’ step as it was largely a repeat of the earlier ‘Add sprite effects’ step. Stage effects is now an optional upgrade which means creators can get through to the ‘Share and play’ step to look at the design decisions made by others, then use those to choose which ideas to include in their project.

This project consists of creating an animation of a story. We looked at the remixes so far and realised the main steps of the surprise animations were:
Sometimes projects had a reaction in them but others relied on creating a reaction in the user watching the animation. With this in mind we moved the Reaction step and added it as an optional upgrade. We also added graphics to each step to explain the step position in the animation timeline.
A new option to remix one of the example projects was added to this project as a starting point if creators were short of time, needed help with ideas, or had perhaps already thought of an extension to the example animations.

Our final project in the path is where creators use their skills to meet a project brief for a particular audience.
The project brief has been revamped to make it more concise with the Reflection step becoming a checklist to keep track of how the project is meeting the brief.
This project consists of creating a book with multiple pages to tell a story or share facts. The major change to this project is a reorganisation of the steps. The original planning step has now split in two — the first step to decide the high-level purpose and audience for the book and the second step to plan the book in more detail using either the starter Scratch project or our new planning sheet.

The build and test step has also been restructured to break up the skills into categories and make the tasks clearer. At the end of the step, creators are encouraged to ask for feedback then repeat the process to work on their book until it is ready to share.
We will start refreshing another path soon but in the meantime, we hope you and your creators enjoy using the revamped Introduction to Scratch path. We would love to hear your feedback on any of our projects via the feedback button on the bottom of each project page.

We look forward to seeing what your creators make.
The post Introduce young people to coding with our updated projects appeared first on Raspberry Pi.
With our new free ‘Introduction to web development’ path, young people are able to learn HTML and create their own webpages on topics that matter to them. The path is made up of six projects that show children and teenagers how to structure pages using HTML, and style them using CSS.

Webpage creation has come a long way since the 1990s, but HTML is still the markup language that is used to display almost every page on the World Wide Web. By knowing how it works, you can deepen your understanding of the technology you use every day.
If you want to build your own website today, there are many tools to get you quickly up and running. These tools often involve dragging and dropping predefined elements and choosing from a wide collection of themed looks. Learning HTML and CSS skills is important for web designers, developers, and content creators who want to build unique webpage designs that make their content stand out.

With our new ‘Introduction to web development’ path, we want creators (the young people who use our projects) to be able to quickly make fantastic-looking websites that follow modern best practices, while they also learn how HTML and CSS work together to create a webpage. Creators write their own HTML to develop the content and structure of their webpages. And they customise our pre-built CSS style sheets to get their webpages to look like they imagine.
This really is a fun and unique approach to learning HTML and building a webpage, and we think young people will quickly engage with it. They start by finding out how to structure pages using HTML before applying CSS styles that bring their pages to life. Through the six projects, they build all the skills and independence they need to make webpages that matter to them.
We believe that young people should find out about website accessibility right from the start of their learning journey. That’s why the path for learning HTML shows creators how they can make their websites accessible to all their users regardless of the users’ needs or digital devices.
That’s why our new path uses semantic HTML. Older HTML tutorials might show you how to structure a webpage using tags like <div> and <span>. In contrast, the meaning and purpose of tags in semantic HTML is very clear. For example:
<main> is used to tag the main content for the webpage<footer> is used for content to be displayed in the footer<blockquote> contains a quote and typically the author of the quote<section> contains a portion of content that usually sits within the main part of the webpageSemantic HTML supports accessibility because it allows people who use a screen reader to more easily navigate a webpage and read it in a logical way.
Another element of accessible design that the path introduces is the colour combinations used on webpages. It is really important that contrasting colours are used for the background and the text. High contrast makes the text more readable, which means the webpage is more suitable for visually impaired users.

The path also shows creators the importance of adding meaningful alternative text for images. Good alternative text helps visually impaired users, and users who have a very low bandwidth and therefore turn images off in their web browser.

Finally, our path for learning HTML introduces creators to the concept of responsive web design. Responsive design is helpful because websites can be viewed on thousands of different devices. Some people view pages on large, high-resolution monitors, and others view them on a mobile phone screen. We show learners how they can use HTML and CSS to make their pages responsive so they display in the way that works best for the specific screen on which a user is viewing them.
We have written the projects in this path with young people of around the age from 9 to 17 in mind.
HTML and CSS are text-based markup languages. This means a young person who wants to start learning HTML needs to be familiar with typing on a keyboard. It would also be helpful to have experience of using the copy and paste function, which is useful when changing the layout of a page or copying similar pieces of code.

If a young person is unsure whether they have the right skills to get started with the path, they can first try out a short ‘Discover’ project. With this Discover project, young people can choose between the themes ‘space’, ‘sunsets’, ‘forests’, or ‘animals’ to see how they can create their first webpage in just five steps. (We’re still working on the ‘Discover’ project type, so if you have any feedback about it, let us know.)

Creators will learn how to use HTML and CSS to build webpages that have:
They will also learn about how to make their webpages accessible to all through use of:
We’ve designed the path so young people can complete it in six one-hour sessions, with one hour for each project. Since the project instructions encourage creators to upgrade their projects, they may wish to go further and spend a little more time getting their projects exactly as they imagine them.

Young people only need a standard web browser to follow the project instructions and use an online code editor to create their webpages.
There are 28 other step-by-step projects for creators to choose from on our website. They can browse through these to see what cool things they’d like to make and what new skills they want to learn.
If your kid is proud of the webpage they create with the final ‘Invent’ project in the path, they can share it with a worldwide community of young creators in our free Coolest Projects tech showcase. Project registration will open again in spring 2023. You can sign up to hear news about the showcase on the Coolest Projects homepage.

The post Get kids creating webpages with HTML and CSS appeared first on Raspberry Pi.
Since the release of the Raspberry Pi Pico microcontroller in 2021, we have seen people all over the world come up with creative Pico-based inventions.

Now, thanks to our brand-new and free ‘Introduction to Raspberry Pi Pico’ learning path, young coders can easily join in and make their own cool Pico projects! This free learning path has six guided projects to help kids to independently develop their coding skills, and their skills in physical computing and electronics.

In this post, I’ll tell you about Raspberry Pi Pico, what kids can make by following our free ‘Intro to Pico’ path, and what skills they will be learning.
Raspberry Pi Pico is a physical computing device that is low-cost and easy to use. It’s much smaller than any Raspberry Pi computer, and it needs much less power. That’s because it’s not a full computer but instead a microcontroller. That means Pico is a device that you program by writing code on any computer, and then sending that code to Pico via a USB cable.

In the ‘Intro to Raspberry Pi Pico’ path, we’ve designed new digital making projects specifically using Pico. By following the projects in the path, young people learn to make things with different electronic components. They’ll bring to life their own LED fireflies; they’ll make music with a sound machine and dial (a potentiometer); they’ll look after themselves and people around them by making a mood indicator and a heart rate visualiser. To find out more, visit the path, or scroll to the bottom of this post and click on ‘Details about the projects’.
The specially designed structure of our learning paths helps kids become confident and independent coders and digital makers. Through this project path, we want to show young people what is possible with Raspberry Pi Pico and inspire them to continue their digital making journey beyond the six projects. Seeing tech creations from our amazing community is super special to us, and we would love to hear about what your young coders have made with Pico. Kids can share their projects in the path gallery, or you can tag us on social media if you post photos!

While young people make all these Raspberry Pi Pico projects, they will learn the skills and independence to make and code their very own, unique creations with a Pico. We have designed our new project paths to help kids become independent digital makers. As they progress through a path, kids gain new skills, practise what they have learnt, and finally write and follow their own project brief.
Our learning paths help kids develop many of the skills that are important to all coders and digital makers, no matter how much experience they have:
The learning paths also encourage kids to make projects about the things that matter to them.
We have written the projects in this path with young people around the age of 9 to 13 in mind.
Programs for Raspberry Pi Pico are written in a text-based language called MicroPython. That means a young person who wants to start the ‘Intro to Pico’ path needs to be familiar with typing on a keyboard.

If your kid has never coded in a text-based language before, they could complete our free ‘Introduction to Python‘ project path first, but this is not a prerequisite.
To help with the programming aspects of the projects, the instructions in the path tell young people about:

One of the great things about this project path is that it helps young people explore physical computing and electronics. In the ‘Intro to Pico’ path, they’ll use:
We’ve designed the path to be completed in around six one-hour sessions, with one hour per project. However, the project instructions encourage kids to upgrade their projects and go further if they wish. This means that they might want to spend a little more time getting their projects exactly as they imagine.
Young people need a web browser so they can follow the project instructions. The first two projects in the path provide detailed instructions for how to install the free software needed for the projects.

The first step of each project lists what components are needed to create the project. You can purchase a kit from Pimoroni that includes all of the components used in the path:
If your young coders enjoy MicroPython, they’ll also love our Python learning paths: ‘Introduction to Python‘ and ‘More Python‘. Both are structured in the same way as our Pico path, and will help young people learn Python while creating their own visual designs.

The post Get kids coding and learning electronics with Raspberry Pi Pico appeared first on Raspberry Pi.
As you might know, I have been developing, providing, and supporting the prioritization tool 1st things 1st. One of the essential features to implement was exporting calculated priorities to other productivity tools. Usually, building an export from one app to another takes 1-2 weeks for me. But this time, I decided to go a better route and use Zapier to export priorities to almost all possible apps in a similar amount of time. Whaaat!?? In this article, I will tell you how.
The no-code tool Zapier takes input from a wide variety of web apps and outputs it to many other apps. Optionally you can filter the input based on conditions. Or format the input differently (for example, convert HTML to Markdown). In addition, you can stack the output actions one after the other. Usually, people use 2-3 steps for their automation, but there are power users who create 50-step workflows.
The input is managed by Zapier's triggers. The output is controlled by Zapier's actions. These can be configured at the website UI or using a command-line tool. I used the UI as this was my first integration. Trigger events accept a JSON feed of objects with unique IDs. Each new item there is treated as a new input item. With a free tier, the triggers are checked every 15 minutes. Multiple triggers are handled in parallel, and the sorting order of execution is not guaranteed. As it is crucial to have the sorting order correct for 1st things 1st priorities, people from Zapier support suggested providing each priority with a 1-minute interval to make sure the priorities get listed in the target app sequentially.
The most challenging part of Zapier integration was setting up OAuth 2.0 provider. Even though I used a third-party Django app django-oauth-toolkit for that. Zapier accepts other authentication options too, but this one is the least demanding for the end-users.
OAuth 2.0 allows users of one application to use specific data of another application while keeping private information private. You might have used the OAuth 2.0 client directly or via a wrapper for connecting to Twitter apps. For Zapier, one has to set OAuth 2.0 provider.
The official tutorial for setting up OAuth 2.0 provider with django-oauth-toolkit is a good start. However, one problem with it is that by default, any registered user can create OAuth 2.0 applications at your Django website, where in reality, you need just one global application.
First of all, I wanted to allow OAuth 2.0 application creation only for superusers.
For that, I created a new Django app oauth2_provider_adjustments with modified views and URLs to use instead of the ones from django-oauth-toolkit.
The views related to OAuth 2.0 app creation extended this SuperUserOnlyMixin instead of LoginRequiredMixin:
from django.contrib.auth.mixins import AccessMixin
class SuperUserOnlyMixin(AccessMixin):
def dispatch(self, request, *args, **kwargs):
if not request.user.is_superuser:
return self.handle_no_permission()
return super().dispatch(request, *args, **kwargs)Then I replaced the default oauth2_provider URLs:
urlpatterns = [
# …
path("o/", include("oauth2_provider.urls", namespace="oauth2_provider")),
]with my custom ones:
urlpatterns = [
# …
path("o/", include("oauth2_provider_adjustments.urls", namespace="oauth2_provider")),
]I set the new OAuth 2.0 application by going to /o/applications/register/ and filling in this info:
Name: Zapier
Client type: Confidential
Authorization grant type: Authorization code
Redirect uris: https://zapier.com/dashboard/auth/oauth/return/1stThings1stCLIAPI/ (copied from Zapier)
Algorithm: No OIDC support
If you have some expertise in the setup choices and see any flaws, let me know.
Zapier requires creating a test view that will return anything to check if there are no errors authenticating a user with OAuth 2.0. So I made a simple JSON view like this:
from django.http.response import JsonResponse
def user_info(request, *args, **kwargs):
if not request.user.is_authenticated:
return JsonResponse(
{
"error": "User not authenticated",
},
status=200,
)
return JsonResponse(
{
"first_name": request.user.first_name,
"last_name": request.user.last_name,
},
status=200,
)Also, I had to have login and registration views for those cases when the user's session was not present.
Lastly, at Zapier, I had to set these values for OAuth 2.0:
Client ID: The Client ID from registered app
Client Secret: The Client Secret from registered app
Authorization URL: https://apps.1st-things-1st.com/o/authorize/
Scope: read write
Access Token Request: https://apps.1st-things-1st.com/o/token/
Refresh Token Request: https://apps.1st-things-1st.com/o/token/
I want to automatically refresh on unauthorized error:
Checked
Test: https://apps.1st-things-1st.com/user-info/
Connection Label: {{first_name}} {{last_name}}
There are two types of triggers in Zapier:
The feeds for triggers should (ideally) be paginated. But without meta information for the item count, page number, following page URL, etc., you would usually have with django-rest-framework or other REST frameworks. Provide only an array of objects with unique IDs for each page. The only field name that matters is "id" – others can be anything. Here is an example:
[
{
"id": "39T7NsgQarYf",
"project": "5xPrQbPZNvJv",
"title": "01. Custom landing pages for several project types (83%)",
"plain_title": "Custom landing pages for several project types",
"description": "",
"score": 83,
"priority": 1,
"category": "Choose"
},
{
"id": "4wBSgq3spS49",
"project": "5xPrQbPZNvJv",
"title": "02. Zapier integration (79%)",
"plain_title": "Zapier integration",
"description": "",
"score": 79,
"priority": 2,
"category": "Choose"
},
{
"id": "6WvwwB7QAnVS",
"project": "5xPrQbPZNvJv",
"title": "03. Electron.js desktop app for several project types (42%)",
"plain_title": "Electron.js desktop app for several project types",
"description": "",
"score": 41,
"priority": 3,
"category": "Consider"
}
]The feeds should list items in reverse order for the (A) type of triggers: the newest things go at the beginning. The pagination is only used to cut the number of items: the second and further pages of the paginated list are ignored by Zapier.
In my specific case of priorities, the order matters, and no items should be lost in the void. So I listed the priorities sequentially (not newest first) and set the number of items per page unrealistically high so that you basically get all the things on the first page of the feed.
The feeds for the triggers of (B) type are normally paginated from the first page until the page returns empty results. The order should be alphabetical, chronological, or by sorting order field, whatever makes sense. There you need just two fields, the ID and the title of the item (but more fields are allowed too), for example:
[
{
"id": "5xPrQbPZNvJv",
"title": "1st things 1st",
"owner": "Aidas Bendoraitis"
},
{
"id": "VEXGzThxL6Sr",
"title": "Make Impact",
"owner": "Aidas Bendoraitis"
},
{
"id": "WoqQbuhdUHGF",
"title": "DjangoTricks website",
"owner": "Aidas Bendoraitis"
},
]I used django-rest-framework to implement the API because of the batteries included, such as browsable API, permissions, serialization, pagination, etc.
For the specific Zapier requirements, I had to write a custom pagination class, SimplePagination, to use with my API lists. It did two things: omitted the meta section and showed an empty list instead of a 404 error for pages that didn't have any results:
from django.core.paginator import InvalidPage
from rest_framework.pagination import PageNumberPagination
from rest_framework.response import Response
class SimplePagination(PageNumberPagination):
page_size = 20
def get_paginated_response(self, data):
return Response(data) # <-- Simple pagination without meta
def get_paginated_response_schema(self, schema):
return schema # <-- Simple pagination without meta
def paginate_queryset(self, queryset, request, view=None):
"""
Paginate a queryset if required, either returning a
page object, or `None` if pagination is not configured for this view.
"""
page_size = self.get_page_size(request)
if not page_size:
return None
paginator = self.django_paginator_class(queryset, page_size)
page_number = self.get_page_number(request, paginator)
try:
self.page = paginator.page(page_number)
except InvalidPage as exc:
msg = self.invalid_page_message.format(
page_number=page_number, message=str(exc)
)
return [] # <-- If no items found, don't raise NotFound error
if paginator.num_pages > 1 and self.template is not None:
# The browsable API should display pagination controls.
self.display_page_controls = True
self.request = request
return list(self.page)To preserve the order of items, I had to make the priorities appear one by one at 1-minute intervals. I did that by having a Boolean field exported_to_zapier at the priorities. The API showed priorities only if that field was set to True, which wasn't the case by default. Then, background tasks were scheduled 1 minute after each other, triggered by a button click at 1st things 1st, which set the exported_to_zapier to True for each next priority. I was using huey, but the same can be achieved with Celery, cron jobs, or other background task manager:
# zapier_api/tasks.py
from django.conf import settings
from django.utils.translation import gettext
from huey.contrib.djhuey import db_task
@db_task()
def export_next_initiative_to_zapier(project_id):
from evaluations.models import Initiative
next_initiatives = Initiative.objects.filter(
project__pk=project_id,
exported_to_zapier=False,
).order_by("-total_weight", "order")
count = next_initiatives.count()
if count > 0:
next_initiative = next_initiatives.first()
next_initiative.exported_to_zapier = True
next_initiative.save(update_fields=["exported_to_zapier"])
if count > 1:
result = export_next_initiative_to_zapier.schedule(
kwargs={"project_id": project_id},
delay=settings.ZAPIER_EXPORT_DELAY,
)
result(blocking=False)
One gotcha: Zapier starts pagination from 0, whereas django-rest-framework starts pagination from 1. To make them work together, I had to modify the API request (written in JavaScript) at Zapier trigger configuration:
const options = {
url: 'https://apps.1st-things-1st.com/api/v1/projects/',
method: 'GET',
headers: {
'Accept': 'application/json',
'Authorization': `Bearer ${bundle.authData.access_token}`
},
params: {
'page': bundle.meta.page + 1 // <-- The custom line for pagination
}
}
return z.request(options)
.then((response) => {
response.throwForStatus();
const results = response.json;
// You can do any parsing you need for results here before returning them
return results;
});For the v1 of Zapier integration, I didn't need any Zapier actions, so they are yet something to explore, experiment with, and learn about. But the Zapier triggers seem already pretty helpful and a big win compared to individual exports without this tool.
If you want to try the result, do this:
Cover photo by Anna Nekrashevich
We are excited to announce our second new Python learning path, ‘More Python’, which shows young coders how to add real data to their programs while creating projects from a chart of Olympic medals to an interactive world map. The six guided Python projects in this free learning path are designed to enable young people to independently create their own Python projects about the topics that matter to them.

In this post, we’ll show you how kids use the projects in the ‘More Python’ path, what they can make by following the path, and how the path structure helps them become confident and independent digital makers.
Our ‘Introduction to Python’ learning path is the perfect place to start learning how to use Python, a text-based programming language. When we launched the Intro path in February, we explained why Python is such a popular, useful, and accessible programming language for young people.
Because Python has so much to offer, we have created a second Python path for young people who have learned the basics in the first path. In this new set of six projects, learners will discover new concepts and see how to add different types of real data to their programs.

We have written the projects in this path with young people around the age of 10 to 13 in mind. To code in a text-based language, a young person needs to be familiar with using a keyboard, due to the typing involved. Learners should have already completed the ‘Introduction to Python’ project path, as they will build on the learning from that path.

Young people need access to a web browser to complete our project paths. Each project contains step-by-step instructions for learners to follow, and tick boxes to mark when they complete each step. On top of that, the projects have steps for learners to:
Young people also have the option to sign up for an account with us so they can save their progress at any time and collect badges.

While learners follow the project instructions in this project path, they write their code into Trinket, a free web-based coding platform accessible in a browser. Each project contains a link to a starter Trinket, which includes everything to get started writing Python code — no need to install any additional software.

If they prefer, however, young people also have the option of instead writing their code in a desktop-based programming environment, such as Thonny, as they work through the projects.
To use data in their Python programs, the project instructions show learners how to:
The projects support learners as they explore new concepts of digital visual media and:
In each project, learners reflect and answer questions about their work, which is important for connecting the project’s content to their pre-existing knowledge.

As they work through the projects, learners see different ways to present data and then decide how they want to present their data in the final project in the path. You’ll find out what the projects are on the path page, or at the bottom of this blog post.
The project path helps learners become independent coders and digital makers, as each project contains slightly less support than the one before. You can read about how our project paths are designed to increase young people’s independence, and explore our other free learning paths for young coders
We’ve designed the path to be completed in around six one-hour sessions, with one hour per project, at home, in school, or at a coding club. The project instructions encourage learners to add code to upgrade their projects and go further if they wish. This means that young people might want to spend a little more time getting their projects exactly as they imagine them.

Unity is a free development environment for creating 3D virtual environments, including games, visual novels, and animations, all with the text-based programming language C#. Our ‘Introduction to Unity’ project path for keen coders shows how to make 3D worlds and games with collectibles, timers, and non-player characters.
At the end of the ‘More Python’ path, learners are encouraged to register a project they’ve made using their new coding skills for Coolest Projects Global, our free and world-leading online technology showcase for young tech creators. The project they register will become part of the online gallery, where members of the Coolest Projects community can celebrate each other’s creations.

We welcome projects from all young people, whether they are beginners or experienced coders and digital makers. Coolest Projects Global is a unique opportunity for young people to share their ingenuity with the world and with other young people who love coding and creating with digital technology.
The post Python coding for kids: Moving beyond the basics appeared first on Raspberry Pi.
When you develop a web app or a mobile app with Django, it is common to use the Django REST Framework for communication with the server-side. The client-side makes GET, POST, PUT, and DELETE requests to the REST API to read, create, update, or delete data there. The communication by Ajax is pretty uncomplicated, but how would you upload an image or another file to the server? I will show you that in this article by creating user avatar upload via REST API. Find the full code for this feature on Github.
We will start by installing Pillow for image handling to the virtual environment using the standard pip command:
(venv)$ pip install PillowCreate accounts app with a custom User model:
# myproject/apps/accounts/models.py
import os
import sys
from django.db import models
from django.contrib.auth.models import AbstractUser
from django.utils import timezone
from django.utils.translation import gettext_lazy as _
def upload_to(instance, filename):
now = timezone.now()
base, extension = os.path.splitext(filename.lower())
milliseconds = now.microsecond // 1000
return f"users/{instance.pk}/{now:%Y%m%d%H%M%S}{milliseconds}{extension}"
class User(AbstractUser):
# …
avatar = models.ImageField(_("Avatar"), upload_to=upload_to, blank=True)You can add there as many fields as you need, but the noteworthy part there is the avatar field.
Update the settings and add the accounts app to INSTALLED_APPS, set the AUTH_USER_MODEL, and the configuration for the static and media directories:
# myproject/settings.py
INSTALLED_APPS = [
# …
"myproject.apps.accounts",
]
AUTH_USER_MODEL = "accounts.User"
STATICFILES_DIRS = [os.path.join(BASE_DIR, "myproject", "site_static")]
STATIC_ROOT = os.path.join(BASE_DIR, "myproject", "static")
STATIC_URL = "/static/"
MEDIA_ROOT = os.path.join(BASE_DIR, "myproject", "media")
MEDIA_URL = "/media/"Next small steps:
makemigrations and migrate management commands.createsuperuser management command.Install Django REST Framework for the REST APIs to your virtual environment, as always, using pip:
(venv)$ pip install djangorestframeworkWe'll be using authentication by tokens in this example. So add Django REST Framework to INSTALLED_APPS in the settings and set TokenAuthentication as the default authentication in the REST_FRAMEWORK configuration:
# myproject/settings.py
INSTALLED_APPS = [
# …
"rest_framework",
"rest_framework.authtoken",
# …
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': [
'rest_framework.authentication.TokenAuthentication',
]
}In Django REST Framework, serializers are used for data validation, rendering, and saving. They are similar to Django forms. Prepare UserAvatarSerializer for avatar uploads:
# myproject/apps/accounts/serializers.py
from django.contrib.auth import get_user_model
from rest_framework.serializers import ModelSerializer
User = get_user_model()
class UserAvatarSerializer(ModelSerializer):
class Meta:
model = User
fields = ["avatar"]
def save(self, *args, **kwargs):
if self.instance.avatar:
self.instance.avatar.delete()
return super().save(*args, **kwargs)Now create an API view UserAvatarUpload for avatar uploads.
# myproject/apps/accounts/views.py
from rest_framework import status
from rest_framework.parsers import MultiPartParser, FormParser
from rest_framework.permissions import IsAuthenticated
from rest_framework.response import Response
from rest_framework.views import APIView
from .serializers import UserAvatarSerializer
class UserAvatarUpload(APIView):
parser_classes = [MultiPartParser, FormParser]
permission_classes = [IsAuthenticated]
def post(self, request, format=None):
serializer = UserAvatarSerializer(data=request.data, instance=request.user)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_200_OK)
else:
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)Make sure that the view uses MultiPartParser as one of the parser classes. That's necessary for the file transfers.
In the URL configuration, we will need those URL rules:
TemplateView.# myroject/urls.py
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path
from django.views.generic import TemplateView
from django.conf import settings
from myproject.accounts.views import UserAvatarUpload
from rest_framework.authtoken.views import obtain_auth_token
urlpatterns = [
path("", TemplateView.as_view(template_name="index.html")),
path("api/auth-token/", obtain_auth_token, name="rest_auth_token"),
path("api/user-avatar/", UserAvatarUpload.as_view(), name="rest_user_avatar_upload"),
path("admin/", admin.site.urls),
]
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)I will illustrate the frontend using Bootstrap HTML and Vanilla JavaScript. Of course, you can implement the same using ReactJS, Vue, Angular, or other JavaScript framework and any other CSS framework.
The template for the index page has one login form with username and password or email and password fields (depending on your implementation), and one avatar upload form with a file selection field. Also, it includes a JavaScript file avatar.js for Ajax communication.
{# myproject/templates/index.html #}
<!doctype html>
{% load static %}
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<title>Hello, World!</title>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-8">
<p class="text-muted my-3"><small>Open Developer Console for information about responses.</small></p>
<h1 class="my-3">1. Log in</h1>
<form id="login_form">
<div class="form-group">
<label for="id_email">Email address</label>
<input type="email" class="form-control" id="id_email" aria-describedby="emailHelp"
placeholder="Enter email"/>
</div>
<div class="form-group">
<label for="id_password">Password</label>
<input type="password" class="form-control" id="id_password" placeholder="Password"/>
</div>
<button type="submit" class="btn btn-primary">Log in</button>
</form>
<h1 class="my-3">2. Upload an avatar</h1>
<form id="avatar_form">
<div class="form-group">
<label for="id_avatar">Choose an image for your avatar</label>
<input type="file" class="form-control-file" id="id_avatar"/>
</div>
<button type="submit" class="btn btn-primary">Upload</button>
</form>
</div>
</div>
</div>
<script src="{% static 'site/js/avatar.js' %}"></script>
</body>
</html>Last but not least, create the JavaScript file avatar.js. It contains these things:
// myproject/site_static/site/js/avatar.js
let userToken;
document.getElementById('login_form').addEventListener('submit', function(event) {
event.preventDefault();
let email = document.getElementById('id_email').value;
let password = document.getElementById('id_password').value;
fetch('http://127.0.0.1:8000/api/auth-token/', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
"username": email,
"password": password,
})
}).then( response => {
return response.json();
}).then(data => {
console.log(data);
userToken = data.token;
console.log('Logged in. Got the token.');
}).catch((error) => {
console.error('Error:', error);
});
});
document.getElementById('avatar_form').addEventListener('submit', function(event) {
event.preventDefault();
let input = document.getElementById('id_avatar');
let data = new FormData();
data.append('avatar', input.files[0]);
fetch('http://127.0.0.1:8000/api/user-avatar/', {
method: 'POST',
headers: {
'Authorization': `Token ${userToken}`
},
body: data
}).then(response => {
return response.json();
}).then(data => {
console.log(data);
}).catch((error) => {
console.error('Error:', error);
});
});In the JavaScript file, we are using fetch API for the REST API requests. The noteworthy part there is the FormData class that we use to send the file to the server.
Now run the local development server and go to the http://127.0.0.1:8000. There you will have something like this:
![]()
As more than a half Internet usage happens on mobile devices, there is a demand to switch from usual HTML websites and platforms to mobile apps. Whether you create a native mobile app, a hybrid app, or Progressive Web App, you will likely have to communicate with the server via REST API or GraphQL. It is pretty clear how to transfer textual data from and to a remote server. But after this exercise, we can also transfer binary files like images, PDF or Word documents, music, and videos.
Happy coding!
Cover Photo by Dan Silva