Upng.js: Pacote NPM, por favor

Criado em 29 mar. 2017  ·  6Comentários  ·  Fonte: photopea/UPNG.js

Comentários muito úteis

Não, eles não querem. Você precisa instalar este software gerenciador de pacotes especial ( npm ), que é executado e fornecido com sua própria máquina virtual ( node.js ). Este último costuma ser usado como servidor web, plataforma para rodar aplicativos de desktop ou mesmo para controlar dispositivos físicos via Arduino ou Raspberry Pi.

Posso ver que você usa o padrão "exportação global" em seu código, o que não é mais recomendado. Você precisa de pelo menos um módulo CommonJS , melhor - UMD ou idealmente um módulo ES6 transpilado para UMD por algum bundler, como Webpack , Brunch ou Rollup (há muitos mais desses).

Para tornar o código legível e admirado por todos, você deve usar os recursos mais recentes da linguagem EcmaScript e depois transpilar para o ES5, provavelmente com o Babel .

Como o que você constrói é uma biblioteca, você pode querer usar o TypeScript , que é basicamente um superconjunto do EcmaScript, fornecendo assinaturas de tipo e verificações de tipo em tempo de compilação (o TypeScript é compilado para JavaScript, seja ES5 ou ES6, então você pode ou pode não usar o Babel junto com isso). Mesmo as pessoas que não escrevem TypeScript ainda se beneficiariam com isso, pois editores modernos como o VSCode são capazes de mostrar dicas de tipo com base nos tipos TypeScript.

O tópico separado é Desenvolvimento Orientado a Testes. Posso ver que você não escreveu nenhum teste para o seu código, o que não é mais aceitável na comunidade de código aberto. Certifique-se de escolher algum executor de teste como Mocha , Jasmine ou Ava junto com uma das bibliotecas de asserção: Chai , PowerAssert ou talvez a função interna BrowserStack ou SauceLabs por meio do Karma , para garantir que seu código funcione em todos os lugares.

Se você usar o servidor de Integração Contínua para toda aquela transpilação, construção e teste, poderá adicionar emblemas sofisticados ao README em seu repositório GitHub ou

Isso é apenas a ponta do iceberg. Bem-vindo ao desenvolvimento de front-end AD 2017.

PS
Você também pode ignorar tudo isso e continuar fazendo um trabalho incrível como estava fazendo até agora!

Todos 6 comentários

O que é NPM? Você acha que pode fazer isso?

Parece que tenho que baixar e instalar algum software especial, para publicar UPNG.js em "npm". Quando eu atualizar minha biblioteca, terei que atualizá-la no GitHub e no npm, ou o npm pode de alguma forma se conectar ao GitHub e baixar a versão mais recente?

Olá! Desculpe, não sabia que você desconhecia o NodeJS / NPM. NPM é a maior solução de gerenciamento de pacote / dependência do planeta. O código ainda está no github, os desenvolvedores podem fazer o download e usar seu código de maneira mais confortável.
O que significa: instalar via comandos do console ( npm install upng )
e uso via require('upng') por exemplo. Além disso, você deseja evitar que esteja sujando o namespace do objeto global ( window.upng )).

Como este código foi postado em echojs.com , pensei que você conhecesse o NodeJS.

Vou ver se consigo encontrar tempo para criar uma solicitação pull para publicá-la no NPM, mas você deve publicar no NPM, já que criou a biblioteca. A documentação pode ser encontrada aqui: https://docs.npmjs.com/cli/publish

Criar o pacote para disponibilizá-lo para o NPM é bastante trivial.
Veja mais informações aqui: https://docs.npmjs.com/cli/init

Eles têm uma interface web? Eu uso o GitHub por meio da interface da web. Parece loucura baixar e instalar algum software só para enviar 12 kB para algum servidor.

Não, eles não querem. Você precisa instalar este software gerenciador de pacotes especial ( npm ), que é executado e fornecido com sua própria máquina virtual ( node.js ). Este último costuma ser usado como servidor web, plataforma para rodar aplicativos de desktop ou mesmo para controlar dispositivos físicos via Arduino ou Raspberry Pi.

Posso ver que você usa o padrão "exportação global" em seu código, o que não é mais recomendado. Você precisa de pelo menos um módulo CommonJS , melhor - UMD ou idealmente um módulo ES6 transpilado para UMD por algum bundler, como Webpack , Brunch ou Rollup (há muitos mais desses).

Para tornar o código legível e admirado por todos, você deve usar os recursos mais recentes da linguagem EcmaScript e depois transpilar para o ES5, provavelmente com o Babel .

Como o que você constrói é uma biblioteca, você pode querer usar o TypeScript , que é basicamente um superconjunto do EcmaScript, fornecendo assinaturas de tipo e verificações de tipo em tempo de compilação (o TypeScript é compilado para JavaScript, seja ES5 ou ES6, então você pode ou pode não usar o Babel junto com isso). Mesmo as pessoas que não escrevem TypeScript ainda se beneficiariam com isso, pois editores modernos como o VSCode são capazes de mostrar dicas de tipo com base nos tipos TypeScript.

O tópico separado é Desenvolvimento Orientado a Testes. Posso ver que você não escreveu nenhum teste para o seu código, o que não é mais aceitável na comunidade de código aberto. Certifique-se de escolher algum executor de teste como Mocha , Jasmine ou Ava junto com uma das bibliotecas de asserção: Chai , PowerAssert ou talvez a função interna BrowserStack ou SauceLabs por meio do Karma , para garantir que seu código funcione em todos os lugares.

Se você usar o servidor de Integração Contínua para toda aquela transpilação, construção e teste, poderá adicionar emblemas sofisticados ao README em seu repositório GitHub ou

Isso é apenas a ponta do iceberg. Bem-vindo ao desenvolvimento de front-end AD 2017.

PS
Você também pode ignorar tudo isso e continuar fazendo um trabalho incrível como estava fazendo até agora!

Muito obrigado por seus comentários. Parece que baixar, instalar e aprender a usar todos esses programas levaria mais tempo do que gastei desenvolvendo UPNG.js. Não preciso deles para nenhum outro propósito. Portanto, decidi deixar essa tarefa para outra pessoa (sinta-se à vontade para publicar UPNG.js no npm ou em qualquer outro "banco de dados de código" / sites).

PS Eu ainda acho, do que ao imaginar um "ambiente javascript padrão", você não deve imaginar Node.js (que milhares de pessoas têm), mas um navegador da web (que bilhões de pessoas têm).

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

mn4367 picture mn4367  ·  16Comentários

HRK44 picture HRK44  ·  9Comentários

Ser-Gen picture Ser-Gen  ·  5Comentários

zsitro picture zsitro  ·  3Comentários

andrewchch picture andrewchch  ·  3Comentários