Skip to content

📝 Yazılımcılar için projelerini ekleyip sıralayabileceğin, yetenek ve deneyimlerini ekleyerek profesyonel CV oluşturup PDF olarak indirebileceğin bir platform!

Notifications You must be signed in to change notification settings

furkancan07/portfoliom.xyz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PortfolioM - Profesyonel Portfolyo Yönetim Platformu

PortfolioM Logo

"Yeteneklerinizi Gösterin, Projelerinizi Paylaşın, CV’nizi Oluşturun!

🌟 Genel Bakış

PortfolioM, yazılımcıların projelerini kolayca kategorilere ayırarak sergileyebileceği, deneyimlerini paylaşabileceği ve profesyonel bağlantılar kurabileceği kapsamlı bir platformdur.Projelerinizi sürükle-bırak yöntemiyle hızlıca güncelleyebilmenizdir. Ayrıca, projelerinizi etiketleyip, teknoloji yığınlarıyla birlikte tanıtarak daha geniş kitlelere ulaştırabilirsiniz. Platform, yazılımcıların portföylerini oluşturmak, yeteneklerini sergilemek ve CV'lerini dinamik olarak oluşturmak için mükemmel bir araçtır. Ayrıca, profesyonel ağınızı genişletmek için projeleriniz hakkında geri bildirim alabilir ve diğer yazılımcılarla işbirlikleri yapabilirsiniz.

🌐 Canlı Demo

Canlı Demo üzerinden PortfolioM'u keşfedin.

✨ Temel Özellikler

🎯 Profesyonel Profil Yönetimi

  • Özelleştirilebilir profil sayfaları
  • Yetenek görselleştirme
  • Deneyim zaman çizelgesi
  • Dinamik CV oluşturma
  • Profesyonel iletişim yönetimi

📂 Proje Vitrini

  • Çoklu görsel proje sunumu
  • Teknoloji yığını etiketleme
  • Proje kategorilendirme
  • İnteraktif proje galerileri
  • Canlı proje bağlantıları

🎨 Modern Kullanıcı Arayüzü

  • Açık/Koyu tema desteği
  • Duyarlı tasarım
  • Sezgisel gezinme
  • Akıcı animasyonlar
  • Profesyonel estetik

🤝 Topluluk Özellikleri

  • Kullanıcı arama işlevi
  • Proje yorumları (gelecek)
  • Profesyonel ağ oluşturma (gelecek)
  • Yetenek onayları (gelecek)
  • Proje işbirliği (gelecek)

🎉 Neden PortfolioM?

  • Profesyonel Görünüm: Öne çıkan etkileyici bir dijital portfolyo oluşturun
  • Kolay Yönetim: Profesyonel içeriğinizi yönetmek için sezgisel arayüz
  • Modern Teknoloji: En son web teknolojileriyle inşa edilmiş

📸 Ekran Görüntüleri

1. Anasayfa Profil

Anasayfa Profil
Anasayfa Profil

2. Projeler - Proje Ekle

🔄 Sürükle-Bırak İle Projelerini Göster

Proje listenizi dilediğiniz gibi özelleştirin! 🖱️ Projelerinizi sürükle-bırak yöntemiyle kolayca güncelleyebilir ve düzenleyebilirsiniz. 🚀 Projelerinizi kategorilere ayırarak diğer kullanıcılarla paylaşabilir, yeteneklerinizi en iyi şekilde sergileyebilirsiniz. 💼 Hangi projeyi daha önce göstermek isterseniz, o projeyi en üst sıraya taşıyın! ✨

Projeler - Proje Ekle

3. CV Oluştur

CV Oluştur
CV Oluştur

4. Profil Sayfası

CV Oluştur

5. Profil Düzenle

Profil Düzenle
Profil Düzenle

6. Giriş Ekranı

Giriş Ekranı

7. Proje Ekle

Giriş Ekranı

8. Cloud Mimarisi

Giriş Ekranı

🔒 Güvenlik Özellikleri

  • JWT tabanlı kimlik doğrulama
  • Rol tabanlı erişim kontrolü
  • Güvenli dosya yüklemeleri
  • Korumalı API uç noktaları
  • Cross-Origin Resource Sharing
  • OAuth2 entegrasyonu

💼 Kimler İçin İdeal?

  • Yazılım Geliştiriciler

📚 API Dokümantasyonu

PortfolioM, kapsamlı bir RESTful API sunmaktadır. API dokümantasyonuna Swagger UI üzerinden erişebilirsiniz.

🔗 API Endpoint Grupları

🔐 Kimlik Doğrulama (Auth)

  • POST /api/v1/auth/login - Kullanıcı girişi
  • POST /api/v1/auth/register - Yeni kullanıcı kaydı

👤 Kullanıcı İşlemleri (User)

  • GET /api/v1/users/{username} - Kullanıcı bilgilerini getirme
  • PUT /api/v1/users/update - Kullanıcı bilgilerini güncelleme
  • PATCH /api/v1/users/upload-photo - Profil fotoğrafı yükleme
  • PATCH /api/v1/users/upload-cv - CV yükleme
  • PATCH /api/v1/users/add-skill - Yetenek ekleme
  • PATCH /api/v1/users/add-contact - İletişim bilgisi ekleme

📂 Proje Yönetimi (Project)

  • GET /api/v1/projects/user/{userId} - Kullanıcının projelerini getirme
  • POST /api/v1/projects/create - Yeni proje oluşturma
  • PUT /api/v1/projects/{id} - Proje güncelleme
  • DELETE /api/v1/projects/{id} - Proje silme
  • PUT /api/v1/projects/reorder - Proje sıralamasını güncelleme

💬 Yorum Yönetimi (Comment)

  • POST /api/v1/comments/{projectId} - Projeye yorum ekleme
  • PUT /api/v1/comments/{id} - Yorum güncelleme
  • DELETE /api/v1/comments/{id} - Yorum silme
  • GET /api/v1/comments/project/{id} - Projenin yorumlarını getirme

📈 Deneyim Yönetimi (Experience)

  • GET /api/v1/experiences/{username} - Kullanıcının deneyimlerini getirme
  • PUT /api/v1/experiences/{id} - Deneyim güncelleme
  • DELETE /api/v1/experiences/{id} - Deneyim silme

🔒 API Güvenliği

  • JWT tabanlı kimlik doğrulama
  • Role-based yetkilendirme (USER, ADMIN)
  • Güvenli dosya yükleme işlemleri
  • CORS yapılandırması
  • Rate limiting

📡 API Özellikleri

  • RESTful mimari
  • JSON veri formatı
  • HTTP durum kodları
  • İstek/yanıt doğrulama
  • Hata yönetimi
  • Sayfalama ve sıralama desteği

Detaylı API dokümantasyonu için Swagger UI sayfamızı ziyaret edin.

🌥️ Kullanılan Teknolojiler ve Dağıtım

Backend Core

  • Java 17
  • Spring Boot 3.3.5
  • Maven

Veritabanı & Cache

  • PostgreSQL
  • Redis (Upstash)
  • JPA/Hibernate

Güvenlik

  • Spring Security
  • JWT (JSON Web Token)
  • OAuth2 Client

Cloud Servisler

  • Cloudinary (Dosya Depolama)

API & Dokümantasyon

  • RESTful API
  • OpenAPI/Swagger

Performans & Ölçeklendirme

  • Bucket4j (Rate Limiting)
  • Redis Cache

Dağıtım ve Barındırma:
PortfolioM, modern teknolojilerle inşa edilmiştir. Proje, Cloudinary ile dosya yönetimi ve Render üzerinden Dockerize edilerek deploy edilmiştir. Backend, Supabase üzerinde PostgreSQL veritabanıyla barındırılmakta,Redis upstash üzerinde bulunmakta , frontend ise Vercel üzerinde dağıtılmaktadır. Tüm deploy işlemleri tamamen ücretsiz ve verimli bir şekilde yapılmaktadır.

About

📝 Yazılımcılar için projelerini ekleyip sıralayabileceğin, yetenek ve deneyimlerini ekleyerek profesyonel CV oluşturup PDF olarak indirebileceğin bir platform!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published