Toolhub
Toolhub to utrzymywany przez społeczność katalog narzędzi, wykorzystywanych w ruchu Wikimedia. Wolontariusze-technicy mogą skorzystać z niego do dokumentowania oprogramowania, które tworzą lub utrzymują. Wszyscy wikimedianie mogą przeglądać Toolhuba w poszukiwaniu narzędzi, jakich potrzebują, oraz tworzyć listy, które można potem udostępnić innym.
Czym jest „narzędzie”
W Toolhubie, „narzędzie” jest określeniem używanym na oprogramowanie, które współpracuje z projektami Wikimedia, niebędąc częścią MediaWiki. Do tej grupy należą m.in. skrypty użytkowników, gadżety, boty, szablony, moduły Lua, aplikacje internetowe oraz mobilne. Katalog w zamyśle ma być inkluzywny i zawierać oprogramowanie, które pomaga organizować pracę i poprawiać doświadczenia użytkowników projektów Wikimedia.
Licencja na zawartość
Zawartość toolinfo.json oraz inne dane strukturyzowane zbierane w Toolhubie są dostępne na licencji Creative Commons CC0 Przekazanie do domeny publicznej (CC0). Zachęcamy osoby korzystające z nich do podania atrybucji, linkując do Toolhuba, jednak nie jest to wymagane dla zgodności z licencją. Utrzymujący pliki toolinfo.json na zewnątrznych serwerach muszą się upewnić, że ich (współ)autorzy są świadomi wymogu publikacji na licencji CC0. Opisy narzędzi, skopiowane z projektów Wikimedia lub dokumentacji, które są udostępniane na innej licencji, powinny zostać skrócone do 50 słów/250 znaków, aby ograniczyć zakres wymogów licencyjnych. Ten limit odnosi się tylko do treści skopiowanych. Teksty na CC0 mogą być dowolnej długości.
Konta użytkowników
Toolhub wykorzystuje autoryzację protokołem OAuth, z użyciem istniejących kont Wikimedia. Nie ma potrzeby tworzenia nowych kont, ani ustalania nowych haseł.
Dodawanie narzędzi do katalogu
Narzędzia w Toolhubie pochodzą z zarejestrowanych plików toolinfo.json, dostępnych w internecie. Drugą metodą dodania wpisów do katalogu jest przesłanie danych bezpośrednio do API Toolhuba.
Hosting your toolinfo.json files as part of a Git repository makes it possible for volunteers to submit pull requests to help keep the core tool information updated.
Publikacja pliku toolinfo i rejestracja w Toolhubie
Plik toolinfo jest dokumentem JSON, zgodnym ze standardem toolinfo. Jest on rozszerzeniem specyfikacji stworzonej przez Husky'ego, jako część jego Hay's Directory.
- Stwórz plik JSON zgodny ze standardem
- Umieść go na stronie internetowej
- Zarejestruj adres URL pliku w Toolhubie
Toolhub sprawdza każdy zarejestrowany plik toolinfo co około 60 minut i aktualizuje katalog w razie potrzeby.
Przykładowe pliki toolinfo.json z prawdziwych narzędzi:
Narzędzia hostowane na Toolforge mogą używać toolsadmin do stworzenia rekordu toolinfo, który zostanie automatycznie wczytany przez Toolhuba i Hay's Directory. |
Utworzenie rekordu toolinfo poprzez interfejs użytkownika Toolhuba
Aby utworzyć nowy wpis toolinfo wprost w katalogu, możesz użyć opcji Add or remove tools > Create a new tool w Toolhubie. Jeśli chcesz podać więcej informacji, niż pozwala formularz tworzenia narzędzia, możesz je dodać później, wykorzystująć okno edycji narzędzia (Edit tool).
Tworzenie i edycja toolinfo poprzez API
Punkt końcowy POST /api/tools/ API Toolhuba może zostać wykorzystany do stworzenia nowego wpisu toolinfo bezpośrednio w katalogu narzędzi. Ta sama metoda jest wykorzystywana przez interfejs użytkownika. Po więcej informacji o specyfikacji tego punktu dostępu możesz się udać do dokumentacji API Toolhuba.
Informacje o narzędziu do edycji
Some of the information contained in the toolinfo record is editable by anyone, but some of it can only be edited by owners or admins. Toolhub's data model splits tool information into two parts: the core tool info and its annotations:
Type of metadata | How it is created | Who can change it | Where to make changes |
Core tool info
Basic and essential information about the tool. |
Created by using API or Toolhub (the UI uses the API on the backend) OR By submitting a toolinfo.json URL to be crawled |
The owner, Administrators and Oversighters OR Users who can change (or submit pull requests for) the externally-stored toolinfo.json file |
In the same place the record was created. If the tool record was originally submitted through Toolhub, it can only be edited through Toolhub. If tool record data is stored externally in toolinfo.json files, it can only be edited there. |
Community annotations
Additional information about the tool. |
Toolhub UI, API, or through tools like Toolhunt that use the API | Any authenticated user with a Wikimedia account | Toolhub UI, API, or through tools like Toolhunt that use the API |
Core tool info
All tools in Toolhub have a core tool record containing basic information, such as the tool name and author. Only the owner, Administrators and Oversighters can edit the core tool info in Toolhub. The owner of a tool's core information is the user who created it within Toolhub (regardless of which method they used to create it).
For externally-stored toolinfo records, anyone with permissions to edit the crawled toolinfo file can edit the core tool info.
Editing tool URLs
The URL for a tool is part of the core toolinfo data. This means that it can be submitted as part of a toolinfo.json file or edited through the UI & API by the owner of the toolinfo record. It cannot currently be edited by the community at large. You will only be able to edit the tool's URL if you are given the choice of selecting "Edit core toolinfo" after clicking the "edit" button. Otherwise you are seeing the form for editing the "annotations" layer of a toolinfo record -- you will not be able to edit the tool's URL.
If you are a tool maintainer and your record has been imported from https://toolsadmin.wikimedia.org, the edit form on toolsadmin displays a checkbox near the bottom of the form labeled "This is a webservice". Check this box to automatically set the toolinfo record's URL. Note that the Toolhub crawler runs once a hour, so changes to toolinfo records made through Toolsadmin take over an hour to show up.
Community annotations
After Toolhub receives a core tool record, volunteers can submit annotations to it. Annotations help make it easier to find tools by supplying additional information. Annotations cannot be stored in toolinfo.json files; they are meant to always be editable by community members.
The annotations fields are:
- Icon
- Whether a tool is deprecated/experimental/replaced by another tool
- Tool type
- For Wikis
- Audiences
- Content types
- Tasks
- Subject domains
- Available UI languages
- Links: API, end user docs, feedback, privacy policy, bug tracker, translations, developer docs
- Wikidata QID
Details about fields that are part of the annotations layer are in the API documentation at https://toolhub.wikimedia.org/api-docs#put-/api/tools/-name-/annotations/.
Some annotations mirror fields from the core toolinfo.json specification. Toolhub only displays an annotations field for community editing if the corresponding field in the core record is empty or missing. When both the core and annotation data for a given field are populated, Toolhub displays the core data rather than the annotation data. This was chosen as a compromise between the conflicting desires for tool maintainers to have ultimate control of their data records, and for the community to be able to improve the documentation for tools.
Przeszukiwanie katalogu
Wyszukiwarka korzysta ze składni Elasticsearch simple query string syntax:
+
oznacza koniunkcję (spójnik „i”)|
oznacza alternatywę (spójnik „lub”)-
powoduje negację pojedynczego członu"
oznacza frazę, składającą się z kilku członów*
na końcu wyrażenia oznacza prefiks wyszukiwania(
i)
służą do grupowania wyrażeń~
N (gdzie N to liczba) po słowie oznacza odległość edycyjną~
N (gdzie N to liczba) po frazie oznacza maksymalną liczbę pozycji pomiędzy pasującymi członami- Znaki specjalne (
+
,|
,-
,"
,*
,(
,)
, and~
) muszą zostać poprzedzone\
albo umieszczone wewnątrz cudzysłowów, aby utracić swoje specjalne znaczenie. - Wyszukiwania nie rozróżniają wielkości znaków
The autocomplete feature is designed to help you with relevant suggestions as you type a query.
Tworzenie i udostępnianie list narzędzi
Do ekranu Your lists (Twoje listy) można przejść za pomocą linku w menu użytkownika. Jest on dostępny wyłącznie po zalogowaniu. Naciśnij ikonkę użytkownika obok przycisku wyboru języka w pasku nawigacyjnym u góry, by otworzyć menu. Za jego pomocą możesz tworzyć i edytować listy, a także – kiedy będą gotowe – oznaczyć je jako publiczne, by inni mogli z nich korzystać. Publiczne listy mogą zostać wyróżnione przez administratorów, dzięki czemu będą mogły się wyświetlić na stronie głównej Toolhuba.
Tools can also be added to (or removed from) an existing or newly created list directly from the menu button on the tool card, as well as from the menu button on the tool info page.
Public and featured lists
Public lists can be viewed and searched by navigating to the Published lists section from the navigation drawer on the left. Administrators can mark public lists as featured, which will allow them to be shown on the Toolhub landing page.
Listy można udostępnić, kopiując URL z paska adresu przeglądarki lub klikając na przycisk Copy link and dhare with others (skopiuj link i udostępnij innym) na ekranie ze szczegółami listy.
Save your favorite tools to a special list
Tools can be marked as "favorites" by logged-in users, which means they are saved to a special list only visible to the current user. This list of favorites can be accessed from the user menu in the top-right corner. To mark a tool as a favorite, click on a tool card to reach the tool info page, then click the favorite button.
Uprawnienia użytkowników
Użytkownicy anonimowi
Wszystkie czynności polegające na odczycie danych można wykonywać bez logowania do Toolhuba.
Użytkownicy
Zalogowani użytkownicy mogą wykonywać wszystko to, co anonimowi. Ponadto, są uprawnieni do tworzenia nowych rekordów toolinfo, edycji stworzonych przez siebie wpisów do katalogu, a także tworzenia i edycji swoich list.
Biurokraci
Biurokraci mogą zmieniać uprawnienia sobie i innym. Dotyczy to zarówno przyznawania jak i odbierania uprawnień.
Patrolujący
Patrolujący mają uprawnienia do oceniania zmian w dowolnych rekordach toolinfo i oznaczenia ich jako „sprawdzone” lub pozostawiania nieoznaczonymi. W tej chwili nie ma możliwości wycofania edycji.
Rewizorzy
Rewizorzy mogą ukrywać dowolną zmianę oraz przywracać te ukryte. Mają również uprawnienia do edycji rekordów toolinfo i list innych użytkowników, dzięki czemu mogą cofać problematyczne zmiany albo usuwać zawartość, która nie powinna się w katalogu znaleźć.
Administratorzy
Administratorzy mają wszystkie uprawnienia biurokratów, patrolujących i rewizorów.
Patrolowanie zmian
Zmiany mogą sprawdzać patrolujący oraz administratorzy. Odpowiednie uprawnienie przyznają biurokraci lub administratorzy.
Kiedy w rekordzie toolinfo zostanie wykonana zmiana, może zostać sprawdzona z dwóch miejsc:
- Z poziomu historii strony: kliknij opcję „Oznacz jako «sprawdzoną»” (Mark as patrolled) na odpowiednim wpisie rejestru;
- Z poziomu linku do samej zmiany: kliknij „Oznacz jako «sprawdzoną»” (Mark as patrolled) w podsumowaniu zmian na górze strony.
Zmiany mogą jedynie zostać oznaczone, albo pozostawione bez zmian. Nie ma możliwości odrzucenia ich lub wycofania.
Zmiana uprawnień użytkowników
Administratorzy i biurokraci mogą zmieniać uprawnienia sobie i innym. Dotyczy to zarówno ich przyznawania jak i odbierania. Każda pojedyncza zmiana w uprawnieniach użytkownika będzie widoczna w logach. To oznacza, że jednoczesne przyznanie lub odebranie kilku uprawnień wygeneruje więcej niż jeden wpis w rejestrze.
Przyznawanie uprawnień
- Przejdź do widoku „Członkowie” (Members).
- Wybierz użytkownika, któremu chcesz nadać uprawnienia. Pomocne może być ustawienie filtrów wyszukiwania.
- Kliknij ikonkę ołówka obok nazwy użytkownika. Wyświetli się okno z jego bieżącymi uprawnieniami.
- Z listy rozwijanej wybierz grupę, do której chcesz dodać użytkownika.
- Naciśnij „Dodaj” (Add).
- Pojawi się komunikat, że operacja się powiodła.
Odbieranie uprawnień
- Przejdź do widoku „Członkowie” (Members).
- Wybierz użytkownika, któremu chcesz odebrać uprawnienia. Pomocne może być ustawienie filtrów wyszukiwania.
- Kliknij ikonkę ołówka obok nazwy użytkownika. Wyświetli się okno z jego bieżącymi uprawnieniami.
- Znajdź uprawnienie do odebrania. Kliknij czerwoną ikonę kosza na śmieci obok odpowiedniej pozycji.
- Pojawi się komunikat, że operacja się powiodła.
Ukrywanie wersji
Uprawnieniami do ukrywania i odkrywania wersji dysponują rewizorzy i administratorzy. Pozwala to reagować na sytuacje, kiedy użytkownik omyłkowo udostępni prywatne informacje.
Metadane (takie jak data edycji, nazwa użytkownika i opis zmian) powiązane z wersją nie będą widoczne na stronie historii rekordu toolinfo. Wszystkie akcje rewizorskie, razem z nazwą użytkownika, który je wykonał, są zapisywane w odpowiednim rejestrze.
Ukrywanie wersji
- Określ zawartość do ukrycia
- Przejrzyj historię zmian, aby określić kiedy dodano tę treść
- Upewnij się że zawartość do ukrycia nie jest częścią najnowszej wersji strony
- Jeśli najnowsza wersja zawiera treść do ukrycia, administrator, rewizor lub właściciel narzędzia powinni edytować opis, by ją usunąć
- Określ, które wersje należy ukryć
- Kliknij na link „ukryj” (hide), aby ukryć zmianę
- Powtórz tyle razy, ile to konieczne, by ukryć wszystkie problematyczne wersje
Ujawnianie ukrytej wersji
- Z poziomu historii wersji, określ które wersje należy ujawnić
- Kliknij link „ujawnij” (reveal) przy pojedynczej pozycji
- Powtórz tyle razy, ile konieczne, by ujawnić wszystkie pożądane wersje
Translation
Language translations on Toolhub just like other projects and tools at Wikimedia Foundation is handled by the translatewiki.net community.
Toolhub provides language selection based on list of known languages and not on translation completion, and is configured to provide translations based on a list of fallback languages in varying order of relevance, defaulting to English when there is no translation found for the string in either the selected language or other configured fallback languages. For this reason, you will frequently encounter situations where part of the translations in a page are in the selected language, while others parts are in other languages or English. You can help us fix this by volunteering to translate toolhub on translatewiki.net.