Skip to content

feat(devto): add devto adapter#234

Merged
jackwener merged 2 commits intojackwener:mainfrom
vkop007:feat/devto-adapter
Mar 22, 2026
Merged

feat(devto): add devto adapter#234
jackwener merged 2 commits intojackwener:mainfrom
vkop007:feat/devto-adapter

Conversation

@vkop007
Copy link
Copy Markdown
Contributor

@vkop007 vkop007 commented Mar 22, 2026

Description

This PR introduces the new DEV.to adapter to OpenCLI. It leverages the official, free DEV.to public API (/api/articles) to lightning-fast stream high-quality developer articles directly into the terminal without requiring a browser session or API keys.

Commands Added (opencli devto):

  • top - Fetch the top developer articles of the day globally (e.g., opencli devto top --limit 5).
  • tag - Fetch the latest articles filtered by a specific technology tag (e.g., opencli devto tag --tag javascript).
  • user - Fetch recent stories authored by a specific DEV.to user (e.g., opencli devto user --username ben).

Note: Fully documented and integrated into the VitePress website and project READMEs!

Related issue: N/A

Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • 🌐 New site adapter
  • 📝 Documentation
  • ♻️ Refactor
  • 🔧 CI / build / tooling

Checklist

  • I ran the checks relevant to this PR
  • I updated tests or docs if needed
  • I included output or screenshots when useful

Documentation (if adding/modifying an adapter)

  • Added doc page under docs/adapters/
  • Updated docs/adapters/index.md table
  • Updated sidebar in docs/.vitepress/config.mts

Screenshots / Output

$ opencli devto top --limit 3
  devto/top
┌─────────────────────────────────────────────────────────────────────────┬─────────────────┬───────────┬──────────┬─────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Title                                                                   │ Author          │ Reactions │ Comments │ Url                                                                                                 │
├─────────────────────────────────────────────────────────────────────────┼─────────────────┼───────────┼──────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Tailscale Deep Dive: Why Developers Are Ditching Traditional VPNs       │ soytuber        │ 3         │ 0        │ https://dev.to/soytuber/tailscale-deep-dive-why-developers-are-ditching-traditional-vpns-413h       │
├─────────────────────────────────────────────────────────────────────────┼─────────────────┼───────────┼──────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Adding Stripe Checkout to a Solo SaaS: Lessons from PatentLLM's $1K/mo… │ soytuber        │ 2         │ 0        │ https://dev.to/soytuber/adding-stripe-checkout-to-a-solo-saas-lessons-from-patentllms-1kmo-plan-1c4d│
├─────────────────────────────────────────────────────────────────────────┼─────────────────┼───────────┼──────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Sending a Million Rows from the Backend: Streaming, Batching, Compress… │ ishaaan         │ 2         │ 1        │ https://dev.to/ishaaan/sending-a-million-rows-from-the-backend-streaming-batching-compression-pro…  │
└─────────────────────────────────────────────────────────────────────────┴─────────────────┴───────────┴──────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────┘
3 items · devto/top

vkop007 and others added 2 commits March 22, 2026 09:55
- Make tag/username args positional for natural CLI usage:
  opencli devto tag javascript (instead of --tag javascript)
  opencli devto user ben (instead of --username ben)
- Add rank field (index + 1) matching hackernews/lobsters pattern
- Add tags field from tag_list for richer output
- Remove redundant author column from user command (already filtering by user)
- Use type: str (project convention) instead of type: string
- Increase default limit from 10 to 20 (matching other adapters)
- Update docs with positional arg examples
@jackwener jackwener merged commit ea113a6 into jackwener:main Mar 22, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants