Oğuz Rahmet Şevik

Merhaba, ben Oğuz

Web geliştirme ve yazılım üzerine projeler & yazılar paylaşıyorum.

Projelerime Göz At

Projeler

Taş Kağıt Makas Oyunu

Taş-Kağıt-Makas oyunu.

HTML CSS JavaScript

YouTube Video Downloader

Basit ve işlevsel bir YouTube video indirme aracı. Kullanıcı dostu arayüzüyle video bağlantısını yapıştır, indir!

HTML CSS JavaScript API

Hava Durumu Uygulaması

Canlı hava durumu bilgilerini gösteren basit ve şık bir uygulama.

HTML CSS JavaScript API

Blog

JavaScript ile API Kullanımı ve Entegrasyonu

Bu yazıda bir API’den veri çekme ve web uygulamana entegre etme sürecini anlatıyorum. Örnek olarak hava durumu API’sini kullandım:

  • API endpoint’ine fetch() ile istek göndermek
  • Gelen JSON verisini işlemek ve HTML’de göstermek
  • Hata kontrolü ve kullanıcı dostu mesajlar eklemek

fetch('https://api.openweathermap.org/data/2.5/weather?q=Istanbul&appid=YOUR_API_KEY&units=metric')
  .then(response => response.json())
  .then(data => {
    document.getElementById('temp').textContent = data.main.temp + '°C';
    document.getElementById('desc').textContent = data.weather[0].description;
  })
  .catch(error => console.error('API hatası:', error));
  

YouTube Video Downloader Projesi

Bu projede bir YouTube video indirme aracı geliştirdim. Kullanıcı, video linkini giriyor ve seçtiği formata göre indirme başlıyor. Backend Python & Flask ile çalışıyor, frontend ise JS ile indirme durumunu takip ediyor.

Kod Örneği (Backend - Flask + yt_dlp):


def download_worker(url, format_type):
    ydl_opts = {"outtmpl": "downloads/%(title)s.%(ext)s",
                "progress_hooks": [progress_hook],
                "noplaylist": True}
    if format_type == "mp3":
        ydl_opts["postprocessors"] = [{"key": "FFmpegExtractAudio", "preferredcodec": "mp3"}]

    with yt_dlp.YoutubeDL(ydl_opts) as ydl:
        ydl.download([url])
  

Frontend ise sürekli backend’e /progress isteği göndererek ilerlemeyi gösteriyor ve indirme tamamlanınca dosya kullanıcıya sunuluyor.

Hakkımda

BMerhaba, ben Oğuz. Web ve yazılım geliştirme projeleri üzerinde çalışıyor, öğrendiklerimi paylaşarak kendimi geliştiriyorum..

İletişim

Bana ulaşmak için: oguzsevik00@gmail.com