آموزش روبی آن ریلز 8 و هات‌وایر: ساخت یک مدیریت‌کننده رمز عبور - آخرین آپدیت

دانلود Ruby on Rails 8 and Hotwire : Build a Password Manager

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

ساخت یک اپلیکیشن وب مدرن Full-stack Ruby on Rails با یک API JSON امن و یک افزونه Google Chrome

یاد بگیرید چگونه یک اپلیکیشن Rails با یک کد واحد بسازید که UI وب را با APIهای JSON امن برای یک افزونه Chrome ترکیب می‌کند.

آنچه یاد خواهید گرفت:

  • چگونه یک افزونه Google Chrome بسازید که یک API JSON را از یک اپلیکیشن Ruby on Rails مصرف می‌کند.
  • چگونه یک API JSON امن با احراز هویت JWT ایجاد کنید.
  • چگونه از Hotwire برای ایجاد یک Single Page Application (SPA) استفاده کنید که با هر فریمورک مدرن Javascript رقابت می‌کند.
  • چگونه از Howire (Turbo و Stimulus) خارج از یک اپلیکیشن Ruby on Rails استفاده کنید.
  • چگونه از API افزونه Google Chrome برای نمایش داده‌ها بر اساس وب‌سایت فعلی استفاده کنید و داده‌های فرم را با کلیک یک دکمه پر کنید.
  • بهترین روش‌های Ruby on Rails

پیش نیازها:

  • HTML، CSS و Javascript پایه
  • تجربه پایه Ruby و Ruby on Rails

در این دوره، ما قصد داریم یک مدیریت رمز عبور را با الهام از برنامه‌های محبوب مانند 1Password و LastPass بسازیم. اپلیکیشن ما به کاربران این امکان را می‌دهد که حساب‌های امن ایجاد کنند و به آنها اجازه می‌دهد اعتبار ورود به سیستم برای وب‌سایت‌های مورد علاقه خود را ذخیره کنند. این اعتبارنامه‌ها به راحتی از طریق یک افزونه Chrome، که توسط یک API JSON امن و قوی از backend Rails ما پشتیبانی می‌شود، در دسترس خواهند بود.

ما با ایجاد یک اپلیکیشن وب Ruby on Rails 8, Full-stack شروع خواهیم کرد. با استفاده از قدرت Hotwire، یک Single Page Application (SPA) با سرعت بالا ایجاد خواهیم کرد. ما همچنین از ابزارهای پیشرفته Rails 8 مانند Active Record Encryption استفاده خواهیم کرد، و اطمینان حاصل می‌کنیم که اطلاعات حساس کاربران مانند نام کاربری و رمز عبور به طور ایمن رمزگذاری شده و با خیال راحت در پایگاه داده ما ذخیره می‌شوند.

در مرحله بعد، در حالی که در همان اپلیکیشن وب Ruby on Rails 8 کار می‌کنیم، شروع به ساخت یک API JSON امن خواهیم کرد و احراز هویت کاربر را با استفاده از JSON Web Tokens (JWT) پیاده‌سازی می‌کنیم. کاربرانی که با موفقیت احراز هویت شوند، یک توکن منقضی شده دریافت می‌کنند تا داده‌های خود را از طریق درخواست‌های بعدی به طور ایمن واکشی کنند.

در نهایت، ما از Google Chrome Extension API و Hotwire (بله، می‌توانید از Hotwire خارج از Rails استفاده کنید!) برای ساخت نسخه‌ای مشابه از اپلیکیشن وب خود به عنوان یک افزونه Chrome استفاده خواهیم کرد. ما موضوعات اساسی مانند استفاده از ذخیره‌سازی محلی، برقراری ارتباط بین Popup و Content Script، بازیابی URLها از تب‌های فعال و پر کردن خودکار فرم‌های ورود به سیستم با یک کلیک را پوشش خواهیم داد.

تغییرات:
- 17 جولای 2025 (بخش 1 - درس 3): 
به‌روزرسانی فایل zip SafePassExtension با دارایی‌های از دست رفته.


سرفصل ها و درس ها

Introduction

  • مهم. لطفاً تماشا کنید. Important. Please Watch.

  • چه چیزی قرار است بسازیم What We're Going to Build

  • کد منبع Source Code

  • تنظیمات توسعه Development Setup

ایجاد برنامه Ruby on Rails ما Creating our Ruby on Rails Application

  • اجرای Rails New و راه‌اندازی سرور ما Running Rails New and Starting our Server

  • کنترلر صفحات، مسیریابی و نماها Pages Controller, Routing and Views

  • نما - بخش Navbar و لینک‌ها View - Navbar Partial and Links

احراز هویت Authentication

  • نصب Gem Devise Install Devise Gem

  • نماها - استایل‌دهی به فرم‌های Devise Views - Style Devise Forms

  • نما - متد Logo Helper View - Logo Helper Method

  • Stimulus - پیام Flash و مقداردهی اولیه Form Error Stimulus - Flash Message and Form Error Initializer

  • ایجاد یک کاربر و بررسی یک نشست Create a User and Check for a Session

  • استایل‌دهی به صفحه حساب کاربری Style Account Page

ایجاد منبع ورودی ما Creating our Entry Resource

  • مدل Entry Entry Model

  • مسیردهی Entry Entry Routing

  • کنترلر و نما - اکشن New Controller and View - New Action

  • نما - فرم ورودی جدید View - New Entry Form

  • کنترلر - اکشن Create Controller - Create Action

  • مدل - اعتبارسنجی‌های دیتابیس Entry Model - Entry Database Validations

  • مدل - رمزنگاری Active Record Model - Active Record Encryption

  • نما - اکشن Index برای تمام ورودی‌ها View - Index Action for all Entries

  • نما و کنترلر - اکشن Show برای یک ورودی واحد View and Controller - Show Action for a Single Entry

Hotwire - تبدیل به یک برنامه تک صفحه‌ای (SPA) Hotwire - Converting to a Single Page Application (SPA)

  • معرفی بخش Section Intro

  • نما - آماده‌سازی Index برای SPA View - Prepare Index for SPA

  • نما - نوار کناری داشبورد View - Dashboard Sidebar

  • نما - داشبورد اصلی View - Dashboard Main

  • Turbo Frames - نمایش یک ورودی واحد در داشبورد اصلی Turbo Frames - View Single Entry in Main Dashboard

  • Turbo Frames - رندر کردن فرم ورودی جدید در Turbo Frame Turbo Frames - Render New Entry form in Turbo Frame

  • Turbo Streams - اکشن Create و به‌روزرسانی‌های View Turbo Streams - Create Action and View Updates

  • Turbo Streams - رفع پیام‌های Flash Turbo Streams - Fix Flash Messages

  • Turbo Streams - حذف ورودی Turbo Streams - Delete Entry

  • پایگاه داده - Entry Seeds Database - Entry Seeds

  • Turbo Frames - UI ویرایش درون خطی قسمت ۱ Turbo Frames - Inline Edit UI Pt. 1

  • Turbo Frames - UI ویرایش درون خطی قسمت ۲ Turbo Frames - Inline Edit UI Pt. 2

  • Turbo Streams - اکشن Update ویرایش درون خطی Turbo Streams - Inline Edit Update Action

Hotwire بیشتر - Turbo و Stimulus JS More Hotwire - Turbo and Stimulus JS

  • مدل - جستجوی Entry Model - Entry Search

  • Turbo Streams - بارگذاری خودکار داشبورد اصلی پس از یک نتیجه جستجوی واحد Turbo Streams - Auto Load Main Dashboard on Single Search Result

  • Stimulus - پاک کردن نتایج جستجو Stimulus - Clear Search Results

  • Stimulus - کپی به Clipboard Stimulus - Copy to Clipboard

  • Stimulus - تغییر دید رمز عبور Stimulus - Toggle Password Visibility

API امن JSON با JWT Secure JSON API With JWT

  • کنترلر - API ورودی‌های JSON Controller - Entries JSON API

  • کنترلر - کنترلر پایه API Controller - API Base Controller

  • کنترلر - احراز هویت API Controller - API Authentication

  • JWT - رمزگذاری و رمزگشایی توکن JWT - Encode and Decode Token

  • JWT - رمزگشایی و اعتبارسنجی توکن‌ها JWT - Decoding & Validating Tokens

  • JWT - مدیریت استثنائات JWT - Exception Handling

افزونه Chrome - معرفی SafePass Chrom Extension - SafePass Intro

  • معرفی بخش Section Intro

  • قالب اولیه Starter Template

  • تنظیم و آپلود به Chrome Setup and Upload to Chrome

  • فرم‌های ورود و ورودی‌های پایه Base Sign in and Entries Frames

افزونه Chrome - احراز هویت Chrome Extension - Authentication

  • Frame - فرم ورود Frame - Sign In Form

  • Stimulus - کنترلر Auth Stimulus - Auth Controller

  • سرویس Storage - setSessionStorage و getSessionStrorage Storage Service - setSessionStorage and getSessionStrorage

  • Stimulus - خروج و Navbar Stimulus - Sign out and Navbar

افزونه Chrome - ورودی‌ها Chrome Extension - Entries

  • Stimulus - کنترلر ورودی‌ها Stimulus - Entries Controller

  • سرویس - Fetch Entries Service - Fetch Entries

  • نما - الگوهای ورودی View - Entries Templates

  • Stimulus - جستجوی ورودی‌ها Stimulus - Entries Search

  • Stimulus - کپی به Clipboard Stimulus - Copy to Clipboard

  • Stimulus - Toggle Password Stimulus - Toggle Password

افزونه Chrome - ویژگی‌های پیشرفته Chrome Extension - Advanced Features

  • رفتن به URL ورود به سیستم Entry Navigate to Entry Sign In URL

  • بارگذاری خودکار ورودی از URL activeTab Auto Load Entry from activeTab URL

  • sendMessage - ارسال اعتبارنامه‌ها به contentScript sendMessage - Send credentials to contentScript

  • onMessage Listener - گوش دادن به پیام و پر کردن اعتبارنامه‌ها onMessage Listener - Listen for Message and Fill in Credentials

  • تابع Utility - انتخاب‌کننده‌های ورودی Utility Function - Input Selectors

استقرار Deployment

  • استقرار در Heroku Deploy to Heroku

  • استقرار در Fly.io Deploy to Fly.io

  • استقرار در Render Deploy to Render

  • استقرار در Chrome Web Store Deploy to Chrome Web Store

نمایش نظرات

آموزش روبی آن ریلز 8 و هات‌وایر: ساخت یک مدیریت‌کننده رمز عبور
جزییات دوره
7.5 hours
69
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
388
4.7 از 5
دارد
دارد
دارد
Nick McNeany
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar