نحوه استفاده از اکشنهای GitHub برای نمایش پستهای وبلاگ Dev.to در README.md

در این آموزش، نحوه استفاده از GitHub Actions برای به روز رسانی خودکار مخزن GitHub خود را خواهید آموخت. README.md
با آخرین پست های وبلاگ از فید Dev.to خود فایل کنید. این اتوماسیون به نمایش نوشته های اخیر شما به طور مستقیم در نمایه یا صفحه پروژه GitHub شما کمک می کند و آن را به صورت پویا به روز نگه می دارد.
نمایش نسخه ی نمایشی
پیش نیازها
- یک حساب GitHub
- یک حساب Dev.to و یک وبلاگ فعال با فید RSS
- دانش اولیه Git و GitHub
مرحله 1: URL Dev.to Feed خود را شناسایی کنید
URL فید RSS وبلاگ Dev.to شما معمولاً در قالب است https://dev.to/feed/username
. جایگزین کردن username
با نام کاربری Dev.to خودتان.
مرحله 2: مخزن GitHub خود را راه اندازی کنید
اگر قبلاً این کار را نکرده اید، یک مخزن جدید ایجاد کنید یا یک مخزن موجود را انتخاب کنید که می خواهید پست های وبلاگ خود را در آن نمایش دهید.
مرحله 3: یک گردش کار GitHub Actions ایجاد کنید
- به مخزن خود بروید در GitHub.
- کلیک کنید روی اقدامات برگه، سپس انتخاب کنید گردش کار جدید.
- با انتخاب از ابتدا شروع کنید “خودتان یک گردش کار تنظیم کنید”.
محتوای فایل گردش کار را با موارد زیر جایگزین کنید:
name: Update README with Latest Blog Posts
# Controls when the action will run.
on:
schedule:
- cron: '0 * * * *' # Runs every hour, can be adjusted to your preference
push:
branches:
- main # Runs on pushes to the main branch; adjust if your default branch has a different name
jobs:
update-readme:
runs-on: ubuntu-latest # The type of runner that the job will run on
steps:
- name: Checkout Repository
uses: actions/checkout@v3 # Checks out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18' # Sets up a specific version of Node.js
- name: Install dependencies
run: |
npm install rss-parser # Installs the rss-parser package to parse the RSS feed
- name: Run script to update README
run: node .github/scripts/update-readme.js # Executes a Node.js script to update README.md
- name: Commit changes
run: |
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git add README.md
git commit -m "Update README with latest blog posts" -a || echo "No changes to commit"
git push
مرحله 4: اسکریپت Node.js را ایجاد کنید
- در مخزن خود یک دایرکتوری جدید به نام ایجاد کنید
.github/scripts
. - در داخل این دایرکتوری، یک فایل به نام ایجاد کنید
update-readme.js
. - اسکریپت Node.js زیر را به این فایل اضافه کنید:
const fs = require('fs');
const Parser = require('rss-parser');
const parser = new Parser();
(async () => {
const feed = await parser.parseURL('https://dev.to/feed/yourusername'); // Your Dev.to feed
let readmeContent = fs.readFileSync('README.md', 'utf8');
let newBlogContent = '';
feed.items.slice(0, 5).forEach(item => {
const formattedDate = new Date(item.pubDate).toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' });
newBlogContent += `### [${item.title}](${item.link})\n`;
newBlogContent += `📅 ${formattedDate}\n\n`; // Adds formatted date with a calendar emoji
});
const newReadme = readmeContent.replace(/.*/s, `\n${newBlogContent}`);
fs.writeFileSync('README.md', newReadme);
})();
مرحله 5: README.md خود را بهروزرسانی کنید تا Placeholders را نیز در بر گیرد
در شما README.md
، مکانهای زیر را در جایی که میخواهید پستهای وبلاگ نشان داده شوند را شامل کنید:
نتیجه
اکنون، هر بار که GitHub Action اجرا میشود، آخرین پستهای وبلاگ را از فید Dev.to شما دریافت میکند، شما را بهروزرسانی میکند. README.md
بر این اساس، و تغییرات را انجام دهید. این اتوماسیون نمایه GitHub شما را با تازه نگه داشتن و جذاب نگه داشتن آن برای بازدیدکنندگان بهبود می بخشد و آخرین نوشته شما را بدون به روز رسانی دستی به نمایش می گذارد.