Passer au contenu du pied de page
AIDE NODE

Prettier - NPM (Comment ça marche pour les développeurs)

Dans le développement logiciel moderne, maintenir un style de code propre et cohérent est crucial pour la lisibilité, la collaboration et la maintenabilité. Des outils comme Prettier, qui incluent des déclarations de type intégrées pour TypeScript, sont devenus indispensables dans cette quête, automatisant la tâche souvent fastidieuse du formatage de code. Dans cet article, nous plongeons dans les complexités de Prettier, explorant ses fonctionnalités, avantages, intégrations et meilleures pratiques. De plus, nous examinerons la bibliothèque de génération de PDF IronPDF pour générer des PDF à partir d'URLs de sites Web.

Introduction à Prettier

Prettier est un formateur de code opiniâtre qui ajuste automatiquement le style et le formatage de votre code selon des règles prédéfinies telles que la longueur maximale des lignes. Il prend en charge divers langages de programmation, y compris JavaScript, TypeScript, HTML, CSS, JSON et plus encore, ce qui le rend polyvalent à travers différentes piles technologiques et types de projets. Initialement développé par James Long, Prettier a gagné une traction significative dans la communauté des développeurs pour ses capacités robustes et sa facilité d'utilisation.

Principales caractéristiques et avantages

  1. Style de code cohérent : Prettier impose un style de codage cohérent dans l'ensemble de votre base de code, éliminant les débats sur les préférences de formatage et garantissant l'uniformité de l'apparence du code, accélérant ainsi le processus de révision du code.
  2. Formatage automatique : En s'intégrant à votre éditeur de code ou à votre processus de compilation, Prettier formate automatiquement votre code pendant que vous le tapez ou avant les commits, ce qui permet aux développeurs de gagner un temps précieux et d'économiser des efforts. Il peut être configuré pour s'exécuter lors de l'enregistrement ou s'appliquer uniquement dans certains répertoires.
  3. Configurabilité : Bien que Prettier soit orienté par défaut, il offre une certaine configurabilité pour ajuster certaines règles de formatage afin de répondre aux exigences spécifiques du projet.
  4. Prise en charge des langages : Il prend en charge nativement un large éventail de langages et de formats de programmation, assurant ainsi la compatibilité avec divers environnements de développement.
  5. Qualité du code : Une meilleure lisibilité du code permet une meilleure compréhension et réduit la probabilité d'erreurs de syntaxe ou de bogues causés par une mise en forme incohérente.

Commencer avec Prettier

Installation

Pour commencer à utiliser Prettier dans vos projets, vous pouvez l'installer via NPM ou yarn :

npm install prettier --save-dev
npm install prettier --save-dev
SHELL

or

yarn add --dev prettier
yarn add --dev prettier
SHELL

Utilisation

  • Interface de ligne de commande (CLI) : Prettier fournit un outil CLI pour formater manuellement les fichiers ou les intégrer dans des scripts pour des tâches de formatage automatisées.
  • Intégration avec les éditeurs : des plugins sont disponibles pour les éditeurs populaires tels que Visual Studio Code, Sublime Text, Atom et autres, permettant une mise en forme en temps réel pendant la saisie.
  • Git Hooks : configurez Prettier pour qu'il s'exécute avant les commits à l'aide de Git Hooks afin de garantir que toutes les modifications de code respectent les règles de formatage définies.

Intégrations et écosystème

Prettier s'intègre parfaitement avec divers outils de développement et flux de travail :

  • Plugins IDE : s'intègrent aux IDE et aux éditeurs de texte pour formater le code à la volée, améliorant ainsi la productivité des développeurs et le respect des normes de codage.
  • Systèmes de construction : Intégrés aux pipelines de construction et aux flux de travail d'intégration continue (CI) pour garantir un formatage de code cohérent dans tous les projets d'équipe.
  • Gestion des versions : Fonctionne harmonieusement avec les systèmes de gestion des versions comme Git, garantissant ainsi le maintien d'un code formaté de manière cohérente tout au long de la collaboration.

Meilleures pratiques pour Prettier

  • Utiliser les valeurs par défaut : Adoptez initialement les paramètres par défaut de Prettier pour favoriser la cohérence de votre code source sans personnalisation inutile.
  • Gestion des versions : Mettez régulièrement à jour Prettier pour bénéficier des nouvelles fonctionnalités, des corrections de bugs et d'une meilleure prise en charge des langues.
  • Configuration : Affinez la configuration de Prettier pour l'aligner sur les conventions spécifiques au projet ou les préférences de l'équipe tout en maintenant la cohérence.
  • Sensibiliser et adopter : Encouragez les membres de l'équipe à adopter Prettier et sensibilisez-les à ses avantages afin de favoriser une approche unifiée du formatage du code.

Introduction à IronPDF

Prettier - NPM (Comment cela fonctionne pour les développeurs) : Figure 1 - IronPDF

IronPDF est une bibliothèque de génération de PDF populaire utilisée pour générer, éditer et convertir des documents PDF. Le package NPM IronPDF est spécifiquement conçu pour les applications Node.js. Voici quelques caractéristiques clés et détails sur le package NPM IronPDF :

Caractéristiques clés

Conversion HTML en PDF

Convertissez le contenu HTML en documents PDF en toute simplicité. Cette fonctionnalité est particulièrement utile pour générer des PDF dynamiques à partir de contenu web.

Conversion d'URL en PDF

Générez des PDF directement à partir d'URL, vous permettant de capturer le contenu des pages web et de les enregistrer sous forme de fichiers PDF de manière programmatique.

Manipulation de PDF

Fusionnez, divisez et manipulez facilement des documents PDF existants. IronPDF propose des fonctionnalités telles que l'ajout de pages, la division de documents, et plus.

Sécurité des PDF

Sécurisez vos documents PDF en les chiffrant avec des mots de passe ou en appliquant des signatures numériques. IronPDF propose des options pour protéger vos documents sensibles contre l'accès non autorisé.

Sortie de Haute Qualité

Produisez des documents PDF de haute qualité avec un rendu précis du texte, des images et du formatage. IronPDF garantit que vos PDF générés maintiennent la fidélité au contenu original.

Compatibilité multiplateforme

IronPDF est compatible avec diverses plateformes, y compris Windows, Linux et macOS, ce qui le rend adapté à une large gamme d'environnements de développement.

Intégration Simple

Intégrez facilement IronPDF dans vos applications Node.js en utilisant son paquet npm. L'API est bien documentée, ce qui facilite l'incorporation des capacités de génération de PDF dans vos projets.

Installation

Pour installer le package NPM IronPDF, utilisez la commande suivante :

yarn add @ironsoftware/ironpdf @ironsoftware/ironpdf-engine-windows-x64
yarn add @ironsoftware/ironpdf @ironsoftware/ironpdf-engine-windows-x64
SHELL

Générer un document PDF avec IronPDF et utiliser le package NPM Prettier

Installation des dépendances : Commencez par créer un nouveau projet Next.js à l'aide de la commande suivante, comme décrit ici .

npx create-next-app@latest prettier-pdf --use-npm --example "https://github.com/vercel/next-learn/tree/main/basics/learn-starter"
npx create-next-app@latest prettier-pdf --use-npm --example "https://github.com/vercel/next-learn/tree/main/basics/learn-starter"
SHELL

Ensuite, naviguez vers votre répertoire de projet :

cd prettier-pdf
cd prettier-pdf
SHELL

Installez les paquets requis :

yarn add @ironsoftware/ironpdf @ironsoftware/ironpdf-engine-windows-x64
yarn add -D prettier
yarn add @ironsoftware/ironpdf @ironsoftware/ironpdf-engine-windows-x64
yarn add -D prettier
SHELL

Créez un fichier de configuration vide pour informer les éditeurs et autres outils que vous utilisez Prettier :

node --eval "require('fs').writeFileSync('.prettierrc','{}\n')"
node --eval "require('fs').writeFileSync('.prettierrc','{}\n')"
SHELL

Créez un fichier .prettierignore pour informer le CLI de Prettier et les éditeurs des fichiers à ne pas formater. Voici un exemple ci-dessous :

# Ignore artifacts:
build
coverage
# Ignore all HTML files:
**/*.html

Créer un PDF

Maintenant, créons un exemple simple de génération de PDF avec IronPDF.

API de génération de PDF : La première étape consiste à créer une API backend pour générer le document PDF. Étant donné qu'IronPDF s'exécute uniquement côté serveur, nous devons créer une API à appeler lorsqu'un utilisateur souhaite générer un PDF. Créez un fichier à pages/api/pdf.js et ajoutez le contenu ci-dessous.

IronPDF nécessite une clé de licence, qui peut être obtenue depuis la page de licence et utilisée dans le code suivant.

// pages/api/pdf.js

import { IronPdfGlobalConfig, PdfDocument } from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Your license key";

export default async function handler(req, res) {
  try {
    const url = req.query.url;
    const pdf = await PdfDocument.fromUrl(url);
    const data = await pdf.saveAsBuffer();

    // Configure response headers to ensure the PDF file is downloaded
    res.setHeader("Content-Type", "application/pdf");
    res.setHeader(
      "Content-Disposition",
      "attachment; filename=awesomeIron.pdf"
    );
    res.send(data);
  } catch (error) {
    console.error("Error generating PDF:", error);
    res.status(500).end();
  }
}
// pages/api/pdf.js

import { IronPdfGlobalConfig, PdfDocument } from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Your license key";

export default async function handler(req, res) {
  try {
    const url = req.query.url;
    const pdf = await PdfDocument.fromUrl(url);
    const data = await pdf.saveAsBuffer();

    // Configure response headers to ensure the PDF file is downloaded
    res.setHeader("Content-Type", "application/pdf");
    res.setHeader(
      "Content-Disposition",
      "attachment; filename=awesomeIron.pdf"
    );
    res.send(data);
  } catch (error) {
    console.error("Error generating PDF:", error);
    res.status(500).end();
  }
}
JAVASCRIPT

Modifiez maintenant le code index.js pour utiliser Prettier et IronPDF comme indiqué ci-dessous.

import Head from "next/head";
import styles from "../styles/Home.module.css";
import React, { useState } from "react";

export default function PrettierDemo() {
  const [text, setText] = useState("");

  // Function to generate PDF using the IronPDF backend API
  const generatePdf = async () => {
    try {
      const response = await fetch("/api/pdf?url=" + text);
      const blob = await response.blob();
      const url = window.URL.createObjectURL(new Blob([blob]));
      const link = document.createElement("a");
      link.href = url;
      link.setAttribute("download", "awesomeIron.pdf");
      document.body.appendChild(link);
      link.click();
      link.parentNode.removeChild(link);
    } catch (error) {
      console.error("Error generating PDF:", error);
    }
  };

  // Handle input changes, updating the state
  const handleChange = (event) => {
    setText(event.target.value);
  };

  return (
    <div className={styles.container}>
      <Head>
        <title>Generate PDF Using IronPDF</title>
        <link rel="icon" href="/favicon.ico" />
      </Head>
      <main>
        <h1>Demo Prettier and Generate PDF Using IronPDF</h1>
        <p>
          <span>Enter Url To Convert to PDF:</span>{" "}
          <input type="text" value={text} onChange={handleChange} />
        </p>
        <button style={{margin: 20, padding: 5}} onClick={generatePdf}>
          Generate PDF
        </button>
      </main>
      <style jsx>{`
        main {
          padding: 5rem 0;
          flex: 1;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
        }
      `}</style>
      <style jsx global>{`
        html,
        body {
          padding: 0;
          margin: 0;
          font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
            Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue,
            sans-serif;
        }
        * {
          box-sizing: border-box;
        }
      `}</style>
    </div>
  );
}
import Head from "next/head";
import styles from "../styles/Home.module.css";
import React, { useState } from "react";

export default function PrettierDemo() {
  const [text, setText] = useState("");

  // Function to generate PDF using the IronPDF backend API
  const generatePdf = async () => {
    try {
      const response = await fetch("/api/pdf?url=" + text);
      const blob = await response.blob();
      const url = window.URL.createObjectURL(new Blob([blob]));
      const link = document.createElement("a");
      link.href = url;
      link.setAttribute("download", "awesomeIron.pdf");
      document.body.appendChild(link);
      link.click();
      link.parentNode.removeChild(link);
    } catch (error) {
      console.error("Error generating PDF:", error);
    }
  };

  // Handle input changes, updating the state
  const handleChange = (event) => {
    setText(event.target.value);
  };

  return (
    <div className={styles.container}>
      <Head>
        <title>Generate PDF Using IronPDF</title>
        <link rel="icon" href="/favicon.ico" />
      </Head>
      <main>
        <h1>Demo Prettier and Generate PDF Using IronPDF</h1>
        <p>
          <span>Enter Url To Convert to PDF:</span>{" "}
          <input type="text" value={text} onChange={handleChange} />
        </p>
        <button style={{margin: 20, padding: 5}} onClick={generatePdf}>
          Generate PDF
        </button>
      </main>
      <style jsx>{`
        main {
          padding: 5rem 0;
          flex: 1;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
        }
      `}</style>
      <style jsx global>{`
        html,
        body {
          padding: 0;
          margin: 0;
          font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
            Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue,
            sans-serif;
        }
        * {
          box-sizing: border-box;
        }
      `}</style>
    </div>
  );
}
JAVASCRIPT

Formatez le code en utilisant yarn prettier :

yarn prettier . --write
yarn prettier . --write
SHELL

Prettier - NPM (Comment cela fonctionne pour les développeurs) : Figure 2 - Exécuter Prettier

Exécutez maintenant l'application en utilisant la commande :

yarn dev
yarn dev
SHELL

Sortie

Prettier - NPM (Comment cela fonctionne pour les développeurs) : Figure 3 - Prettier avec sortie IronPDF

PDF

Prettier - NPM (Comment cela fonctionne pour les développeurs) : Figure 4 - Sortie PDF

Licence IronPDF

Le package npm IronPDF fonctionne avec une clé de licence. IronPDF offre une clé de licence d'évaluation gratuite pour permettre aux utilisateurs de découvrir ses fonctionnalités avant d'acheter.

Placez la clé de licence dans le placeholder suivant :

import { IronPdfGlobalConfig, PdfDocument } from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
import { IronPdfGlobalConfig, PdfDocument } from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
JAVASCRIPT

Conclusion

Prettier est un outil fondamental dans le développement de logiciel moderne, rationalisant le formatage du code avec précision et efficacité. Sa capacité à imposer des styles de codage cohérents à travers différents langages et à s'intégrer parfaitement dans les flux de travail existants le rend indispensable pour les équipes s'efforçant d'avoir des bases de code propres et maintenables. En automatisant les tâches de formatage de code, Prettier permet aux développeurs de se concentrer davantage sur la rédaction de code de qualité et moins sur les minuties stylistiques, améliorant ainsi la productivité et la collaboration dans les projets logiciels. Adoptez Prettier pour améliorer la qualité de votre style de code et simplifiez votre processus de développement dès aujourd'hui.

IronPDF permet aux développeurs Node.js d'améliorer les capacités de gestion des PDF au sein de leurs applications, offrant une fonctionnalité, une fiabilité et des performances inégalées. En tirant parti des fonctionnalités avancées d'IronPDF pour la génération, la conversion et la manipulation de PDF, les développeurs peuvent rationaliser les flux de travail des documents, améliorer les expériences utilisateur et répondre aux diverses exigences commerciales avec confiance. Adoptez IronPDF pour débloquer tout le potentiel de la gestion des PDF dans vos projets Node.js et offrir des solutions de documents de qualité professionnelle sans effort.

Darrius Serrant
Ingénieur logiciel Full Stack (WebOps)

Darrius Serrant est titulaire d'un baccalauréat en informatique de l'université de Miami et travaille comme ingénieur marketing WebOps Full Stack chez Iron Software. Attiré par le codage dès son plus jeune âge, il a vu l'informatique comme à la fois mystérieuse et accessible, en faisant le ...

Lire la suite

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi