Yapay Zeka
awesome-trending-repos: Auto-Tracking GitHub Trending
Every day, hundreds of new projects appear on GitHub’s trending list. However, tracking these projects and determining which ones are truly important can be time-consuming. To solve this problem, I developed the awesome-trending-repos project.

Daily automated updates with GitHub Actions
What is the Project?
awesome-trending-repos is an automatically updated list that tracks projects from GitHub’s trending page daily. The project runs every day at midnight UTC, analyzes trending repos, and writes the results to the README.md file.
Key features:
- 🔄 Daily automatic updates
- 📊 Historical comparisons and ranking changes
- 📈 ASCII charts and trend visualizations
- 🏆 Fastest growing repositories (rising stars)
- 💾 7-day historical data storage
How Does It Work?
The project runs automatically using GitHub Actions. Every day at midnight (UTC), a workflow is triggered, scrapes the GitHub trending page, analyzes the data, and writes the results to the README.md file.
Data collection process:
- Scrape GitHub trending page (with Cheerio)
- Get additional data from GitHub Search API (as fallback)
- Categorize projects by programming language
- Compare with historical data
- Automatically update README.md

Automatic workflow management with CI/CD pipeline
Features
Daily Automation
It runs automatically every day using GitHub Actions. No manual operation required. The system pulls trending data every day at midnight UTC and updates README.md.
Historical Tracking
The project stores the last 7 days of data. This way you can see how a project’s position in the trending list has changed. It provides detailed information about new entries, rising projects, and declining ones.
Language-Based Ranking
It categorizes trending projects by programming language. You can track projects in popular languages like JavaScript, Python, TypeScript, Go, Rust separately.
Visualization
With ASCII charts, you can visually track the rise and fall of projects. You can see from the charts how many stars projects have received and how fast they’re growing.
Technical Details
The project is written in Node.js and uses ES Modules. It was automated with GitHub Actions and integrated with GitHub API using the Octokit library.
Technologies used:
- Node.js 20+
- GitHub Actions (cron-based scheduling)
- Octokit (GitHub API client)
- Cheerio (web scraping)
- Axios (HTTP requests)
Conclusion
With the awesome-trending-repos project, you can automatically track trending projects on GitHub. With the daily updated list, you won’t miss the newest and most popular projects.
The project creates a valuable resource both for personal use and for the developer community. It saves time through automation and makes tracking trends easier.
This article was submitted to DEV.to via DevTo-MCP.
Mastercard, sabitcoin girişimi BVNK'yi satın alacak
Anatomy of a RAG System Architecture
For deploying a RAG System Architecture, consider that in a production environment requirements may vary when choosing a vector database, amount of data to be ingested, models used for creating embeddings, and architecture design when choosing a cloud platform. A RAG system can be built from scratch or implemented using solutions that already have the necessary components.
Following best practices is also critical when designing the system, to avoid common issues like hallucinations, or data exposure. Also consider that the model can be changed through the time, and using layer architecture may be helpful for future changes or updates.
What is a RAG System?
Presenting false or inaccurate information when not knowing the response, using unvalidated sources, or giving outdated data are some of the challenges for LLMs. How to solve this, and improve the knowledge base? Retrieval-Augmented Generation Architecture (RAG) is the approach for solving this problem.
RAG uses some methods, and tools for acquiring knowledge from additional data sources. This information is then converted into a format that LLMs can understand, using different database technologies for saving this information, providing advanced search capabilities for data retrieval.
RAG System Architecture Components
Data Sources
RAG systems can have a variety of data sources from which to learn or acquire information. Those include but are not limited to:
- Documents in different formats (PDF, Word, TXT, Markdown)
- Images
- Audio or transcriptions
- Datasets (CSV, JSON)
- Application Programming Interfaces (APIs)
- Relational databases (SQL)
- NoSQL databases
- Wikis or knowledge base
- Web content
- Internal files
Data ingestion in a RAG system goes through a process where:
- Content is extracted from the data sources
- Divided into chunks
- Converted to embeddings
- Stored in a vector database
Embedding Model
An embedding model is a machine learning model used for transforming data sources into vectors. Also known as embeddings, and are a series of float values representing the meaning of the data source. The model determines not only how embeddings are created but also the size of the vector, and is mainly provided by LLMs.
For apps built with Python use Gemini or OpenAI models through their official SDKs:
- OpenAI Python AI library → github.com/openai/openai-python
- Google GenAI Python SDK → github.com/googleapis/python-genai
Another option is to use LangChain, a framework for building agents, and LLM-powered applications. Requests to those models are sent through this framework.
LLMs can also be executed locally without sending data to the cloud, and is possible by using Open Source tools like Ollama. Models are downloaded from its own catalog.
A similar library is Sentence Transformers. It has access to the Hugging Face catalog from which models are downloaded to use locally, generally via PyTorch, without having to create an API key.
Vector Database
In a vector database, information is stored in vectors, better known as embeddings, containing numerical values that represent the meaning of the stored data. Query results are determined by the values in the vectors, returning nearest vectors.
Having this text: "Open source software is transforming the technology ecosystem.”, when converting the value to an embedding, will look like this: [-0.007894928, 0.0010742444, -0.03274113, -0.066677086, 0.004894953, 0.013967406, 0.0068471087, 0.009695383, 0.020278132, 0.019470839].
Which vector database to use? Depends on the requirements of the project, experience using vector databases, or how the RAG system is being implemented. If the system is being built from the ground up, the best option is the one that serves the needs of the project, in terms of requirements, and budget. Choose solutions like RAGFlow that already provide all the necessary components to implement the system when time plays a key role.
A few options to consider when choosing a vector database:
- pgvector: An extension for PostgreSQL that adds the vector datatype, and search capabilities found in vector databases. The extension can be installed manually by compiling the source code from the official repository, or deployed via Docker or Kubernetes, as well as on cloud platforms that support PostgreSQL like Amazon Web Services (AWS), Google Cloud Platform (GCP) or Supabase.
- Pinecone: A vector database designed for scalability, and to be used in production. Run as a managed service in AWS, GCP, and Azure. Every request to Pinecone is sent through an API that routes it to a control plane or a data plane, for managing projects, and indexes; reading, and writing data respectively.
- Weaviate: An Open Source vector database. Can be configured via the Weaviate Cloud, using a cloud provider like GCP, to deploy an instance of the database. It uses an API key for authentication, and sending requests. Docker image is available for running locally.
- Elasticsearch: Distributed, and analytics search engine, scalable data store, vector database focused on speed, production-ready, and scalability support. RAGFlow component, used as its default vector database, while testing, and improving Infinity. Can be used in production environments through Elastic Cloud or configured manually in the cloud platform of choice. A Docker image is available to use it locally.
Challenges in RAG System Architecture Deployment
Ready to deploy the RAG system? Some challenges may be encountered when designing the architecture, and preparing the system to deploy in a production environment.
A few challenges to take into consideration:
- Hallucinations: Occur when a model in a RAG system answers with unexpected information due to poor prompt engineering, passing irrelevant chunks, or weak context selection. To fix it, use templates to tell the model how to answer when no information is found, validate periodically the data in the knowledge base to check for outdated or wrong information.
- Data Exposure & Prompt Injection: When adopting RAG systems, some security issues are expected to happen if the architecture has a poor design. These issues include exposing sensitive data or tricking the model to bypass the rules when receiving malicious prompts. A way to avoid it is by applying input/output sanitization, and setting up guardrails.
Best Practices for RAG Deployment
Data Exposure & Prompt Injection: When adopting RAG systems, some security issues are expected to happen if the architecture has a poor design. These issues include exposing sensitive data or tricking the model to bypass the rules when receiving malicious prompts. A way to avoid it is by applying input/output sanitization, and setting up guardrails.
- Decouple the Retrieval layer from the Generation layer: Following a layer approach when designing the system could help reduce hallucinations, maintain the information updated, and upgrades can be applied independently. The Retrieval layer is when data ingestion, embedding conversion, chunk division, and information storing happen, as well as query conversion into vectors for semantic search. While the Generation layer is where the retrieved information, and the original prompt are taken to produce a human-like response.
- Embedding model replaceability: To prevent vendor lock-in, and allow upgrades to better models, design the system to enable embedding model replacement without having to make critical changes or having to rewrite the implementation. How to get it? Create a wrapper function to change between models, use a framework like LangChain instead of using individual SDKs, create metadata with model ID, and version, separate ingestion from retrieval, create a dataset for benchmarking that is constantly evaluated to determine when to change the model, and normalize data before embedding.
Conclusion
Each component in a RAG system architecture is key for the system to work, and provides better answers by improving the knowledge base, but depending on the requirements, and budget of the project, embedding models, vector databases, and cloud platforms are chosen. Already familiar with PostgreSQL? Choose pgvector, otherwise evaluate other solutions. Planning to build the system from scratch? Consider using Python for implementing the system, as there are frameworks, and libraries available for this language. And don’t forget to follow the recommendations.
Türkiye, tüm askeri ürünlerde transit geçişleri sıkılaştırdı
Türkiye, Türkiye üzerinden yabancı bir ülkeye sevk edilecek tüm askeri nitelikli ürünlerin transit geçişine yeni kontroller ekledi. Resmi Gazete’de yayımlanan düzenleme yürürlüğe girdi.Bakan Kacır, AK Parti İstanbul İş Dünyası İftarı'nda konuştu Açıklaması
awesome-trending-repos: GitHub Trending’i Otomatik Takip Etme
GitHub’ta her gün yüzlerce yeni proje trending listesine giriyor. Ancak bu projeleri takip etmek, hangilerinin gerçekten önemli olduğunu belirlemek zaman alıcı bir iş. Bu sorunu çözmek için awesome-trending-repos projesini geliştirdim.

GitHub Actions ile otomatik günlük güncellemeler
Proje Nedir?
awesome-trending-repos, GitHub’ın trending sayfasındaki projeleri otomatik olarak takip eden, günlük olarak güncellenen bir liste. Proje her gün gece yarısı UTC’de çalışıyor ve trending reposu analiz edip sonuçları README.md dosyasına yazıyor.
Temel özellikler:
- 🔄 Günlük otomatik güncellemeler
- 📊 Geçmiş karşılaştırmaları ve sıralama değişiklikleri
- 📈 ASCII grafikleri ve trend görselleştirmeleri
- 🏆 En hızlı büyüyen repolar (rising stars)
- 💾 7 günlük geçmiş veri saklama
Nasıl Çalışır?
Proje, GitHub Actions kullanarak otomatik olarak çalışıyor. Her gün gece yarısı (UTC) bir workflow tetikleniyor, GitHub trending sayfasını scrape ediyor, verileri analiz ediyor ve sonuçları README.md dosyasına yazıyor.
Veri toplama süreci:
- GitHub trending sayfasını scrape etme (Cheerio ile)
- GitHub Search API’den ek veri alma (fallback olarak)
- Projeleri dil kategorilerine göre ayırma
- Geçmiş verilerle karşılaştırma yapma
- README.md’yi otomatik güncelleme

CI/CD pipeline ile otomatik workflow yönetimi
Özellikler
Günlük Otomasyon
GitHub Actions ile her gün otomatik olarak çalışıyor. Manuel hiçbir işlem gerektirmiyor. Sistem her gün gece yarısı UTC’de trending verilerini çekip README.md’yi güncelliyor.
Geçmiş Takibi
Proje, son 7 günün verilerini saklıyor. Bu sayede bir projenin trending listesindeki konumu nasıl değişmiş görebiliyorsunuz. Yeni giren projeler, yükselenler ve düşenler hakkında detaylı bilgi veriliyor.
Dil Bazlı Sıralama
Trending projeleri programlama diline göre kategorize ediyor. JavaScript, Python, TypeScript, Go, Rust gibi popüler dillerdeki projeleri ayrı ayrı takip edebiliyorsunuz.
Görselleştirme
ASCII grafikleri ile projelerin yükselişini ve düşüşünü görsel olarak takip edebiliyorsunuz. Hangi projelerin kaç yıldız aldığını, hangi hızla büyüdüklerini grafiklerden görebiliyorsunuz.
Teknik Detaylar
Proje Node.js ile yazıldı ve ES Modules kullanıyor. GitHub Actions ile otomatikleştirildi ve Octokit library’i ile GitHub API’ye entegre edildi.
Kullanılan teknolojiler:
- Node.js 20+
- GitHub Actions (cron tabanlı scheduling)
- Octokit (GitHub API client)
- Cheerio (web scraping)
- Axios (HTTP requests)
Sonuç
awesome-trending-repos projesi ile GitHub’taki trending projeleri otomatik olarak takip edebiliyorsunuz. Her gün güncellenen liste ile en yeni ve en popüler projeleri kaçırmıyorsunuz.
Proje hem kişisel kullanım için hem de developer community’si için değerli bir kaynak oluşturuyor. Otomasyon sayesinde zaman kazandırıyor ve trendleri takip etmeyi kolaylaştırıyor.
Bu yazı DevTo-MCP aracılığıyla DEV.to’ya gönderilmiştir.
Elektrikli araç MTV ve ÖTV vergileri 2026 – Elektrikli araçlarda MTV ve ÖTV nasıl hesaplanır?
Nvidia yeni nesil yapay zeka için küresel ölçekte koalisyon kurdu
NVIDIA, sekiz lider AI laboratuvarını bir araya getirerek açık kaynak öncü modelleri geliştirmek üzere Nemotron Koalisyonu’nu kurarak Nemotron 4’ün temelini atıyor.Veri işleme darboğazı tarihe karışıyor: GPU ile 30 kat performans artışı
Teknoloji devleri IBM ve Nvidia, GPU destekli çözümleriyle kurumsal yapay zekada devrim yaratıyor. Nestle testiyle 30 kat hız ve %83 maliyet tasarrufu sağlandığı gösterildi.