mevn-stack-assignment/README.md

2.9 KiB
Raw Blame History

Full Stack Developer Teknik Ödevi

Merhaba Değerli Adayımız,

Bu teknik ödev, yazılım geliştirme becerilerinizi değerlendirmek için hazırlanmıştır. Amacımız, mevcut kötü yazılmış bir randevu sistemini temiz kod prensiplerine uygun hale getirmek ve geliştirme yaklaşımınızı görmek.

🎯 Göreviniz

Size verilen Express.js + Vue.js + SQLite ile yazılmış kötü bir randevu sistemi var. Bu projeyi hatalarından arındırarak ve okunabilir hale getirerek tekrar yazmalısınız.

📌 Mutlaka Yapılması Gerekenler (Zorunlu)

Kodun düzgün ve iyi çalışan bir hale getirilmesi gerekiyor.
Veritabanı olarak SQLite kullanılmıştır. Bunu MongoDB ile değiştirebilirsiniz.
Form doğrulaması (validation) zorunludur.
Aynı tarih ve saate tekrar randevu alınmasını engellemelisiniz.
Rezervasyon yapıldığında sayfa otomatik olarak güncellenmelidir.
Backend ve frontend düzgün API entegrasyonu sağlamalıdır.
Concurrency ve race condition problemleri göz önünde bulundurulmalı, önlemler alınmalıdır.
Error handling düzgün yapılmalı, güvenlik açıkları minimize edilmelidir.
Inline CSS kullanılmamalıdır, CSS dosyaları ayrılmalıdır.
README dosyasında kurulum ve çalıştırma adımları eksiksiz açıklanmalıdır.

Artı Değer Kazandıracaklar

🔹 Nuxt.js ve MongoDB kullanmak.
🔹 Kod organizasyonunu geliştirirmek ve kod yapısını standart yaklaşımlara göre düzenlemek.
🔹 Ek çözümler geliştirmek. Örneğin, WebSockets (Socket.io) gibi gerçek zamanlı bir güncelleme yöntemi kullanabilirsiniz.
🔹 Tailwind CSS kullanarak UI tasarımını geliştirirmek.
🔹 Authentication ekleyerek kullanıcıların birbirinin randevularını görmesini engellerseniz değerlendirmede avantaj sağlar.
🔹 Projede yaşadığınız zorlukları, projede gördüğünüz problemlere dair çözümleri anlatan bir doküman bizimle paylaşmak.
🔹 Canlı bir demo (Vercel, Netlify, DigitalOcean vb.) oluşturursanız artı puan alırsınız.

📦 Teslimat ve Süre

📅 Teslim süresi: 5 gün
📩 Teslim şekli:

  • GitHub üzerinden paylaşabilirsiniz veya e-posta ile gönderebilirsiniz.
  • README dosyanız mutlaka olmalıdır.

🚀 Projeyi Çalıştırma

1 Gerekli Bağımlılıkları Yükleyin

Proje dizinine gidin ve gerekli bağımlılıkları yükleyin:

cd backend
npm install

cd ../frontend
npm install

3 Backendi Başlatın

Backendi çalıştırmak için:

cd backend
node server.js

4 Frontendi Başlatın

Frontendi çalıştırmak için:

cd frontend
npm run dev

5 Uygulamayı Kullan

Tarayıcınızıın ve aşağıdaki URLyi ziyaret edin:

http://localhost:5173

Başarılar! 🚀