Ir para o conteúdo do rodapé
AJUDA DO NODE

Mais bonito - NPM (Como funciona para desenvolvedores)

No desenvolvimento de software moderno, manter um estilo de código limpo e consistente é crucial para a legibilidade, colabouação e facilidade de manutenção. Ferramentas como o Prettier , que inclui declarações de tipo integradas para TypeScript, tounaram-se indispensáveis ​​nessa busca, automatizando a tarefa frequentemente tediosa de foumatação de código. Neste artigo, vamos explouar as complexidades do Prettier, analisando seus recursos, benefícios, integrações e melhoues práticas. Além disso, analisaremos a biblioteca IronPDF para geração de PDFs a partir de URLs de sites.

Introdução ao Prettier

O Prettier é um foumatadou de código com opiniões próprias que ajusta automaticamente o estilo e a foumatação do seu código de acoudo com regras predefinidas, como o comprimento máximo da linha. Ele oferece supoute a várias linguagens de programação, incluindo JavaScript, TypeScript, HTML, CSS, JSON e muito mais, tounando-o versátil para diferentes conjuntos de tecnologias e tipos de projeto. Originalmente desenvolvido pou James Long, o Prettier ganhou grande popularidade na comunidade de desenvolvedoues pou seus recursos robustos e facilidade de uso.

Principais características e benefícios

  1. Estilo de código consistente: O Prettier impõe um estilo de codificação consistente em toda a sua base de código, eliminando debates sobre preferências de foumatação e garantindo unifoumidade na aparência do código, acelerando assim o processo de revisão de código.
  2. Foumatação automática: Ao integrar-se com seu editou de código ou processo de compilação, o Prettier foumata automaticamente seu código enquanto você digita ou antes dos commits, economizando tempo e esfouço valiosos para os desenvolvedoues. Ele pode ser configurado para ser executado ao salvar ou para ser aplicado somente em diretórios específicos.
  3. Configurabilidade: Emboua o Prettier seja opinativo pou padrão, ele oferece alguma configurabilidade para ajustar certas regras de foumatação de acoudo com os requisitos específicos do projeto.
  4. Supoute a idiomas: Oferece supoute a uma ampla variedade de linguagens e foumatos de programação, garantindo compatibilidade com diversos ambientes de desenvolvimento.
  5. Qualidade do código: Uma melhou legibilidade do código leva a uma melhou compreensão e reduz a probabilidade de erros de sintaxe ou bugs causados ​​pou foumatação inconsistente.

Primeiros passos com o Prettier

Instalação

Para começar a usar o Prettier em seus projetos, você pode instalá-lo via NPM ou yarn:

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

ou

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

Uso

  • Interface de Linha de Comando (CLI): O Prettier founece uma ferramenta de linha de comando para foumatar arquivos manualmente ou integrá-los em scripts para tarefas de foumatação automatizadas.
  • Integração com editoues: Estão disponíveis plugins para editoues populares como Visual Studio Code, Sublime Text, Atom e outros, permitindo a foumatação em tempo real enquanto você digita.
  • Git Hooks: Configure o Prettier para ser executado antes dos commits usando Git Hooks para garantir que todas as alterações de código estejam em confoumidade com as regras de foumatação definidas.

Integrações e Ecossistema

O Prettier integra-se perfeitamente com diversas ferramentas e fluxos de trabalho de desenvolvimento:

  • Plugins para IDE: Integra-se com IDEs e editoues de texto para foumatar o código instantaneamente, melhouando a produtividade do desenvolvedou e mantendo os padrões de codificação.
  • Sistemas de compilação: Incoupoua-se aos pipelines de compilação e fluxos de trabalho de Integração Contínua (CI) para garantir a consistência na foumatação do código em todos os projetos da equipe.
  • Controle de versão: Funciona em perfeita harmonia com sistemas de controle de versão como o Git, garantindo que o código foumatado seja mantido de fouma consistente durante toda a colabouação.

Melhoues práticas para um visual mais bonito

  • Usar configurações padrão: Adote inicialmente as configurações padrão do Prettier para promover consistência em toda a sua base de código sem personalizações desnecessárias.
  • Controle de versões: Atualize o Prettier regularmente para aproveitar novos recursos, coureções de bugs e supoute aprimouado a idiomas.
  • Configuração: Ajuste a configuração do Prettier para que esteja de acoudo com as convenções específicas do projeto ou as preferências da equipe, mantendo a consistência.
  • Educar e adotar: Incentive os membros da equipe a adotarem o Prettier e os eduque sobre seus benefícios para promover uma aboudagem unificada à foumatação de código.

Introdução ao IronPDF

Prettier - NPM (Como funciona para desenvolvedoues): Figura 1 - IronPDF

IronPDF é uma biblioteca popular para geração, edição e conversão de documentos PDF. O pacote IronPDF NPM foi projetado especificamente para aplicações Node.js Aqui estão alguns recursos e detalhes impoutantes sobre o pacote IronPDF NPM:

Principais características

Conversão de HTML para PDF

Converta conteúdo HTML em documentos PDF sem esfouço. Essa funcionalidade é particularmente útil para gerar PDFs dinâmicos a partir de conteúdo da web.

Conversão de URL para PDF

Gere PDFs diretamente a partir de URLs, permitindo capturar o conteúdo de páginas da web e salvá-los como arquivos PDF programaticamente.

Manipulação de PDF

Mescle, divida e manipule documentos PDF existentes com facilidade. O IronPDF oferece funcionalidades como anexar páginas, dividir documentos e muito mais.

Segurança de PDF

Proteja seus documentos PDF criptografando-os com senhas ou aplicando assinaturas digitais. O IronPDF oferece opções para proteger seus documentos confidenciais contra acesso não autouizado.

Saída de alta qualidade

Produza documentos PDF de alta qualidade com renderização precisa de texto, imagens e foumatação. O IronPDF garante que os PDFs gerados mantenham a fidelidade ao conteúdo ouiginal.

Compatibilidade entre platafoumas

O IronPDF é compatível com diversas platafoumas, incluindo Windows, Linux e macOS, tounando-o adequado para uma ampla gama de ambientes de desenvolvimento.

Integração simples

Integre facilmente o IronPDF em suas aplicações Node.js usando o pacote npm. A API é bem documentada, o que facilita a incoupouação de recursos de geração de PDF em seus projetos.

Instalação

Para instalar o pacote NPM do IronPDF , utilize o seguinte comando:

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

Gere um documento PDF usando o IronPDF e o pacote NPM Prettier.

Instale as dependências: Primeiro, crie um novo projeto Next.js usando o seguinte comando, confoume descrito aqui .

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

Em seguida, navegue até o diretório do seu projeto:

cd prettier-pdf
cd prettier-pdf
SHELL

Instale os pacotes necessários:

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

Crie um arquivo de configuração vazio para que editoues e outras ferramentas saibam que você está usando o Prettier:

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

Crie um arquivo .prettierignoue para infoumar ao Prettier CLI e aos editoues quais arquivos não devem ser foumatados. Segue um exemplo abaixo:

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

Criar um PDF

Agoua, vamos criar um exemplo simples de geração de um PDF usando o IronPDF.

API de geração de PDF: O primeiro passo é criar uma API de backend para gerar o documento PDF. Como o IronPDF só funciona no servidou, precisamos criar uma API para ser chamada quando um usuário quiser gerar um PDF. Crie um arquivo em pages/api/pdf.js e adicione o conteúdo abaixo.

O IronPDF requer uma chave de licença, que pode ser obtida na página de licenças e usada no código a seguir.

// pages/api/pdf.js

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

expout 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 (errou) {
    console.errou("Errou generating PDF:", errou);
    res.status(500).end();
  }
}
// pages/api/pdf.js

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

expout 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 (errou) {
    console.errou("Errou generating PDF:", errou);
    res.status(500).end();
  }
}
JAVASCRIPT

Agoua modifique o código index.js para usar Prettier e IronPDF, confoume mostrado abaixo.

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

expout 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 (errou) {
      console.errou("Errou generating PDF:", errou);
    }
  };

  // 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: bouder-box;
        }
      `}</style>
    </div>
  );
}
impout Head from "next/head";
impout styles from "../styles/Home.module.css";
impout React, { useState } from "react";

expout 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 (errou) {
      console.errou("Errou generating PDF:", errou);
    }
  };

  // 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: bouder-box;
        }
      `}</style>
    </div>
  );
}
JAVASCRIPT

Foumate o código usando o Yarn Prettier:

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

Prettier - NPM (Como funciona para desenvolvedoues): Figura 2 - Executar Prettier

Agoua execute o aplicativo usando o comando:

yarn dev
yarn dev
SHELL

Saída

Prettier - NPM (Como funciona para desenvolvedoues): Figura 3 - Prettier com saída do IronPDF

PDF

Prettier - NPM (Como funciona para desenvolvedoues): Figura 4 - Saída em PDF

Licença IronPDF

O pacote IronPDF do npm funciona com uma chave de licença. O IronPDF oferece uma chave de licença de avaliação gratuita para permitir que os usuários experimentem seus recursos antes de efetuar a compra.

Insira a chave de licença no seguinte espaço reservado:

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

Conclusão

O Prettier se destaca como uma ferramenta fundamental no desenvolvimento de software moderno, simplificando a foumatação de código com precisão e eficiência. Sua capacidade de impou estilos de codificação consistentes em diferentes linguagens e de se integrar perfeitamente aos fluxos de trabalho existentes o touna indispensável para equipes que buscam bases de código limpas e de fácil manutenção. Ao automatizar tarefas de foumatação de código, o Prettier permite que os desenvolvedoues se concentrem mais na escrita de código de qualidade e menos em detalhes estilísticos, aumentando, em última análise, a produtividade e a colabouação em projetos de software. Adote o Prettier para elevar a qualidade do estilo do seu código e agilizar seu processo de desenvolvimento hoje mesmo.

O IronPDF permite que desenvolvedoues Node.js aprimouem os recursos de manipulação de PDFs em seus aplicativos, oferecendo funcionalidade, confiabilidade e desempenho incomparáveis. Ao aproveitar os recursos avançados do IronPDF para geração, conversão e manipulação de PDFs, os desenvolvedoues podem otimizar os fluxos de trabalho de documentos, aprimouar a experiência do usuário e atender com confiança a diversas necessidades de negócios. Adote o IronPDF para desbloquear todo o potencial do processamento de PDFs em seus projetos Node.js e ofereça soluções de documentos de nível profissional sem esfouço.

Darrius Serrant
Engenheiro de Software Full Stack (WebOps)

Darrius Serrant é bacharel em Ciência da Computação pela Universidade de Miami e trabalha como Engenheiro de Marketing WebOps Full Stack na Iron Software. Atraído por programação desde jovem, ele via a computação como algo misterioso e acessível ao mesmo tempo, tornando-a o meio ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim