Erneutes Veröffentlichen von gimme_readme in npm mit GitHub Actions
Diese Woche wurden meine Klassenkameraden und ich in meinem Open-Source-Kurs damit beauftragt, jedes unserer eigenen Programme in einer Paketregistrierung zu veröffentlichen.
Wenn Sie jemanden Code-Registrierung, Paket-Registrierung oder Registrierung sagen hören, stelle ich mir diese Wörter gerne als einen Ort vor, an dem Entwickler und Unternehmen ihren Code veröffentlichen, damit andere ihn herunterladen können. Für eine genauere Beschreibung können Sie diesen Artikel von Mozilla lesen:

Grundlagen der Paketverwaltung – Webentwicklung lernen | MDN
Damit sind wir am Ende unserer Tour durch Paketmanager angelangt. Unser nächster Schritt besteht darin, eine Beispiel-Toolchain aufzubauen und damit alles, was wir bisher gelernt haben, in die Praxis umzusetzen.

gimme_readme - npm
gimme_readme ist ein auf KI basierendes Befehlszeilentool, das eine umfassende README.md-Datei für Ihr Projekt generiert. Es analysiert mehrere Quellcodedateien gleichzeitig und liefert präzise Erklärungen zum Zweck, zur Funktionalität und zu den Schlüsselkomponenten jeder Datei. Neueste Version: 1.0.0, letzte Veröffentlichung: vor 16 Stunden. Beginnen Sie mit der Verwendung von gimme_readme in Ihrem Projekt, indem Sie „npm i gimme_readme“ ausführen. Es gibt keine anderen Projekte in der npm-Registrierung, die gimme_readme verwenden.

Wie Sie oben sehen können, gibt es viele Ordner und Dateien, die für einen Benutzer (im Gegensatz zu einem Entwickler) unnötig sind. Glauben Sie beispielsweise, dass meine Benutzer möchten, dass mein Ordner „Tests“ den Code meines Programms testet? Wahrscheinlich nicht. Glauben Sie, dass meine Benutzer die Konfigurationsdateien benötigen, die zum Formatieren und Flusen meines Quellcodes erforderlich sind? Wahrscheinlich nicht. Glauben Sie, dass meine Benutzer aus einem bestimmten Grund meinen Ordner „.github“ verwenden müssten? Wahrscheinlich nicht.
Zu diesem Zweck habe ich daran gearbeitet, eine Lösung zu finden, um die Downloads eines Benutzers zu minimieren. Insbesondere möchte ich, dass sie nur über den Quellcode verfügen, der für die Ausführung meines Programms erforderlich ist.
.npmignore oder nicht .npmignore? Das ist die Frage.
Als ich darüber nachdachte, meinen Code erneut zu veröffentlichen, sprach ich auch mit meinem Freund Uday Rana über die Idee, eine .npmignore-Datei zu verwenden, um Dateien zu „ignorieren“, die ich nicht veröffentlichen wollte.
Buchstäblich direkt nachdem ich das Thema erwähnt hatte googelte Uday .npmignore und fand einen Artikel von Jeff D darüber, warum man niemals eine .npmignore-Datei verwenden sollte. Um es klarzustellen: Ich stimme Jeffs Artikel voll und ganz zu.
Im Wesentlichen besteht die Idee darin, dass wir explizit darüber sein sollten, was wir veröffentlichen wollen (Whitelisting), anstatt anzugeben, welche Dateien wir nicht veröffentlichen möchten (Blacklisting).
Mit npm ist es ganz einfach, die Dateien, die wir veröffentlichen möchten, auf die Whitelist zu setzen. Alles, was wir tun müssen, ist, unsere package.json-Datei zu bearbeiten, indem wir eine „Dateien“-Option hinzufügen, die angibt, welche Dateien wir für unser Programm veröffentlichen möchten.Unten habe ich einen Screenshot der „files“-Option von package.json gemacht, in der es heißt: „Beim Veröffentlichen dieses Programms das Verzeichnis src/ einschließen“. Ich habe diese Änderungen inzwischen übernommen und diese Änderungen sind in meiner Version 1.0.0 meines Codes verfügbar.
HINWEIS: Bestimmte Dateien werden standardmäßig immer auf npm veröffentlicht, unabhängig davon, was Sie in Ihrer Option „Dateien“ angeben oder nicht. Wenn Sie mehr über die Verwendung der Option „Dateien“ erfahren möchten, lesen Sie die offizielle Dokumentation von npm zur Verwendung der Dateioption.
Nachdem ich meinen Code mit meiner aktualisierten package.json auf npm veröffentlicht habe, werden Benutzer, die gimme_readme installieren/neu installieren, jetzt viel weniger Blähungen auf ihren Computern haben! Sehen Sie sich den Unterschied unten an:
Hinzufügen einer GitHub-Aktion zum Veröffentlichen meines Codes in npm, wenn ich eine neue Version hinzufüge
Neben der Verbesserung der Erfahrung meiner Benutzer (indem ich den Aufwand reduziert habe, der durch die Installation von gimme_readme über npm entsteht), habe ich auch eine kontinuierliche Entwicklungspipeline (kurz CD-Pipeline) hinzugefügt, die meinen Veröffentlichungsprozess auf npm automatisiert, wenn ich eine neue Datei erstelle Veröffentlichung auf GitHub. Genaue Details dazu finden Sie im GitHub-Leitfaden zum Veröffentlichen von Node.js-Paketen. Das fühlt sich jetzt gut an, denn mit nur wenigen Klicks kann ich Code veröffentlichen, von dem ich weiß, dass er stabil ist (laut meiner CI-Pipeline), von GitHub.
Den Code für meine CD-Pipeline finden Sie hier.
Testen mit Uday
Wie ich bereits erwähnt habe, habe ich bezüglich der Tests mit meinem Freund Uday Rana zusammengearbeitet. Zum Zeitpunkt des Schreibens war er in der Lage, mein Tool zu installieren und wie folgt zu verwenden:
Für mich sieht alles gut aus und die meisten Optionen, die ich für mein Werkzeug habe, verhalten sich mehr oder weniger so, wie er es erwartet. Aber ich muss diesen Vorgang noch einmal wiederholen, da ich noch einige weitere Optimierungen hinzufügen möchte!
Die Reise endet nie ... aber das macht den Spaß aus!
Ich habe kürzlich auch von Möglichkeiten gehört, meinen Code weiter zu optimieren. Ich interessiere mich insbesondere dafür, zu lernen, wie ich meine CI- und CD-Pipelines verbessern kann, indem ich mehr über zusammengesetzte Aktionen und wiederverwendbare Workflows in Bezug auf GitHub-Aktionen erfahre. Ich hoffe, dass diese Techniken mir dabei helfen, die Menge an Code, die ich schreibe, zu reduzieren und eine Art Leistungssteigerung zu erzielen! Ich weiß noch nicht viel über diese Themen, aber Sie können wetten, dass ich wahrscheinlich bald darüber bloggen werde.
Und damit meine Freunde, schließe ich ab, worüber ich in diesem Blog sprechen wollte.
Bis zum nächsten Mal!
Das obige ist der detaillierte Inhalt vonErneutes Veröffentlichen von gimme_readme in npm mit GitHub Actions. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Zu den neuesten Trends im JavaScript gehören der Aufstieg von Typenkripten, die Popularität moderner Frameworks und Bibliotheken und die Anwendung der WebAssembly. Zukunftsaussichten umfassen leistungsfähigere Typsysteme, die Entwicklung des serverseitigen JavaScript, die Erweiterung der künstlichen Intelligenz und des maschinellen Lernens sowie das Potenzial von IoT und Edge Computing.

Unterschiedliche JavaScript -Motoren haben unterschiedliche Auswirkungen beim Analysieren und Ausführen von JavaScript -Code, da sich die Implementierungsprinzipien und Optimierungsstrategien jeder Engine unterscheiden. 1. Lexikalanalyse: Quellcode in die lexikalische Einheit umwandeln. 2. Grammatikanalyse: Erzeugen Sie einen abstrakten Syntaxbaum. 3. Optimierung und Kompilierung: Generieren Sie den Maschinencode über den JIT -Compiler. 4. Führen Sie aus: Führen Sie den Maschinencode aus. V8 Engine optimiert durch sofortige Kompilierung und versteckte Klasse.

JavaScript ist die Kernsprache der modernen Webentwicklung und wird für seine Vielfalt und Flexibilität häufig verwendet. 1) Front-End-Entwicklung: Erstellen Sie dynamische Webseiten und einseitige Anwendungen durch DOM-Operationen und moderne Rahmenbedingungen (wie React, Vue.js, Angular). 2) Serverseitige Entwicklung: Node.js verwendet ein nicht blockierendes E/A-Modell, um hohe Parallelitäts- und Echtzeitanwendungen zu verarbeiten. 3) Entwicklung von Mobil- und Desktop-Anwendungen: Die plattformübergreifende Entwicklung wird durch reaktnative und elektronen zur Verbesserung der Entwicklungseffizienz realisiert.

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

Dieser Artikel zeigt die Frontend -Integration mit einem Backend, das durch die Genehmigung gesichert ist und eine funktionale edtech SaaS -Anwendung unter Verwendung von Next.js. erstellt. Die Frontend erfasst Benutzerberechtigungen zur Steuerung der UI-Sichtbarkeit und stellt sicher, dass API-Anfragen die Rollenbasis einhalten

Die Verschiebung von C/C zu JavaScript erfordert die Anpassung an dynamische Typisierung, Müllsammlung und asynchrone Programmierung. 1) C/C ist eine statisch typisierte Sprache, die eine manuelle Speicherverwaltung erfordert, während JavaScript dynamisch eingegeben und die Müllsammlung automatisch verarbeitet wird. 2) C/C muss in den Maschinencode kompiliert werden, während JavaScript eine interpretierte Sprache ist. 3) JavaScript führt Konzepte wie Verschlüsse, Prototypketten und Versprechen ein, die die Flexibilität und asynchrone Programmierfunktionen verbessern.

JavaScript erfordert keine Installation, da es bereits in moderne Browser integriert ist. Sie benötigen nur einen Texteditor und einen Browser, um loszulegen. 1) Führen Sie sie in der Browser -Umgebung durch, indem Sie die HTML -Datei durch Tags einbetten. 2) Führen Sie die JavaScript -Datei nach dem Herunterladen und Installieren von node.js nach dem Herunterladen und Installieren der Befehlszeile aus.
