– (y) Node
- (y) MongoDB und mongoose
- (y) TypeScript mit TSLint
- (y) validator
- (y) nodemailer
- (y) bcrypt
- (y) JWT
- (y) winston
- (y) npm als Package Manager und Task Runner
- (y) GraphQL als Alternative zu REST – TODO: rest. Express als Middleware zzgl. body-parser
- TODO: Mocha als Testrunner, supertest für Integrationstests, Chai als Assertion-Bibliothek
- Projektplan mit Project Professional
- Zeiterfassung mit z.B. Excel
Node module installieren mit npm i
npm run dev
Manueller Start mit Compass
npm run tsc
- Zuerst die Codequalität mit tslint prüfen und dann
- .ts-Dateien durch tsc in das Verzeichnis
dist
übersetzen
Durch nodemon (= Node Monitor) wird der Appserver so gestartet, dass er JavaScript-Dateien im laufenden Betrieb nachlädt, wenn sie später aktualisiert werden, weil z.B. eine TypeScript-Datei neu übersetzt wird. Beim Starten des Appservers wird mit mongoose auf MongoDB zugegriffen.
npm start
Von Zeit zu Zeit hängt sich nodemon auf und muss dann halt neu gestartet werden.
Falls nodemon nicht vernünftig funktioniert, kann man auch den Appserver direkt starten (s.u.) und muss diesen dann bei jeder Änderung neu starten.
npm run nodemailer
- Der MongoDB-Server muss laufen
- Der Appserver darf nicht laufen
(Tests noch nicht implementiert)
npm t