Українська
Відкрити в Telegram
FFree React For Beginners

Free React For Beginners

@reactbeginners · канал · Технології · в індексі з 06.07.2026
3 011підписників−14 за тиждень
1постів за 30 днів
713постів в індексі
V
Vitalii ZamPoMish
Посилання
натисніть — покажемо
Так панство, тут Genesis Front-End School відкриває безкоштовні курси з побудови фронт-енд застосунків. З плюсів - в теорії можуть після навчання можуть взяти на роботу З мінусів - відбір, який треба буде пройти: HTML, CSS, JavaScript/TypeScript, React. Але думається мені ви впораєтеся (або дехто взагалі ментором туди піти може 😅). Дедлайн 13 квітня, старт 19 травня. Як на мене звучить як варіант (правда умов контракту я не знаю, якщо там треба буде продати душу, то будь-те обережні, душі річ цінна навіть в поточному перебаханому сьогоденні) Тут деталі, якщо хтось влаштується буде супер. П.М. Вибачайте що контенту мало, тексту мало, всього мало. Телеграму під рукою немаю, бачу його вряди годи (лінкедин і то частіше). Та й трохи втомлююся якщо чесно. Останнім часом все дуже нервово і не просто. Напевне війна... Тримайтеся. Дотянемо, переживемо і ще посидимо на березі річки.... Всіх обняв, ваш ЗамПоМиш
52 · 3.9K ·
V
Vitalii ZamPoMish
Посилання
натисніть — покажемо
Початкові налаштування нового #react проекту Видаліть все зайве - зайвий код, зображення, іконки, тощо. Передивіться вже встановлені залежності коду і перенесіть в секцію dev ті залежності, що призначені для розробки (eslint, prettier, jest). Це буде корисно коли/якщо ви будете налаштовувати npm audit --omit=dev` Налаштуйте форматування за допомогою prettier та одразу застосуйте його з прапором --write. Досить сперечатися про крапки з комами. Встановіть і налаштуйте лінтер - eslint під себе, або за правилами команди. Наприклад для не використаних змінних я ставлю warning замість error, не так сіпається око. Встановіть та налаштуйте систему хуків для git - husky. Так ви зможете виконувати будь-які додаткові дії перед/після коміту/пушу. Наприклад ви зможете налаштувати husky автоматично запускати форматування staged коду. Тепер код у всіх і завжди буде виглядати одноманітно і без зусиль. Напишіть readme - Два речення про що проект, як встановити залежності (навіть якщо це тривіальний npm install бо може бути і yarn install), як запустити dev збірку, та які правила ви налаштували (а в ідеалі ще й чому) Все, можна плисти далі. Але якщо хочеться більшого то... це буде в наступному пості :) П.М. Амеліансе, я пам'ятаю що ти не фанат прітієра, та поки краще не зустрічав)
19 · 3.9K ·
V
Vitalii ZamPoMish
Продовжуємо серію про налаштування #frontend проекту і тепер потурбуємося про #websecurity. 1. Перевірте, що файл .env.local або його аналог не доданй під git. Так ваші паролі або токени не потраплять в мережу, а ви не отримаєте додаткові рахунки. Всі ключі/токени/паролі які ви використовуються мають зберігатися окремо або в key vault, або хоча б на білд машині яка готує реліз. 2. Налаштуйте перевірку ваших залежностей за допомогою команди npm audit. Ця команда покаже вам пакети, що містять вразливості та допоможе оновити їх щоб це виправити. Для того щоб було менше false positive спрацювань: - - Перенесіть в dev секцію вашого package.json файлу всі залежності що стосуються розробки - prettier, eslint, jest, і т.д. - - Використовуйте npm audit з прапорцем --production або --omit=dev. - - Передайте привіт create-react-app :) Гарною ідеєю буде інтегрувати цю перевірку в merge фазу пулл реквесту. Або раніше якщо не хочеться все перероблювати :) 3. Безпека runtime. Через особливість налаштування, частіше цим займається команда інфраструктури або бекенду, але частково це можемо налаштувати і ми. Особливо якщо у нас щось накшталт #nextjs Мова йде про основні безпекові заголовки - Content-Security-Policy (CSP), X-Content-Type-Options, Feature-Policy. А якщо ви ще й піклуєтеся про приватність ваших користувачів то й Referrer-Policy. В разі правильного застосування, за заголовки можуть запобігти або суттєво зменшити шкоду користувачам вашої веб сторінки. Детальніше про ці заголовки та як їх налаштовувати я розповім в наступному пості, бо лонгріди ж ніхто не читає) Ваш ЗамПоМиш. П.М. Ви тут як? Бо останнім часом такий цирк на дроті що голова обертом.
17 · 3.5K ·
V
Vitalii ZamPoMish
Фотографія
Всім привіт! Кажуть що збори загинаються, люди перестали підтримувати #ЗСУ. А у мене завтра #деньнародження, мені потрібна ваша допомога щоб повернути в стрій наше авто. От і давайте перевіремо. В 22 році з цим не було ніяких проблем, кожен допомагав чим міг. Подивимось що буде зараз :) Отже, на мій день народження, замість купляти собі стім дек, оголошую збір на ремонт зеленого буцефала - нові передні амортизатори (9000) та нову резину (16000). Бо аморти убиті в хлам , а резина лиса як більярдна куля та дірява як друшляк. Буду дуже вдячний за вашу допомогу. Звіт буде під цим постом. П.М. Стрім обіцяти не можу, але постараюся організувати це найближчим часом. 👉Монобанка тут Ваш ЗамПомиш, #ЗСУ #ДеньНародження
1 · 3.1K ·
V
Vitalii ZamPoMish
ВідповідьВсім привіт! Кажуть що збори загинаються, люди перестали підтримувати #ЗСУ. А у мене завтра #деньнародження, мені потрібна ваша допомога щоб повернути в стрій наше авто. От і давайте перевіремо. В 22 році з цим не було ніяких проблем, кожен допомагав чим міг. Подивимось що буде зараз :) Отже, на мі
Фотографія
Збір закрито, в чому я й не дуже сумнівався. Дякую всім за підтримку та свідому позицію. А тепер серйозно. Перемовини гальмуються не просто так. За підтримки трампа, русня вибила можливість заморозки фронту по лінії зіткнення (так, трамп зараз грає на боці русні, йому це просто вигідно). русня накопичила сил та літню кампанію через це зараз зупинятися їй просто немає сенсу. Тому, як мінімум літньо-осінню кампанію ми побачимо. Розвідка Америки взагалі прогнозує повторний наступ на Київ. І від того як нам вдасться відбитися - будуть залежати умови завершення війни. Тому, будь-ласка, підтримуйте армію. Бо саме я з вами і є армія. Немає цивільних та військових. Є лише ті хто готовий захищати свою країну. І тут ми з вами маємо бути єдині. Всіх обіймаю, поїхав купляти собі нові штани) П.М. А це я - в багажнику бусіка. Не так там то і погано з кавою)
3 · 3.2K ·
Vitalii ZamPoMish
Отже про заголовки #websecurity для #frontend Заголовків багато, різних, та нас цікавлять наступні: 1. Content-Security-Policy. Уявіть простий сценарій. На вашій сторінці знайшли XSS взраливість (треба про це розповідати?) і вбудували туди свій код. А він бах - і не працює. Чому? Тому що за допомогою CSP ви можете заборонити виконувати вбудований код. Тоді зловмисник може спробувати підвантажити код зі стороннього ресурсу. А це теж не працює, тому що ви обмежили завантаження JavaScript своїм доменом. Так само ви можете задати правила для будь-якого ресурсу - хоч JavaScript, хоч зображення, хоч CSS. Що цікаво, що для налаштування цього заголовку вам не потрібно турбувати бекенд. Ви можете вказати його за допомогою тегу meta з властивістю http-equiv="Content-Security-Policy" Правда є з ними і проблеми - складність налаштування (раджу використовувати CSP builder) та конфлікти з Google Analytics домен якої залежить від регіону. Відповідно вам доведеться додавати всі піддомени гугла у white list. Таке собі. Детальніше почитати можна тут 2. Другий заголовок який нас цікавить - X-Content-Type-Options Цей заголовок забороняє браузеру тип змісту ресурсів що завантажуються. Це протидії наступній цікавій атаці. Уявіть собі що ви налаштували CSP і заборонили виконувати JS. Зловмисник це побачив і замість файлу з content-type text/javascript відправляє той самий JS але не вказуючи тип. Деякі браузери (не всі), можуть спробувати подивитися в зміст файлу, і спробувати самостійно визначити його тип. Якщо тип буде визначено як JS цей файл буде виконано в обхід CSP. Заголовок X-Content-Type-Options забороняє браузеру "вгадувати" Нажаль, для цього заголовку, немає http-equiv, тому віддавати його має саме бекенд Детальніше можна почитати тут 3. Третій заголовок - Feature Policy або його менш підтрумувана версія - Permission Policy. Тут все просто - цей заголовок вмикає/вимикає певні фічі WebAPI. Наприклад, якщо вашій веб сторінці не потрібна камера, ви можете повідомити бр… Читати повністю →
20 · 4.3K ·
V
От бачите, не подбали трохи за безпеку і вже в сибіру палає. Хай там навіть 20 літаків пошкоджено, але це просто найсильніша операція ССО у світі за якою можна знімати фільми будь-якого рівня. Вітаю всіх причетних, та й нас звісно) А ви будьте уважні, наступні тривоги не ігноруйте. Побачимося, почуємося :) Ваш зампомиш.
5.3K ·
V
Vitalii ZamPoMish
Харків, співчуваю. росії байдуже кого вбивати. Власне їй навіть на своїх глибоко байдуже. А з КАБами зараз можна боротися лише вибиваючи їх літаки. Робота ведеться але це займе час. Харків, тримайся(
4.3K ·
Vitalii ZamPoMish
Паршива нічка. Як раз приїхав проходити ВЛК і тут таке. В такі моменти шкодуєш що не служиш в ппо або не розробляєш далекобійну зброю. Співчуваю...
2.9K ·
V
Посилання
натисніть — покажемо
Там Доу просить допомогти, заповнити зарплатне опитування. Доу постійно проводить збори для ЗСУ тому давайте і ми їм трохи допоможемо. П. М. Трохи прогулявся по Києву - гарно, тихо. Наче все й добре. Тільки ціни на каву злетіли :'(
1 · 3.1K ·
Vitalii ZamPoMish
Часта помилка початківців з мережевими запитами - ігнорування процесу завантаження та відсутність обробки помилок. В чому суть. Поки ви розробляєте веб сторінку, у вас все добре. Сервер у вас десь поруч, не навантажений, всі запити проходять майже миттєво і завжди успішно. На проді ситуація геть інша. Ваш клієнт може бути в іншій країні, а сервер буде завантажений, або просто недоступний з різних причин. В результаті - користувач тицяє кнопку, а нічого не відбувається. За кулісами запит то пішов, але користувач про це не знає. І тицяє ще раз. А потім іще... Це погано, і на щастя зараз майже всі відображають індикацію завантаження. Але є але - часто забувають про обробку помилок. В результаті - користувач бачить вічний лоадер та заблокований UI. А перезавантажити сторінку - втратити форму яку користувач заповнював декільки хвилин. Або, якщо все зовсім погано, корзину яку він набирав... Щастя це не додає. Другий момент - загальний loader який блокує геть весь екран, хоча заблокувати потрібно, наприклад, лише кнопку submit, або якийсь конкретний віджет. Звісно, нам так простіше - але, заблоковано має бути лише мінімально необхідна частина UI. Це дозволить продовжити роботу зі сторінкою поки користувач чекає на результат. Тому, коли ви проектуєте щось з мережевими запитами - починайте з помилок. Замість fetch зробіть throw і подивіться як реагує ваш UI. І чи ок вам така реакція. Сповільніть інтернет через Google Developer Tools і вам одразу стане зрозуміло що не так.
10 · 3.5K ·
V
Що ви тут взагалі? Що нового в React? Що в NextJS? Як ринок - чи є робота? Бачив що з'явилися нові ШІ для розробки (типу Cursor) але сам ще спробувати не міг, обмеження і все таке. Як воно вам?
3.3K ·
V
Vitalii ZamPoMish
Фотографія
Окрім обробки завантаження та обробки помилок, не забувайте також відписуватися від асинхронних подій - таймаутів, таймерів, requestAnimationFrame та запитів на сервер. Зробити все це дуже просто - головне не забути про це :) Для відміни мережевого запиту потрібно: 1. В useEffect створити екземпляр класу AbortController 2. Передати властивість signal в поле signal методу fetch (Axios це також підтримує) 3. Повернути з useEffect метод, який викличе abort на екземплярі AbortController Все... Тепер, коли зміняться залежності ефекту, або коли компонент буде демонтовано, асинхронний запит буде відмінено. З setTimeout, setInterval, requestAnimationFrame ще простіше. Вони повертають спеціальний id і все що вам треба зробити - викликати clearInterval, clearTimeout, cancelAnimationFrame у функції, яку повертає useEffect. П.М. Планую зробити ефір в якому потоптатися по типових помилках в React. + Можливо зробити розіграш під благодійний збір на майстерню. Але поки це лише в планах. Бережіть себе.
18 · 5K ·
V
Vitalii ZamPoMish
Отака от несподівана новина @FwDays запросили мене виступати в жовтні на React+ конфі Було неочікувано та дуже приємно, вже навіть встигли обговорити з програмним комітетом можливу тему. Якщо вдасться все зробити - може бути прямо цікаво) Але я про що - оскільки тема ще в роботі, ви можете запропонувати свою - про яку вам було б цікаво послухати. Хто зна, можливо саме її ви і почуєте зі сцени FwDays :)
2 · 4.9K ·
V
Vitalii ZamPoMish
Отже про конфу. Тема звісно #React, 18 жовтня, Київ. Виступати будуть як мінімум Ілля Климов та Сергій Бабіч. Чи я буду - не знаю точно останнім часом було багато роботи, підготуватися просто не встигаю. Можливо буде альтернативний формат, побачимо. Хто хоче прийти: Промо-код на 10%: FRFB2510 Хто хоче виступити (тех комітет там чудовий) тиць сюди Бережіть себе, шахеди останнім часос геть озвіріли. Ну і скоро побачимось. Ваш зампомиш.
4 · 4.7K ·
V
Vitalii ZamPoMish
Посилання
натисніть — покажемо
Як покласти СlaudFlare на годину? Виявляється нічого складного - все що треба, допустити помилку в масиві залежностей хуку useEffect і ClaudFlare заддосить сам себе. Так що не сумуйте якщо у вас щось не виходить, всі помиляються. Головне не опускати руки) Дякую пану Євгену за посилання
15 · 5.7K ·
V
Vitalii ZamPoMish
Повернувся на два дні в Київ) помитися поголитися відпочити) В цілому все гаразд, роботи трохи є, але всі живі здорові, вже добре. З цікавого активно розширюють штат для перехоплювачів шахедів. Має бути норм. А так, продовжуємо служити. А ви як тут?
5.6K ·
V
Vitalii ZamPoMish
Сподіваюся всі живі. Схоже що це був рекордний наліт. Як бачите - путін не зацікавлений в мирі. Йому потрібна капітуляція України. А до чого призведе наша капітуляція ви можете побачити на прикладі Білорусі. І це ще в кращому випадку...
5.1K ·
V
Vitalii ZamPoMish
З новим Роком. Нехай це буде останній рік війни. А росія нехай отримує те на що заслужила. І якщо ми перетеопимо один одного, все буде добре. Усіх зі святами!
4.6K ·
V
Vitalii ZamPoMish
ВідповідьЗ новим Роком. Нехай це буде останній рік війни. А росія нехай отримує те на що заслужила. І якщо ми перетеопимо один одного, все буде добре. Усіх зі святами!
Київ, співчуваю. Сам сьогодні в цю ніч був на лукьянівці. Як на мене, найважча ніч за всі. Ринку на який я ходив 15 років немає, метро пошкоджене, навіть мак згорів( Але ми ще поборимось. Я щиро вірю що у нас ще є шанси відстояти свою незалежність. І хай що собі русня уявляє чи хоче, ми будемо самі собі господарями. Бережіть себе, все буде так, чи інакше. Побачимось в ефірі!
7 · 3.6K ·
V
Vitalii ZamPoMish
Всім привіт. Давно не бачилися, але до телеграму руки все ніяк не доходили. В лінкедині я ще періодично відписуюсь, а з телеграмом складніше. У мене все так само. Служба, служба, служба. Але дали відпустку так що я щасливий. А взагалі у нас багато цікавого, наприклад товариші долучились до зйомки ролика для сталкера) Або товариш збив молнію з 12 калібру. А чому вона там літала) Щодо реакту то давно ним не займався, для моїх задач це прямо оверкіл. В цілому достатньо чистого js або простіть мене пайтону. Взагалі з розробкою в ЗСУ стає краще. Багато підрозділів зрозуміли цей інструмент і всіляко залучають розробників за їх фахом. Не кругом, звісно, але явно більше ніж 2 роки назад. А як ваші справи? Що зараз з роботою? Як взагалі почуває себе розробка?
1 · 1.5K ·
V
Vitalii ZamPoMish
Думаю багатьом буде цікаво щось дізнатися про розробоку в ЗСУ Спробою розповісти трохи того що знаю. По-перше є загально військова розробка. Тобто розробка та підтримка систем які загально прийняті в ЗСУ Наприклад Дельта, вони навіть колись виступали на FWDays (23 рік здається). Там розробка схожа на звичайний продукт, зі спрінтами та ретро. Кажуть що ночують вдома, є вихідні, але головне що програмування це їх основна задача, на передок не ходять. Дельта звісно не єдина така система їх ще є декілька, то ж в теорії вибір є. По-друге, є локальний софт який використовується на рівні бригади або корпусу. Це те чого раніше не було. Зараз толкові бригади розібралися з тим що дає програмування і активно його застосовують для покращення собі життя. Це можуть бути складські програми, аналітичні або інші. Наскільки я бачив зазвичай це теж єдина задача, але вже не зовсім, можуть підкидати щось іще по фаху. + якщо це система яка так чи інакше пов'язана з керуванням то ти її і тестуєш і впроваджуєш. І нарешті є третій рівень коли розробка використовується для локальних задач. Наприклад певна автоматизація позиції (не повірите, банальне адміністрування живлення) допрацювання софта нрк чи бпла і так далі. Ось тут вже розробник працює в першу чергу за військовим фахом (звязківець приміром) а вже потім полегшує життя собі та побратимам автоматизацією. В цілому розробників стараються берегти наскільки я це бачу зараз. Іноді виїхати на позицію треба прямо старатися. Певно так не у всіх, але це те що я особисто бачив по підрозділах. Якось так. Якщо мене читає Дельта - вам привіт, колись я хотів у вас служити, але не склалося. Тим не менше ваша система реально крута. Потім ще розповім про БЗВП, як раз нещодавно знайомий проходив. Всім дякую, бережіть себе за можливості.
9 · 1.1K ·
V
Vitalii ZamPoMish
Як і обіцяв - про БЗВП по свіжих слідах (і заодно про процес). У знайомого злетіло бронювання і прийшла повістка. Він прийняв рішення мобілізовуватися і звернувся в декілька бригад за рекрутингом, і паралельно набрав мене. У людини є досвід з розробкою і ще деякі супутні моменти, то ж я пішов до командира і запропонував з ним поговорити. В сумі ми проговорили десь до 10 хвилин. Перше питання мотивація, друге готовність працювати, третє скіли. Після цього йому розповіли про підрозділ і запропонували посаду. Одразу скажу що не до мене, а по-сусідству, щоб не було конфліктів. Після цього був ще один дзвінок між ним та його майбутнім безпосереднім командиром. Він день подумав, поспілкувався з іншими частинами і прийняв рішення йти до нас. Далі ВЛК, підписання контракту (але не отримав* його, не робіть так), заїзд на пару днів в частину і відбуття на БЗВП. Оскільки ВЛК його визнало обмежено придатним (так дійсно буває коли ти йдеш на контракт сам) його відправили в окремий навчальний центр для "обмежено придатних". Для обмежено придатних БЗВП, по-перше, коротше - 30 днів замість 45, по-друге менші фізичні навантаження - без смуги перешкод, психофізичної полоси, бігу. Як він розповідав - вони ходили, а у кого взагалі були проблеми зі спиною то підвозили. В усьому іншому стандартне БЗВП - стрільби, медицина, щось про дрони, наряди і тривоги. Зі свого досвіду наряди та тривоги це найнеприємніше, але пережити можна, особливо в літній період. От в зимовий тривоги це велика проблема. Там банально холодно, навіть з буржуйками ну і спробуйте поспати 3 - 4 ночі уривками по 2-4 години. Задоволення таке собі. А варіантів немає, людей треба під час тривоги ховати. Ну і наряд по кухні лажа. Після місяця навчань він повернувся в частину і ще за тиждень вже був в своєму підрозділі. Ось якось так. * Що він зробив правильно: вибрав рекрутинг, продзвонив В/Ч, поспілкувався з командирами, вибрав контракт (за це ще й якісь додаткові виплати наче будуть) Що зробив не правил… Читати повністю →
7 · 834 ·
Vitalii ZamPoMish
Фотографія
Наїхали на міну. Хлопці живі, відбулися контузіями. А от бус постраждав сильніше. Проблема в тому що він повноприводний, з високим кліренсом та ще й в непоганому стані (був). Тож треба ремонтувати. А це тисяч 60 як мінімум, окрім всіх інших витрат. Тож дуже прошу долучитись до збору. Бус катається на бойових, по полях та болотах і дуже потрібен в справному стані. Буду вдячний за підтримку! https://send.monobank.ua/jar/96L3uRAPoq
3 · 604 ·
V

Відкрита публічна стрічка з пошукового індексу ChatCrawler — «Google по публічному Telegram»; оновлюється в міру обходу майданчика. Час — UTC.

Лише публічний контент, офіційний API Telegram. Про проєкт · Питання · Межі індексу · Прибрати сторінку з видачі · Каталог · Пошук · Як ми рахуємо