Heim > Web-Frontend > js-Tutorial > Hauptteil

Beitrag zu expressjs

Barbara Streisand
Freigeben: 2024-11-23 07:07:09
Original
259 Leute haben es durchsucht

Hallo! Mein Name ist Peter, und falls Sie mich nicht kennen: Ich bin Informatikstudent und belege derzeit den Kurs „Topics in Open Source 2024“ von Professor David Humphrey.

Seit September 2024 arbeite ich daran, meine Präsenz in der Open-Source-Community aufzubauen. Wenn Sie meine Reise verfolgen möchten, finden Sie mich auf GitHub:

Contributing to expressjs

peterdanwan (Peter Wan) · GitHub

Full-Stack-Entwickler | Spiele- und KI-Enthusiast - Peterdanwan

Contributing to expressjs

Den Umfang des Projekts verstehen

Erster Schritt: verstehen, womit ich arbeite. expressjs.com ist die offizielle Dokumentationsseite für Express, eines der beliebtesten Web-Frameworks für Node.js. Obwohl dies auf der wunderschön gestalteten Website schnell zu erkennen war, hatte die Reise gerade erst begonnen.

Contributing to expressjs

Express – Node.js Webanwendungs-Framework

Express ist ein schnelles, unabhängiges und minimalistisches Web-Framework für Node.js, das eine Reihe robuster Funktionen für Web- und mobile Anwendungen bietet.

Beitrag zu expressjs expressjs.com

Das vorliegende Problem verstehen

Nachdem ich mich mit dem Projekt in seiner jetzigen Form vertraut gemacht hatte, suchte ich nach einem Problem, das ich angehen konnte. Ich habe dieses hier gefunden:

Beitrag zu expressjs Defekter Link und fehlende Seite #1684

Beitrag zu expressjs
chrisdel101 veröffentlicht am

Die folgenden Links sind defekt _includes/header/header-id.html

_includes/header/header-th.html

Änderung vorschlagen an: Änderungsprotokoll veröffentlichen

Fehlende Seite verursacht Konsolenfehler in der UZ-Sprache: /css/langs/uz.css

Schlagen Sie vor, diese Seite hinzuzufügen.

Auf GitHub ansehen

Ich habe mich für dieses Problem entschieden, weil es sich um HTML und CSS handelte – Technologien, mit denen ich vertraut und vertraut bin. Was jedoch einfach aussah, lehrte mich tatsächlich eine wichtige Lektion über die Open-Source-Entwicklung:

Selbst vertraut aussehende Aufgaben können unbekanntes Terrain beinhalten.

Das Repository verwendete Technologien, die ich noch nie zuvor berührt hatte, und hier begann das eigentliche Lernen. Es hat ungefähr eine Stunde gedauert, bis ich mich entschieden habe, ob ich mich an diesem Problem versuchen soll – im Nachhinein vielleicht zu lange. Ich zögerte, weil das Projekt Ruby verwendete, was für mich völlig neu war.

Spoiler-Alarm: Ruby einzurichten war... ein Abenteuer.

Verstehen, wie das Projekt lokal eingerichtet wird

Das Einrichten Ihrer lokalen Entwicklungsumgebung ist oft einer der lehrreichsten Teile eines Open-Source-Beitrags.

Ich habe ein wenig über Ruby und Jekyll gelernt, indem ich einfach versucht habe, expressjs.com lokal auszuführen.

So verlief meine Reise:

  1. Anfängliche Verwirrung: Ich habe damit begonnen, Ruby direkt unter Windows zu installieren. Obwohl es funktionierte, war es nicht ideal, da ich Probleme damit hatte, dass die von mir installierte Version sich von der im Projekt verwendeten unterschied. Die Versionsverwaltung unter Windows hat keinen Spaß gemacht. Daher habe ich meine Installation von Ruby unter Windows und seinen anderen Abhängigkeiten deinstalliert und nach einer alternativen Lösung gesucht.

  2. Die WSL-Entdeckung: Meine Recherche führte mich zu dem Schluss, dass ich Ruby auf dem Windows-Subsystem für Linux (WSL) ausführen sollte, da es eine viel bessere Entwicklungsumgebung und Zugriff darauf bietet leistungsstarker Ruby Version Manager (RVM), der es mir ermöglichen würde, an Projekten zu arbeiten, die verschiedene Versionen von Ruby verwenden. Für mich war die Installation von RVM ein ganz ähnliches Gefühl, da ich nvm-windows verwende, um zwischen verschiedenen Knotenversionen wechseln zu können.

  3. Lernkurve für Versionsverwaltung: Wieder einmal habe ich etwas über RVM und seine Ähnlichkeit mit dem NVM von Node.js gelernt. Dadurch habe ich gelernt, wie wichtig das Versionsmanagement in Entwicklungsumgebungen ist.

Im Folgenden sind die tatsächlichen Befehle aufgeführt, mit denen ich meine Entwicklungsumgebung vorbereitet habe:

## 1. Installing RVM (Ruby Version Manager)
# First, import GPG keys needed to verify RVM installation
gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

# Download and install RVM
\curl -sSL https://get.rvm.io | bash -s stable

# Verify RVM is installed and get its path
which rvm

# Load RVM into your current shell session
source /home/peter/.rvm/scripts/rvm

## 2. Installing Ruby
# Install Ruby version 3.3.5 (latest stable as of early 2024)
rvm install 3.3.5

# Set 3.3.5 as your default Ruby version
rvm use 3.3.5

# Verify RVM and Ruby installations
rvm -v
ruby -v

## 3. Setting up Jekyll
# Install Jekyll and Bundler gems
gem install bundler jekyll

# Install project dependencies from Gemfile (must be within the target directory with the Gemfile)
bundle install

# Start the Jekyll server with live reload and external access
# --host 0.0.0.0 allows access from other devices on your network
# --livereload automatically refreshes your browser when files change
bundle exec jekyll serve --host 0.0.0.0 --livereload
Nach dem Login kopieren

Das Problem angehen

Nachdem meine Entwicklungsumgebung konfiguriert war, konnte ich mit der Lösung des vorliegenden Problems beginnen, nämlich einfach die
zu aktualisieren Ankertags mit defekten Links zu einer englischen Version des Links (da die englische Version des Links nicht defekt ist).

Das war der einfachste Teil dieses ganzen Beitrags.

Ich habe auch darauf geachtet, mir einige Protokolle anzusehen, um zu sehen, ob es Fehler gibt, die behoben werden müssen. Ich habe vorgeschlagen, eine weitere Datei css/id.css hinzuzufügen, die dem gleichen folgt
Codierungsformat von Dateien, die bereits hinzugefügt wurden, da ich eine Ahnung hatte, wie einige der Fehlerprotokolle behoben werden könnten.

Chris Del, einer der Betreuer von expressjs.com, gab sehr umgehend Feedback und erklärte, dass dies der richtige Weg sei (danke Chris!).

Daher habe ich diese Änderung auch zu meiner Pull-Anfrage hinzugefügt.

Warten darauf, Veränderungen zusammenzuführen und lernen, sich an Diskussionen zu beteiligen

Vor diesem Hintergrund warten die von mir vorgenommenen Änderungen nun darauf, in den Hauptzweig von expressjs.com integriert zu werden.
Es wurde eine Folgeausgabe erstellt, um die Standards der Website expressjs.com zu besprechen. Das heißt:

Sollte ein Benutzer zu einer funktionierenden englischen Seite weitergeleitet werden und nicht zu einem defekten Link in der richtigen Sprache?

Das kann nicht ich entscheiden, aber ich wollte Teil der Diskussion sein. Sie können die Diskussion hier verfolgen.

Lernen, als Open-Source-Entwickler zu wachsen

Was als einfache HTML/CSS-Korrektur begann, entwickelte sich zu einer Reise, die mir wertvolle Lektionen über die Open-Source-Entwicklung beibrachte:

  1. Die Komfortzone verlassen: Während ich mich für ein Thema entschieden habe, bei dem es um bekannte Technologien (HTML/CSS) ging, lernte ich am Ende einen völlig neuen Tech-Stack (Ruby/Jekyll) kennen. Dadurch habe ich gelernt, dass Wachstum dann geschieht, wenn wir bereit sind, das Unbekannte in Angriff zu nehmen.

  2. Technisches Wachstum: Das Einrichten von Entwicklungsumgebungen, das Verwalten von Versionen und die Arbeit mit neuen Tools sind entscheidende Fähigkeiten. Jede Herausforderung macht es einfacher, die nächste anzugehen.

  3. Community-Engagement: Durch Diskussionen wie die Sprachumleitungsdiskussion habe ich gelernt, dass es bei Open Source nicht nur um Code geht – es geht um die Teilnahme an sinnvollen Diskussionen, die Projektentscheidungen beeinflussen.

Mit Blick auf die Zukunft habe ich vor, mich zu verbessern durch:

  • Annehmen immer anspruchsvoller werdender Probleme
  • Lernen, mit verschiedenen Tech-Stacks und Entwicklungsumgebungen zu arbeiten
  • Aktivere Beteiligung an Projektdiskussionen und Entscheidungsfindung
  • Beitrag zur Dokumentation und Hilfe für andere Neuankömmlinge
  • Beziehungen innerhalb von Open-Source-Communitys aufbauen

Am wichtigsten ist, dass ich gelernt habe, dass es bei einem effektiven Open-Source-Entwickler nicht darum geht, alles zu wissen, sondern dass man bereit ist, alles zu lernen. Jeder Beitrag, egal wie klein, ist eine Chance zu wachsen und einen positiven Einfluss auf die Projekte zu haben, die uns am Herzen liegen.

Wenn Sie erwägen, sich bei Open Source zu engagieren, denken Sie daran: Fangen Sie klein an, seien Sie neugierig und haben Sie keine Angst davor, nach und nach dazuzulernen. Die Community ist hier, um Ihnen beim Wachstum zu helfen.

Das obige ist der detaillierte Inhalt vonBeitrag zu expressjs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage