Maison > interface Web > js tutoriel > Apprenez Redwood, un framework JAMSTACK sans serveur complet

Apprenez Redwood, un framework JAMSTACK sans serveur complet

Christopher Nolan
Libérer: 2025-02-10 15:49:09
original
1002 Les gens l'ont consulté

Learn Redwood, a Full-stack, Serverless Jamstack Framework

Redwoodjs: un framework Jamstack complet

Redwoodjs est un framework complet puissant et opiniâtre conçu pour des applications complexes, étendant l'architecture JAMSTACK avec des fonctions React, GraphQL et sans serveur. Il offre une expérience de développeur rationalisée et semblable à des rails grâce à un développement axé sur les échafaudages.

Caractéristiques de clé:

  • Simplicité complète: Redwood intègre de manière transparente le frontend (React) et le développement backend, organisant le code en côtés "Web" et "API" distincts pour la clarté et l'efficacité.
  • Développement rapide: Tirez parti des commandes d'échafaudage pré-construites et intuitives (via le fil) pour générer rapidement des projets et des composants. L'intégration de GitHub intégrée simplifie le contrôle de la version.
  • Intégration de la base de données (PRISMA): Connectez-vous sans effort à votre base de données à l'aide de Prisma, un ORM puissant. Profitez des migrations automatisées et des opérations CRUD simplifiées via des échafaudages générés automatiquement.
  • cellules pour la gestion des données: Les "cellules" uniques de Redwood gèrent la récupération des données et le rendu des composants en fonction des états de requête (chargement, succès, erreur), créant des interfaces dynamiques avec facilité.
  • Test et évolutivité: Le support de la plaisanterie intégré encourage le développement axé sur les tests. L'architecture sans serveur et l'intégration GraphQL garantissent l'évolutivité et l'efficacité des projets les plus exigeants.

Imaginez ceci: une application React, déployée via CDN, interrogeant un backend de Lambdas AWS distribué à l'échelle mondiale - tous gérés avec un simple git push. C'est le pouvoir du séquoia.

Le séquoia répond à un besoin de longue date dans la communauté JavaScript: une solution complète simple qui combine l'échafaudage adapté aux développeurs de rails avec la vitesse et la sécurité de Jamstack. Il vise à rompre le dégagement de ses limites statiques, permettant la création d'applications beaucoup plus complexes.

L'analogie de séquoias: Comme les majestueux arbres de séquoias, le cadre est robuste et évolutif, mais son noyau reste étonnamment simple et facile à naviguer.

Ce tutoriel vous guidera à travers la création d'une application CRUD de base, présentant la facilité d'utilisation de Redwood. (exemple de code disponible sur github).

PRENDRE:

Prérequis:

  • node.js (& gt; = 12)
  • yarn (& gt; = 1.5) (installer avec npm install -g yarn)

Configuration du projet:

  1. Créer un nouveau projet: yarn create redwood-app my-redwood-app
  2. Accédez au répertoire du projet: cd my-redwood-app
  3. Démarrez le serveur de développement: yarn redwood dev (cela s'ouvre http://localhost:8910 dans votre navigateur)
  4. Initialiser Git: git init, git add ., git commit -m "Initial commit"

Learn Redwood, a Full-stack, Serverless Jamstack Framework

Structure du projet:

Redwood organise votre projet dans les répertoires web (frontend) et api (backend), simplifiant le processus de développement. Le répertoire api comprend la définition du schéma de base de données (schema.prisma), les données de graines (seed.js), les fonctions, le schéma GraphQL et les services. Le répertoire web contient des composants REACT, des dispositions, des pages et des actifs statiques.

Création d'une base de données:

Cet exemple montre la création d'un tableau Author avec id, name, email, topic et createdAt champs. Modifier api/db/schema.prisma en conséquence, alors:

  1. Créez la migration: yarn redwood db save create authors
  2. appliquer la migration: yarn rw db up

Échafaudage d'une application crud:

générer une application crud de base pour le modèle Author en utilisant:

yarn rw g scaffold author

Learn Redwood, a Full-stack, Serverless Jamstack Framework

Cela génère des composants, des services et du schéma GraphQL nécessaires. Réglez le composant AuthorForm au besoin pour gérer les champs en option.

Comprendre la gestion des données de Redwood:

Redwood utilise GraphQL pour l'interaction des données. Le frontend utilise le client Apollo pour envoyer des demandes aux fonctions sans serveur du backend. Le fichier généré authors.sdl.js définit le schéma GraphQL, et authors.js gère les interactions de la base de données à l'aide de PRISMA. Les "cellules" de Redwood simplifient la récupération des données et la gestion des erreurs.

Test:

Redwood intègre la plaisanterie pour les tests unitaires. Créer et exécuter des tests dans le fichier généré authors.test.js en utilisant node_modules/.bin/jest.

Conclusion:

Redwoodjs offre une approche convaincante du développement de Jamstack complet. Son flux de travail rationalisé, ses fonctionnalités robustes et sa concentration sur l'expérience des développeurs en font un cadre prometteur pour créer des applications complexes et évolutives. Bien qu'il ne soit pas encore prêt pour la production, son potentiel est significatif.

Questions fréquemment posées (reformatées pour la clarté et la concision):

Qu'est-ce qui différencie le bois rouge des autres frameworks Jamstack? Le bois rouge est un framework complet, contrairement à beaucoup d'autres qui se concentrent uniquement sur le frontend. Ses caractéristiques uniques incluent l'intégration de PRISMA, les fonctions sans serveur et le concept de cellules pour la gestion simplifiée des données.

Comment le séquoia gére les données qui obtiennent la récupération des données? Le bois rouge utilise les cellules, qui encapsulent les données qui obtiennent la logique et la gestion des états de chargement, de succès et d'erreur.

Prise en charge sans serveur? Oui, le séquoia est conçu pour les architectures sans serveur, prenant en charge directement les fonctions sans serveur.

La comparaison avec React Static? React Static est un générateur de sites statique; Le séquoia est un cadre complet avec des capacités backend.

meilleures pratiques? Maintenir la séparation des préoccupations (données et interface utilisateur), utiliser efficacement les fonctions sans serveur, tirer parti des cellules pour la gestion des données et utiliser le prisma pour les interactions de base de données.

Gestion des erreurs? Les cellules gèrent les états d'erreur, fournissant un mécanisme clair pour la gestion des erreurs et les commentaires des utilisateurs.

Prise en charge de la base de données au-delà de PRISMA? Bien que PRISMA soit étroitement intégrée, d'autres bases de données sont possibles mais peuvent nécessiter une configuration supplémentaire.

Authentification? Redwood prend en charge divers fournisseurs d'authentification (Netlify Identity, Auth0, Firebase).

Évolutivité pour les grandes applications? Oui, son architecture sans serveur et ses mécanismes efficaces de traitement des données prennent en charge l'évolutivité.

Pour commencer? Reportez-vous à la documentation et aux tutoriels officiels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal