diff --git a/src/lang/pl/lang.php b/src/lang/pl/lang.php
new file mode 100644
index 00000000..84e901bd
--- /dev/null
+++ b/src/lang/pl/lang.php
@@ -0,0 +1,66 @@
+ 'Strony nie znaleziono.',
+ 'auth' => [
+ 'title' => 'Logowanie',
+ 'username' => 'Nazwa użytkownika',
+ 'password' => 'Hasło',
+ 'login' => 'Login',
+ 'logout' => 'Wyloguj',
+ 'wrong-username' => 'Zły użytkownik',
+ 'wrong-password' => 'lub hasło'
+ ],
+ 'ckeditor' => [
+ 'upload' => [
+ 'success' => 'Plik został przesłany: \\n- rozmiar: :size kb \\n- szerokość/wysokość: :width x :height',
+ 'error' => [
+ 'common' => 'Nie mogłem wysłać pliku.',
+ 'wrong_extension' => 'plik ":file" ma złe rozszerzenie.',
+ 'filesize_limit' => 'Maksymalny dopuszczalny rozmiar pliku wynosi :size kb.',
+ 'imagesize_max_limit' => 'Szerokość x Wysokość = :width x :height \\n Zdjęcie nie może by większe: :maxwidth x :maxheight',
+ 'imagesize_min_limit' => 'Szerokość x Wysokość = :width x :height \\n Zdjęcie nie może by mniejsze: :minwidth x :minheight',
+ ]
+ ],
+ 'image_browser' => [
+ 'title' => 'Wstaw obraz na serwer',
+ 'subtitle' => 'Zmień obraz',
+ ],
+ ],
+ 'table' => [
+ 'new-entry' => 'Dodaj',
+ 'edit' => 'Edytuj',
+ 'delete' => 'Usuń',
+ 'delete-confirm' => 'Czy jesteś pewny, że chcesz usunąć?',
+ 'delete-error' => 'Błąd podczas usuwania tego wpisu. Musisz usunąć wszystkie wpisy powiązane.',
+ 'moveUp' => 'Przesuń do góry',
+ 'moveDown' => 'Przesuń w dół',
+ 'filter' => 'Pokaż podobne wpisy',
+ 'filter-goto' => 'Pokaż',
+ 'save' => 'Zapisz',
+ 'cancel' => 'Anuluj',
+ 'download' => 'Pobierz',
+ 'all' => 'Wszystko',
+ 'processing' => '',
+ 'loadingRecords' => 'Wczytuje...',
+ 'lengthMenu' => 'Pokaż _MENU_',
+ 'zeroRecords' => 'Nic nie znaleziono.',
+ 'info' => 'Wyświetlam _START_ do _END_ z _TOTAL_ ',
+ 'infoEmpty' => 'nic nie wyświetlam',
+ 'infoFiltered' => '(fultrowane _MAX_)',
+ 'infoThousands' => ',',
+ 'infoPostFix' => '',
+ 'search' => 'Szukaj: ',
+ 'emptyTable' => 'Dane nie dostępne',
+ 'paginate' => [
+ 'first' => '',
+ 'previous' => '',
+ 'next' => '',
+ 'last' => ''
+ ]
+ ],
+ 'select' => [
+ 'nothing' => 'Nic nie zaznaczono',
+ 'selected' => 'zaznaczono'
+ ]
+];
\ No newline at end of file
diff --git a/src/lang/pl/validation.php b/src/lang/pl/validation.php
new file mode 100644
index 00000000..4a2c7eb9
--- /dev/null
+++ b/src/lang/pl/validation.php
@@ -0,0 +1,68 @@
+ "pole :attribute powinno zostać zaakceptowane.",
+ "active_url" => "pole :attribute posiada złą wartość URL.",
+ "after" => "pole :attribute jest datą po :date.",
+ "alpha" => "pole :attribute powinno zawierać tylko litery.",
+ "alpha_dash" => "pole :attribute powinno zawierać litery, cyfry i myślniki.",
+ "alpha_num" => "pole :attribute powinno zawierać litery i cyfry.",
+ "array" => "pole :attribute powinno być tablicą.",
+ "before" => "Pole :attribute data powinna być przed :date.",
+ "confirmed" => "Pola :attribute nie są takie same.",
+ "date" => "Pole :attribute nie jest datą.",
+ "date_format" => "Pole :attribute powinno zawierać format :format.",
+ "different" => "Pole :attribute i :other powinny być różne.",
+ "digits" => "Pole :attribute powinno mieć :digits cyfr.",
+ "digits_between" => "Pole :attribute powinno zawierać pomiędzy :min i :max cyfr.",
+ "email" => "Pole :attribute powinno być adresem email.",
+ "exists" => "Wartość pola :attribute istnieje.",
+ "image" => "Pole :attribute powinno być obrazem.",
+ "in" => "W pole :attribute zaznacz więcej elementów.",
+ "integer" => "Pole :attribute powinno być liczbą całkowitą.",
+ "ip" => "Pole :attribute Zawiera błędny adres IP.",
+ "mimes" => "Plik :attribute powinien być typu: :values.",
+ "not_in" => "Pole :attribute nie zawiera .",
+ "not_php" => "Zły typ pliku.",
+ "numeric" => "Pole :attribute must be a number.",
+ "regex" => "Pole :attribute jest złego formatu.",
+ "required" => "Pole :attribute jest wymagane.",
+ "required_only_on_create" => "Pole :attribute jest wymagane.",
+ "required_if" => "Pole :attribute jest wymagane gdy :other jest :value.",
+ "required_with" => "Pole :attribute field is required when :values is present.",
+ "required_with_all" => "Pole :attribute field is required when :values is present.",
+ "required_without" => "Pole :attribute field is required when :values is not present.",
+ "required_without_all" => "Pole :attribute field is required when none of :values are present.",
+ "same" => "Pole :attribute and :other must match.",
+ "unique" => "Pole :attribute już istnieje.",
+ "url" => "Pole :attribute błędny format.",
+ "url_stub" => "Pole :attribute błędny format.",
+ "url_stub_full" => "Pole :attribute błędny format.",
+
+
+ /*
+ |--------------------------------------------------------------------------
+ | Custom Validation Attributes
+ |--------------------------------------------------------------------------
+ |
+ | Pole following language lines are used to swap attribute place-holders
+ | with something more reader friendly such as E-Mail Address instead
+ | of "email". This simply helps us make messages a little cleaner.
+ |
+ */
+
+ 'attributes' => [],
+
+];