Projekty Open Source
-
SNApp to Aplikacja do tworzenia i zarządzania notatkami napisana w Next.js oraz TypeScript. Używa: MySQL, Prisma, Better Auth oraz ChakraUI.
-
ChatGPT conversation saving bookmark jest to tzw. bookmarklet, który służy do pobierania konwersacji ze strony ChatGPT, w formie pliku HTML.
-
jQuery Terminal jest to biblioteka, która umożliwia dodawanie interfejsu wiersza poleceń na stronach internetowych. Umożliwia dodawanie własnych poleceń oraz zawiera masę funkcji, które to ułatwiają. Takie funkcja jak podświetlanie składni, kodowanie znaków ANSI, skróty Basha czy auto uzupełnianie. Biblioteka używa jQuery, ale nie potrzeba jej używać gdy piszę się własny kod. Jest to bardziej framework który umożliwia pisanie aplikacji wiersza poleceń. Kod jest utrzymywany od 2010 roku i używa ręcznie pisany kod ES5.
-
LIPS jest to implementacja języka Scheme (Dialektu lisp) w języku JavaScript. Umożliwia bardzo łatwą integrację z językiem JavaScript. Połączenie między językiem JavaScript a kodem Lisp jest prawie jeden do jeden. Język posiada także bardzo potężne możliwości introspekcji oraz meta programowania. Kod jest napisany w dość nowoczesnym ES6+, ale nadal czasami używa dziedziczenia prototypowego z ES5 zamiast klas.
-
Sysend jest małą biblioteką, bez zależności zewnętrznych, która umożliwia komunikację między oknami i zakładkami, poprzez wysyłanie wiadomości. Umożliwia także komunikacje między domenami. Posiada proste API podobne do zdarzeń z jQuery, czy AngularJS.
Biblioteka posiada także funkcje, takie jak śledzenie okien/zakładek oraz mechanizm RPC, zbudowane na bazie prostych komunikatów.
-
Clarity jest motyw ikon SVG typu mono shape dla systemu GNU Linux. Został stworzony jako motyw dla GTK+. Motyw posiada skrypty Basha, które umożliwiają zmiane kolorów, istnieje także możliwość tworzenia własncych szablonów SVG.
-
Notes AngularJS App jest to aplikacja typu tekstowego do zapisywania notatek. Jest to jak mój drugi mózg. Nie ma możliwości zbudowania jej ponownie i dodania nowych funkcji (nawet mimo że jest plik package-lock.json), więc planuje przepisać ją w ReactJS. Mam zamiar dodać takie funkcje jak wyszukiwarkę pełno tekstową, PWA, tryb ciemny czy wsparcie dla telefonów. Posiadam długą listę funkcji do dodania.
-
WebRTC Send. Aplikacja napisana w Vanilla JavaScript, służąca do przesyłania plików i wiadomości między komputerami, korzystająca z WebRTC (P2P API) oraz Firebase.
-
UNCP: UNsplash Cache Proxy ten projekt to proste API napisane w PHP, które działa jako Proxy dla Unsplash API. To API ma ograniczenia na ilość zapytań (ang. rate limit), co może powodować prolemy jeśli używa się go podczas live codingu na technicznych rozmowach o pracę. Szczególnie jest to problem, gdy środowisko, w którym się pisze kod, uaktualnia aplikacje na żywo. Może to powodować masę zapytań do serwera. Dzięki temu proxy, nie trzeba się martwić o przekroczenie limitu.
-
Favloader jest to mała biblioteka, która umożliwia animowanie favikonki. Umożliwia dodanie efektu ładowanie podobnego do tego z przelgądarki Google Chrome, ale umożliwia zmianę koloru. Umożliwia także tworzenia własnych animacji poprzed udostępnienie API obiektu Canvas. Dzięki niej można także dodać animowane GIFy, nawet gdy przeglądarka ich nie obsługuje. Biblioteka działa nawet gdy zakładka nie jeset aktywna.
-
Yapp - Yet Another PHP Proxy założeniem tego projektu jest dać możliwość pośredniczenia między stronami oraz aplikacjami napisanymi w języku JavaScript. Dzięki temu umożliwia otworzenie stron, które inaczej są zablokowane. Większość tego typu projektów w PHP działa tylko z HTML i CSS.
-
- jquery.filebrowser jest to plugin który dodaje okno przeglądarki plików. Zobacz wpis: How to create Server File Explorer using jQuery and PHP,
- jquery.resize jest to plugin, który dodaje zdarzenie resize dla każdego elementu, używa resize obserwatora lub dodatkowego elementu więc będzie działać nawet gdy resize observer nie jest obsługiwany przez przeglądarkę,
- jquery.splitter jest to plugin, który dodaje komponent z wieloma panelami oraz elementem między nimi który można przesuwać, dzięki temu zmieniając rozmiar obu paneli,
- jquery.draglessClick jest to mały plugin, który dodaje zdarzenie click które nie reaguje na zdarzenie drag (przenoszenia), co jest domyślnym zachowaniem przeglądarki i biblioteki jQuery,
- jquery.rotate mały plugin który dodaje właściwość css rotate, działa także z animacjami. Może zostać użyty, gdy potrzebny jest tylko obrót zamiast dużej biblioteki która zawiera więcej transformacji,
-
Leash jest to aplikacja, która używa mojej biblioteki jQuery Terminal, która daje dostęp do wiersza poleceń serwera dla współdzielonych hostingów. Została stworzona aby umożliwić dostęp do powłoki gdy server nie udostępnia dostępu przez SSH. Używa języka PHP It use PHP jako backendu oraz jednej z funkcji dostępu do powłoki (np. exec), lub skryptu CGI w Pythonie i Perlu, gdy PHP ma wyłączone te funkcje. Niektóre hostingi wyłączają te funkcje. Działa z systemami GNU/Linux oraz Windows.
-
GIT Web Terminal jest to jeszcze jedna aplikacja wykorzystująca jQuery Terminal. Jest to próba odtworzenia wiersza poleceń gita jako w przeglądarce. Wszystko działa w przeglądarce dzięki bibliotece isomorphic-git, która umożliwia interakcję z repozytorium gita w przeglądarce oraz NodeJS czy Deno.
-
GGTips jest to biblioteka napisana w języku R. Umożliwia dodawanie tooltipów do wykresów stworzonych przy użyciu biblioteki GGPlot w aplikacjach shiny. GGPlot jest to najczęściej wybierana biblioteka do tworzenia wykresów w języku R, a GGTips wykorzystuje wszystkie możliwości tej biblioteki. Byłem odpowiedzialny za część Front-Endową biblioteki jako część mojej pracy w firmie Roche.
-
Battery jest to framwork napisany także w jezyki R. Przy czym tym razem byłem głównym architektem i autorem większości kodu. Jest to biblioteka do tworzenia architektury aplikacji napisanych przy użyciu biblioteki Shiny. Tak samo jako GGTips projekt powstał w ramach mojej pracy dla Roche i Genentech.
-
Tagger jest to biblioteka, bez zależności zewnętrznych, napisana w tzn. Vanilla JavaScript. Umożliwia dodawanie edytowalnych tagów do strony. Posiada także auto uzupełnianie.
>
-
Velvet to biblioteka Open Source jest napisana w TypeScriptcie. Nie ma żadnych zależności zewnętrznych (oprócz zależności developerskich). Jest to uniwersalne rozwiązanie CSS in JS, które nie wymaga kompilatora jak StyleX od Facebooka/Mety. Jest to więc rozwiązanie typu Runtime CSS-in-JS. Biblioteka wspira także ścisłe CSP poprzez tag nonce.
-
Gaiman jest to język programowania zainspirowany językiem Ruby, kompilowalny do języku JavaScript. Głównym celem jest umożliwienie tworzenie interaktywnych gier w za pomocą biblioteki jQuery Terminal, oraz prawdopodobnie w przyszłości wiersza poleceń. Tutaj jest playground języka, który umożliwa także pracę nad samym językiem. Gaiman używa generatora parserów Peggy (fork PEG.js).
-
Wayne biblioteka napisana w Vanilla JavaScript, posiadająca proste API do dodawania nowych odpowiedzi HTTP. API biblioteki jest podobne do tej z biblioteki Express.js, ale korzysta z Service Workera, który umożliwia tworzenie nowych endpoitów HTTP w przeglądarce. Zazwyczaj Service Worker jest używany do tego, aby dodać cache zapytań HTTP oraz pracę, gdy nie ma internetu (głównie dla aplikacji PWA), ale można go także używać do tworzenia odpowiedzi dla zapytania, które nigdy nie opuszczają przeglądrki.
-
Isomorphic-Git implementacja gita w czystym JavaScript, która działa w przeglądarce oraz NodeJS czy Deno. Jestem aktywnym maintainerem projektu. Główny autor projekt już nie pracuje nad nim. Zajmuję się głównie komunikacja z użytkownikami, robieniem code review, mergowaniem zmian, oraz decyduje w jakim kierunku powinien iść projekt (oczywiście uwzględniając co inni mają do powiedzenia).
-
Koduj to projekt który zapoczątkowałem w 2022, po moim pierwszym kursie kreatywnego programowania w JavaScript z wykorzystaniem biblioteki P5.js. Kurs został wystawiony na aukcji 30 finału Wielkiej Orkiestry Świątecznej Pomocy. W ramach pierwszej edycji kursu powstała prosta aplikacja. Aktualnie pracuję nad programem drugiej, ulepszonej i rozszerzonej, edycji kursu. W 2023 planuje napisać nową wersje aplikacji (plaformy). Aktualną wersje można nazwać MVP lub prototypem. Aplikacja wykorzystuje jQuery, PHP i Firebase. Nową wersje planuje napisać w ReactJS oraz może skorzystam także z Next.js.
-
CMatrix To biblioteka w JavaScript, która dodaje efekt z filmu Matrix, która używa elementu Canvas.
Inne projekty
- Wiersz Poleceń JavaScript wraz z książką Eloquent JavaScript,
- Wiersz Poleceń SQL wraz z kursem na temat języka zapytań SQL,
- Interpreter Pythona bazujący na bibliotece Brython,
- Route.js - prosty router w Vanila JavaScript
- Angular Piechart - dyrektywa AngularJS do renderowania wykresów typu Pie Chart,
- Monadic - POC biblioteki do dodawania zachowania monad/monoidów do obiektów,
- implementacja JSON-RPC w PHP i JavaScript,
- jsh.php - powłoka w PHP podobna do Leash ale w pojedynczym pliku. Można jej używać podczas testów penetracyjnych,
- firepad - prosty edytor używający firepad, Używałem go do pair programowania,
- CSS Draw Shape - dodawnie rysunków CSS (zainspirowany rysunku Space Invader stworzonego przez Vlada Zinculescu),
- coverage.el - Prosty pomniejszy tryb Emacsa który pokazuje pokrycie kodu testami dla PHP Unit i frameworka JavaScript jest,
Inny kod
- Implementacja struktur w języku Scheme
- Skrypt używający tastekid.com (która zmieniła nazwę na tastedive.com) API do wyświetlania podobnych rzeczy
- ./kopalinski.rb - Skrypt w Ruby do wyświetlania Definicji ze "Słownika Wyrazów Obcych Kopalińskiego", a tutaj możesz znaleźć baze danych sqlite ze słownikiem oraz skrypt do generowania.
- Uniwersalna funkcja eval która zwraca ciąg znaków dla wyrażeń i instrukcji (Python recipe)
- Wyciąganie danych z plików microsoft chm, skompilowanych plików html (Python recipe)
- Tworzenie definicji klas języka Java z wykorzystaniem interpretera Jython (Python recipe)
