IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Rio : un framework facile à utiliser pour créer des sites web et des applications modernes entièrement basés sur Python, sans avoir besoin d'une seule ligne de HTML, CSS ou JavaScript

Le , par Jade Emy

266PARTAGES

10  0 
Rio est un framework facile à utiliser pour créer des sites web et des applications et est entièrement basé sur Python. Selon Rio Labs, vous n'aurez pas besoin d'une seule ligne de HTML, CSS ou JavaScript pour créer de belles applications modernes.

Rio apporte des composants de type React à Python. Tirez parti d'une multitude de composants intégrés et combinez-les pour créer vos propres composants personnalisés. Combinez-les ensuite pour créer des applications complètes. Mieux encore, les applications Rio peuvent s'exécuter aussi bien localement sur votre machine que sur le web.


Fonctionnalités

  • Cadre d'interface utilisateur moderne et déclaratif
  • 100% Python - Pas besoin de HTML, CSS ou JavaScript
  • Plus de 50 composants intégrés pour les éléments d'interface utilisateur courants, tels que rio.Switch, rio.Button, et rio.Text, et bien d'autres encore.
  • Intégration avec les outils Python modernes : Grâce à la sécurité de type, les éditeurs peuvent vous donner des suggestions instantanées et mettre en évidence les problèmes immédiatement.
  • Les applications peuvent être exécutées à la fois localement et sur le web.
  • Outils de développement inclus
  • Open Source et gratuit pour toujours


Exemple

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Define a component that counts button clicks
class ButtonClicker(rio.Component):
    # Define the attributes of the component. Rio will watch these
    # for changes and automatically update the GUI.
    clicks: int = 0

    # Define a method that increments the click count. We'll later
    # make a button that calls this method whenever it is pressed.
    def _on_press(self) -> None:
        self.clicks += 1

    # Define the `build` method. This method essentially tells rio
    # what a ButtonClicker component looks like. Whenever the state
    # of the ButtonClicker component changes, rio will call its
    # `build` method and update the GUI according to the output.
    def build(self) -> rio.Component:
        return rio.Column(
            rio.Button('Click me', on_press=self._on_press),
            rio.Text(f'You clicked the button {self.clicks} time(s)'),
        )

# Create an App and tell it to display a ButtonClicker when it starts
app = rio.App(build=ButtonClicker)
app.run_in_browser()  # Or `app.run_in_window()` to run as local app!


Installation

Rio est disponible sur PyPI, vous pouvez donc l'installer en utilisant pip :

Code : Sélectionner tout
pip install rio-ui

Pour commencer

Rio est livré avec un utilitaire de ligne de commande très utile pour vous aider. Créez un nouveau projet en une courte commande :

Code : Sélectionner tout
rio new

Vous pouvez choisir parmi une variété de modèles intégrés pour vous aider à démarrer. Voici un exemple complet pour créer un projet basé sur le modèle tic-tac-toe :

Code : Sélectionner tout
1
2
3
rio new my-project --type website --template "Tic-Tac-Toe"
cd my-project
rio run

Votre première application sera opérationnelle en quelques secondes !

Source : Présentation de Rio

Et vous ?

Quel est votre avis sur cet outil ?

Voir aussi :

Python creuse l'écart et renforce son avance en tant que langage de programmation le plus populaire sur l'indice TIOBE : mais pourquoi le langage est-il autant prisé ?

Seuls 7 % des développeurs sont susceptibles d'utiliser des outils low-code ou no-code pour entamer un projet d'application web en 2022, d'après un sondage : Quel avenir pour ces outils ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de FrancoisA
Membre du Club https://www.developpez.com
Le 14/10/2024 à 11:24
Personnellement, je n'ai pas pu faire fonctionner le framework Rio comme le montre l'exemple.

Cela montre que le développeur principal a sous estimé, selon moi, des dépendances (qu'il a installé sur son poste, mais que les autres n'ont pas).
0  0 
Avatar de fred1599
Expert éminent https://www.developpez.com
Le 14/10/2024 à 11:44
Bonjour,

Du coup je l'ai testé, il manque effectivement un module nommé Pygments (c'est juste un avertissement, tout s'installe bien, on l'installe après et tout rentre dans l'ordre).

0  0 
Avatar de MPython Alaplancha
Membre expérimenté https://www.developpez.com
Le 14/10/2024 à 13:00
Bonjour.
Je vois quelques exemples sur leur site, mais pas de lien vers des sites qui ont été conçus avec. Le site de leur doc https://rio.dev/docs est-il réalisé avec?

il manque effectivement un module nommé Pygments
. ça c'est pour la coloration syntaxique du code...
0  0 
Avatar de Sve@r
Expert éminent sénior https://www.developpez.com
Le 17/10/2024 à 21:55
Bonjour
Citation Envoyé par Jade Emy Voir le message

Et vous ?

Quel est votre avis sur cet outil ?
Ben... faudrait un exemple plus concret voire une doc. Ok j'ai pu lancer le tic-tac-toe (effectivement il manque Pygments mais ça marche sans) mais le code d'exemple, lui, je n'ai pas pu (il tourne mais l'URL donnée ne mène nulle-part et bon, rajouter les imports manquants cela va sans le dire mais cela va encore mieux en le disant). Après vais-je pouvoir faire un clone du site Amazon avec ça ?

[edit]dans le code d'origine, si on remplace le app.run_in_browser() de la dernière ligne par app.run_in_window() et qu'on installe pip install rio-ui[window] (oui le nom contient bien la chaine "[window]" entre crochets) alors l'appli se lance dans PyQt5 et montre un énorme bouton qui compte les clicks.
Reste que sans doc pour comprendre ce qu'on peut faire avec et comment le faire...
0  0 
Avatar de tola4269
Membre du Club https://www.developpez.com
Le 24/10/2024 à 21:57
Personnellement, je n'ai pas réussi à le lancer.

J'ai fait un environnement virtuel avec venv, est ce pour cela qu'il n'a pas aimé ?!?

Je n'obtient qu'un mini-browser avec le fond légèrement bleuté comme sur l'exemple mais les croix ou ronds n'apparaissent pas !

Dommage...
0  0 
Avatar de fred1599
Expert éminent https://www.developpez.com
Le 25/10/2024 à 10:20
Citation Envoyé par tola4269
J'ai fait un environnement virtuel avec venv, est ce pour cela qu'il n'a pas aimé ?!?
Non !

Citation Envoyé par tola4269
Je n'obtient qu'un mini-browser avec le fond légèrement bleuté comme sur l'exemple mais les croix ou ronds n'apparaissent pas !
L'exemple, c'est le jeu du Tic Tac Toe, un template pour apprendre à démarrer avec un serveur HTTP, regarder à nouveau le post d'origine, il est indiqué comment l'utiliser.
0  0 
Avatar de jurassic pork
Expert éminent https://www.developpez.com
Le 25/10/2024 à 11:20
Hello,
ben moi je n'ai pas eu de problème pour l'installer (j'avais peut-être déjà les modules qui pouvaient manqués) et j'ai pu crée un projet d'après le modèle de Crud en quelques secondes :


Ami calmant, J.P
0  0