Eine schnelle, kollaborative Wissensdatenbank für Ihr Team, erstellt mit React und Node.js.
Probieren Sie Outline mit unserer gehosteten Version unter www.getoutline.com aus.
Dies ist der Quellcode, der Outline und alle zugehörigen Dienste ausführt. Wenn Sie Outline verwenden möchten, müssen Sie diesen Code nicht ausführen. Wir bieten eine gehostete Version der App unter getoutline.com an. Eine Dokumentation zur Verwendung von Outline finden Sie auch in unserem Leitfaden.
Wenn Sie Ihre eigene Kopie von Outline ausführen oder zur Entwicklung beitragen möchten, sind Sie hier genau richtig.
Informationen zum Ausführen Ihrer eigenen Kopie von Outline in einer Produktionskonfiguration finden Sie in der Dokumentation.
Wenn Sie Fragen oder Verbesserungen zu den Dokumenten haben, erstellen Sie bitte einen Thread in den GitHub-Diskussionen.
Wenn Sie Änderungen, Korrekturen und Verbesserungen an Outline vornehmen möchten, gibt es eine kurze Anleitung zum Einrichten einer Entwicklungsumgebung.
Outline wird von einem kleinen Team erstellt und gepflegt – wir würden uns über Ihre Hilfe bei der Behebung von Fehlern und dem Hinzufügen von Funktionen freuen!
Bevor Sie eine Pull-Anfrage einreichen, besprechen Sie diese bitte mit dem Kernteam, indem Sie ein Issue auf GitHub erstellen oder kommentieren. Wir würden uns auch freuen, von Ihnen in den Diskussionen zu hören. Auf diese Weise können wir sicherstellen, dass ein Ansatz vereinbart wird, bevor Code geschrieben wird. Dies führt zu einer viel höheren Wahrscheinlichkeit, dass Ihr Code akzeptiert wird.
Wenn Sie nach Einstiegsmöglichkeiten suchen, finden Sie hier eine Liste mit Möglichkeiten, wie Sie uns bei der Verbesserung von Outline helfen können:
good first issue
Wenn Sie daran interessiert sind, einen Beitrag zu leisten oder mehr über die Outline-Codebasis zu erfahren, sehen Sie sich bitte zunächst das Architekturdokument an, um einen allgemeinen Überblick darüber zu erhalten, wie die Anwendung zusammengestellt wird.
In der Entwicklung gibt Outline eine einfache Protokollierung mit vorangestellten Kategorien an die Konsole aus. In der Produktion werden JSON-Protokolle ausgegeben. Diese können problemlos von Ihrer bevorzugten Protokollaufnahme-Pipeline analysiert werden.
Die HTTP-Protokollierung ist standardmäßig deaktiviert, kann jedoch durch Festlegen der Umgebungsvariablen DEBUG=http
aktiviert werden.
Unser Ziel ist eine ausreichende Testabdeckung für kritische Teile der Anwendung und nicht eine 100-prozentige Unit-Testabdeckung. Alle API-Endpunkte und alles, was mit der Authentifizierung zusammenhängt, sollten gründlich getestet werden.
Um neue Tests hinzuzufügen, schreiben Sie Ihre Tests mit Jest und fügen Sie neben dem getesteten Code eine Datei mit der Erweiterung .test.js
hinzu.
# To run all tests
make test
# To run backend tests in watch mode
make watch
Sobald die Testdatenbank mit make test
erstellt wurde, können Sie Frontend- und Backend-Tests einzeln direkt ausführen.
# To run backend tests
yarn test:server
# To run a specific backend test
yarn test:server myTestFile
# To run frontend tests
yarn test:app
Sequelize wird zum Erstellen und Ausführen von Migrationen verwendet, zum Beispiel:
yarn sequelize migration:generate --name my-migration
yarn sequelize db:migrate
Oder um Migrationen in der Testdatenbank auszuführen:
yarn sequelize db:migrate --env test
Outline ist BSL 1.1 lizenziert.