Sachverhalt:
A.
Mit Entscheid vom 15. Mai 2017 wies das Arbeitsgericht Basel-Stadt eine Klage von A._ (Beschwerdeführer) gegen seine ehemalige Arbeitgeberin, die B._ AG (Beschwerdegegnerin), über Fr. 30'000.-- zuzüglich Zins ab.
Gegen diesen Entscheid erhob A._ am 9. Oktober 2017 Berufung an das Appellationsgericht Basel-Stadt, wobei er an seinem erstinstanzlichen Klagebegehren festhielt. Die B._ AG erstattete am 15. November 2017 ihre Berufungsantwort.
A._ ersuchte darum, ihm ein Replikrecht einzuräumen und entsprechend die Parteien zur mündlichen Verhandlung vorzuladen oder eine Frist zur Einreichung der schriftlichen Replik anzusetzen. Der Instruktionsrichter setzte ihm mit Verfügung vom 30. November 2017 Frist "bis 18. Dezember 2017" zur fakultativen Stellungnahme zur Berufungsantwort.
Mit Entscheid vom 29. Dezember 2017 wies das Appellationsgericht die Berufung ab. Der Entscheid wurde den Parteien am 8. Januar 2018 zugestellt. Am gleichen Tag ging beim Appellationsgericht eine fakultative Stellungnahme des Beschwerdeführers vom 3. Januar 2018 ein.
Der Präsident des Appellationsgerichts teilte den Parteien daraufhin mit Schreiben vom 9. Januar 2018 mit, der Verfahrensleiter habe leider übersehen, dass die Frist wegen den Gerichtsferien erst am 3. Januar 2018 geendet habe. Der Entscheid könne aber nicht mehr aufgehoben, abgeändert oder ergänzt werden, obwohl die fakultative Stellungnahme von A._ vom 3. Januar 2018 rechtzeitig eingereicht worden sei.
B.
A._ verlangt mit Beschwerde in Zivilsachen, der Entscheid des Appellationsgerichts sei aufzuheben, und die Sache sei zur Neubeurteilung der Rechtsbegehren an die Vorinstanz zurückzuweisen, unter Kostenfolge zulasten der B._ AG.
Die B._ AG hat auf Vernehmlassung verzichtet und darauf hingewiesen, dass es nicht "sachgerecht" wäre, wenn sie "mit irgendwelchen Kosten belastet würde".
Das Appellationsgericht äusserte sich in einer Eingabe vom 28. Februar 2018 kurz zur Angelegenheit, unter Verzicht auf einen Antrag und eine weitergehende Vernehmlassung. A._ nahm hierzu mit Eingabe vom 20. März 2018 Stellung.
Erwägungen:
1.
Der Entscheid des Appellationsgerichts ist ein Endentscheid (Art. 90 BGG) einer Vorinstanz im Sinne von Art. 75 BGG. Weiter übersteigt der Streitwert die nach Art. 74 Abs. 1 lit. a BGG in arbeitsrechtlichen Fällen geltende Grenze von Fr. 15'000.--. Da auch die übrigen Sachurteilsvoraussetzungen erfüllt sind, ist auf die Beschwerde einzutreten.
2.
2.1. Der Beschwerdeführer rügt eine Verletzung seines Anspruchs auf rechtliches Gehör gemäss Art. 29 Abs. 2 BV und Art. 6 Ziff. 1 EMRK, da die Vorinstanz den Entscheid getroffen habe, bevor die fristgerecht eingereichte Stellungnahme zur Berufungsantwort bei ihr eingegangen sei. Die Vorinstanz bestreitet ausdrücklich nicht, dass sie den Gehörsanspruch des Beschwerdeführers verletzt hat.
2.2. Nach Art. 29 Abs. 1 und 2 BV sowie nach Art. 6 Ziff. 1 EMRK haben die Parteien eines Gerichtsverfahrens Anspruch auf rechtliches Gehör und auf ein faires Gerichtsverfahren, unter Beachtung des Grundsatzes der Waffengleichheit. Diese Garantien umfassen das Recht, von allen beim Gericht eingereichten Stellungnahmen Kenntnis zu erhalten und sich dazu äussern zu können, unabhängig davon, ob die Eingaben neue oder wesentliche Vorbringen enthalten. Es ist Sache der Parteien zu beurteilen, ob eine Entgegnung erforderlich ist oder nicht. Das Gericht hat ein effektives Replikrecht der Parteien zu gewährleisten (BGE 139 I 189 E. 3.2; 138 I 484 E. 2.1 und 2.4; vgl. für das Zivilverfahren auch BGE 142 III 48 E. 4.1.1; je mit Hinweisen).
2.3. Die Vorinstanz argumentiert, in der Beschwerde werde nicht dargelegt, inwiefern die fakultative Stellungnahme vom 3. Januar 2018 für den Ausgang des Verfahrens relevant gewesen sei. Soweit sie diesen Umstand für entscheidend hält, verkennt sie, dass der Anspruch auf rechtliches Gehör formeller Natur ist (BGE 137 I 195 E. 2.2 S. 197 mit Hinweis).
2.4. In ihrem Schreiben vom 9. Januar 2018 hat die Vorinstanz eingeräumt, dass die Eingabe des Beschwerdeführers vom 3. Januar 2018 noch rechtzeitig erfolgt ist. Davon ist auszugehen.
Da das Appellationsgericht seinen Entscheid in der Sache bereits am 29. Dezember 2017 gefällt hatte, konnte es die Eingabe des Beschwerdeführers vom 3. Januar 2018 nicht mehr berücksichtigen. Unter diesen Umständen hatte der Beschwerdeführer keine Gelegenheit, sich zur Berufungsantwort vom 15. November 2017 zu äussern. Somit ist sein Replikrecht verletzt.
Eine Heilung dieses Verfahrensmangels im bundesgerichtlichen Verfahren fällt nur schon deshalb ausser Betracht, weil das Bundesgericht den Sachverhalt nicht frei, sondern bloss unter den Voraussetzungen von Art. 97 Abs. 1 und Art. 105 Abs. 2 BGG überprüfen kann (siehe BGE 142 II 218 E. 2.8.1; 142 III 48 E. 4.3; 137 I 195 E. 2.3.2; je mit weiteren Hinweisen).
3.
Die Beschwerde ist gutzuheissen. Der angefochtene Entscheid ist aufzuheben, und die Sache ist zu neuer Entscheidung an die Vorinstanz zurückzuweisen.
Der Beschwerdegegnerin sind keine Gerichtskosten aufzuerlegen, da sie für den Verfahrensfehler der Vorinstanz nicht einstehen muss und sie überdies im Beschwerdeverfahren keinen Antrag gestellt hat. Der Kanton Basel-Stadt darf nicht mit Gerichtskosten belastet werden (Art. 66 Abs. 4 BGG). Dagegen hat er den Beschwerdeführer in Anwendung von Art. 66 Abs. 3 BGG zu entschädigen (vgl. Urteil 4A_340/2015 vom 21. Dezember 2015 E. 4, nicht publ. in: BGE 142 III 116, mit weiteren Hinweisen).
Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird gutgeheissen. Der Entscheid des Appellationsgerichts Basel-Stadt, Dreiergericht, vom 29. Dezember 2017 (ZB.2017.36) wird aufgehoben. Die Sache wird zu neuer Entscheidung an das Appellationsgericht Basel-Stadt zurückgewiesen.
2.
Es werden keine Gerichtskosten erhoben.
3.
Der Kanton Basel-Stadt hat den Beschwerdeführer für das bundesgerichtliche Verfahren mit Fr. 500.-- zu entschädigen.
4.
Dieses Urteil wird den Parteien und dem Appellationsgericht Basel-Stadt schriftlich mitgeteilt.
Lausanne, 6. August 2018
Im Namen der I. zivilrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Die Präsidentin: Kiss
Der Gerichtsschreiber: Kölz