Kontakt: +48 606 356 235 lub napisz do nas

wiki.js - zarządzaj wiedzą w firmie

Autor: Ireneusz Piasecki    6 Grudzień 2023
7 Grudzień 2023
6 min.

Wiki.js
 

Uwaga

Nasza firma oferuje usługi instalacyjne i serwisowe systemu Wiki.js.

Zapraszamy do KONTAKTU i współpracy!

Tel. kontaktowy: +48 606 356 235

1. Wstęp

Gdy mówi się o Wiki, pierwsza myśl jaka się pojawia to: wikipedia.org. Spróbujmy więc przybliżyć pojęcie systemu typu wiki.

Wiki to oprogramowanie stworzone w celu ułatwienia zespołom wspólnego pisania i edytowania w obrębie jednej platformy. Ma spełniać jeden zasadniczy cel: zapewnić twórcom i redaktorom optymalne środowisko do pisania i publikowania, ale także zestaw narzędzi do zarządzania treścią i użytkownikami dla moderatorów i menedżerów.

Wiki istnieją od początków współczesnego Internetu, a najpopularniejszym systemem Wiki to MediaWiki, wykorzystywany przez Wikipedię.

Na przestrzeni lat pojawiło się wiele silników wiki, począwszy od MediaWiki, DokuWiki, PmWiki, Wikkawiki i TiddlyWiki. Wszystkie z nich są nadal używane i wciąż rozwijane.

wiki.js to system typu “wiki” udostępniony na licencji “open source” AGPL-v3. Można go wykorzystać do publikacji materiałów na swojej stronie internetowej lub jako intranetowy system wiedzy z dostępem jedynie dla członków danej organizacji.

Dzięki łatwości edycji artykułów i łatwemu tworzeniu struktury serwisu webowego - idelanie nadaje się do tworznia wszelkiego rodzaju intra/extranetów lub po prostu witryn internetowych.

wiki.js działa na różnych systemach operacyjnych, moży być również uruchomiony jako kontener. Do działania potrzebuje wybranego silnika bazy danych. W tworzonej wersji systemu (v.3) - wspierana będzie tylko baza danych PostgreSQL.

2. Główne funkcjonalności

  1. Łatwa instalacja - działa praktycznie na każdej platformie i wspiera instalację z bazami danych: PostgreSQL, MySQL, MariaDB, MS SQL Server lub SQLite!

  2. Wydajność - niesamowicie szybki “silnik” Node.js - od samego początku w wiki.js na pierwszym miejscu stawiano na szybkość działania.

  3. Administracja - zarządzanie wszystkimmi aspektami systemu, wykorzystując zaawansowany i intuicyjny panel administracyjny.

  4. Pełne dostosowanie - szerokie możliwości dostosowania wiki.js do pożądanego wyglądu, możliwość skorzystania z motywu jasnego i ciemnego.

  5. Skalowalność - uruchamiane na malutkim Raspberry Pi czy na maszynie wirtualnej o wysokiej wydajności - wiki.js optymalnie wykorzystuje zasoby.

  6. Szybka wyszukiwarka - wiki.js zostało wyposażone w szybką wyszukiwarkę artykułów, co powduje, że wyszukiwanie informacji jest szybkie i efektywne.

3. Ponadto

  1. Mechanizmy autentykacji

    • Autentykacja lokalna: wbudowane autentykacja oparta na samo-rejestracji wraz z mechanizmem odzyskiwania zapomnianego hasła.

    • Autentykacja “socjalna”: użycie mechanizmów logowania udostępnionych m.inn. przez Google, Facebook, Microsoft, GitHub, Discord, Slack i innych.

    • Autentykacja klasy korporacyjnej: integracja z istniejącymi mechanizmami stosowanymi w przedsiębiorstwach - LDAP, SAML, CAS, Auth0, Okta, Azure AD i inne. Dołączono również moduły OAuth2 i OpenID Connect.

    • Autentykacja za pomocą mechanizmu 2FA: dodatkowa warstwa zabezpieczenia używająca dwuetapowej weryfikacji wspierana przez dodatkowe moduły.

  2. Wybor edytorów tekstu

    • Markdown - najpopularniejszy format tworzenia dokumentacji wśród developerów. Zawiera podgląd na żywo edytowanego tekstu, a dzięki skrótom klawiaturowym edycja tekstu jest jeszcze szybsza.

    • Edytor WYSIWYG - łatwy w użyciu edytor tekstu dla nietechnicznych użytkowników. Nie ma potrzeby znać kanony kodowania czy specjalną składnię.

    • Czysty HTML - tworzenie tekstów w kodzie HTML. Przydaje się przy imporcie z innych systemów, gdzie teskt jest zapisany właśnie w formacie HMTL.

    • WikiText - łatwa migracja zwartości z systemu MediaWiki, gdzie używano edytora tesktu WikiText.

    • API Docs - umożliwia tworzenie dokumentacji API ze zoptymalizowanym edytorem REST/GraphQL. Można dodawać punkty końcowe, parametry, odpowiedzi i przykłady kodu.

    • Tabelaryczne - możliwość szybkiego tworzenia stron w stylu Excela.

  3. Zapis zmian

    • Śledzenie wersji - wszystkie zmiany są zapisywane. Zawsze można wrócić do poprzedniej wersji dokumentu lub odzyskać usunięty dokument.W łatwy sposób można sprawdzić kto i kiedy dokonał zmian w dokumencie.

    • Porównywanie wersji - wizualny mechanizm porównywania wersji dokumentu umożliwiający porównanie między sobą dwóch wersji strony.

    • Eksport wersji dokumentu - szybki eksport wybranej wersji dokumentu lub utworzenie nowej strony z wybranej wersji istniejącej strony.

  4. Wsparcie dla wersji językowych - lokalizacje -

    • “Dostępne w twoim języku” - wiki.js zostało przetłumaczone na ponad 40 języków. Jeśli dany język nie jest dostępny, można to zgłosić do zespołu lub dokonać translacji samemu za pomcą udostępnionych narzędzi.

    • Wsparcie dla RTL - wsparcie dla języków, gdzie pisze się od prawej do lewej.

    • Zawartość wielojęzyczna - możliwość publikowania treści w wielu językach. Prosty mechanizm wyboru wersji językowej artykułu.

  5. Zarządzanie plikami

    • Menadżer aktywów - zarządzanie przesłanymi plikami wiedo, zdjęciami etc. z poziomu “menadżera aktywów”. Łatwe zarządzanie strukturą folderów i plikami.

    • Edytor obrazów - wbudowany edytor obrazów umożliwiający wykonywanie wielu operacji na obrazach: przycinanie, skalowanie, nakładanie filtrów.

  6. Renderowanie stron

    • Podświetlenie kodu - możliwość wstawiania tekstu jako kodu programowania i podświetlania składni wraz z numeracją linii.

    • Diagramy - możliwość tworzenia wszelkiego rodzajów diagramów z wykorzystaniem świetniego systemu draw.io i nie tylko.

    • Wyrażenia matematyczne - renderowanie skomplikowanych wyrażeń matematycznych tworzonych w formacie TeX lub MathML,

    • Odtwarzacz multimedialny - materiały z Youtube, dźwięki, własne pliki wideo.

  7. Wyszukiwanie

    • Baza danych - wiki.js posiada zaimplementowany mechanizm efektywnego wyszukiwania na witrinie wiki.js. Nie wymaga konfiguracji i jest dostępny zaraz po instalacji.

    • Wyszykiwanie w chmurze - możliwość użycia wyszukiwania w chmurze z wykorzystaniem takich usług jak Algolia, Azure Search oraz innych w celu poszerzenia funkcjonalności wyszykiwania.

    • Elasticsearch - wykorzystanie mechanizmów Elasticsearch w celu dodania nowych funkcjonalności wyszukiwania.

    • inne systemy - możliwość wykorzystania silników wyszukujących: Manticore, Solr, Sphinx

  8. Przechowywanie danych

    • Git - synchronizacja i przechowywanie kopii bezpieczeństwa w popularnych serwisach takich jak GitHub, GitLab, Azure DevOps i innych.

    • Dane w chmurze - możliwość przechowywanie danych lokalnie na dysku lub w systemach chmurowych: AWS S3, Azure Blob Storage, Google Cloud Storage, DigitalOcena Spaces i innych.

    • Dane w prywtanej chmurze - możliwość przechowywania danych z wykorzystaniem usług takich jak: Dropbox, Google Drive, MS OneDrive, Box i innych.

    • Lokalnie/Sieciowo - kopie bezpieczeństwa można przechowywać lokalnie na dysku lub na udziale sieciowym. Można również skorzystać z bezpiecznego kopiowania poprzez SSH.

  9. Zarządzanie użytkownikami

    • Narzędzia do zarządzania - zarządzanie użytkownikami w panelu administracyjnym. Można szybko utworzyć nowego użytkownika lub zedytować jego dane.

    • Grupy - możliwość przypisania użytkowników do grup wraz z kontrolą dostępu. Nie ma potrzeby tracić czas, aby przypisać uprawnienia na poziomie użytkownika.

    • Uprawnienia - przypisanie uprawienie do grup, warunkujące co użytkownik może zrobić i do czego może mieć dostęp.

    • Reguły stron - zaawansowane i precyzyjne reguły strony dla grup, używając dokładnej ścieżki, początku/końca i filtrów wyrażeń regularnych.

  10. Motywy

    • Motywy niestandardowe - możliwość tworzenia niestandardowych motywów dla wiki.js.

    • Tryb ciemny - wybór trybów: dzienny lub nocny dla interfejsu użytkownika.

    • Personalizacja motywu domyślnego - motyw domyślny posiada wiele opcji koloru i wyświetlania.

    • Własny kod CSS/JS - możliwość dołączenia własnego kodu CCS lub JS zmieniającego wygląd strony lub elementów.

4. Przykładowe ekrany wiki.js

Wiki.js screenshot
wiki.js
 
Wiki.js screenshot
wiki.js

5. Podsumowanie

Wiki.js to ciekawa alternatywa dla innych tego typu rozwiązań np. MediaWiki, DokuWiki etc. System oferuje wiele możliwości, a łatwość instalacji i konfiguracji tylko przemawiają za. System jest wciąż rozwijany, a wersja v3 systemu wniesie wiele nowości i ułatwień.