רשת חברתית המיועדת למתכנתים לשיתוף קוד, פרויקטים ורעיונות.
- יצירת פרופיל מפתח עם קישורים לגיטהאב, לינקדאין ואתר אישי
- שיתוף פוסטים עם קטעי קוד בהדגשת תחביר
- מעקב אחר מפתחים אחרים
- לייקים ותגובות לפוסטים
- חיפוש פוסטים לפי שפת תכנות או תוכן
- התראות בזמן אמת
- צד שרת: Django, Django REST Framework, JWT
- בסיס נתונים: PostgreSQL (SQLite לפיתוח)
- אבטחה: CSRF Protection, JWT Authentication
- Python 3.8+
- pip
- virtualenv (מומלץ)
- שכפל את המאגר:
git clone https://github.com/yourusername/devconnect.git
cd devconnect- צור והפעל סביבה וירטואלית:
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows- התקן את החבילות הנדרשות:
pip install -r requirements.txt- צור קובץ
.envבתיקיית הפרויקט הראשית והגדר את המשתנים הבאים:
SECRET_KEY=your-secret-key
DEBUG=True
ALLOWED_HOSTS=127.0.0.1,localhost
# Database Settings
DB_ENGINE=django.db.backends.sqlite3
DB_NAME=db.sqlite3
DB_USER=
DB_PASSWORD=
DB_HOST=
DB_PORT=
# CORS Settings
CORS_ALLOWED_ORIGINS=http://localhost:3000,http://127.0.0.1:3000
CSRF_TRUSTED_ORIGINS=http://localhost:3000,http://127.0.0.1:3000
# Security
CSRF_COOKIE_SECURE=False
CSRF_COOKIE_HTTPONLY=False
- בצע מיגרציות:
python manage.py migrate- צור משתמש אדמין:
python manage.py createsuperuser- הפעל את השרת:
python manage.py runserverPOST /api/auth/token/- קבלת JWT tokenPOST /api/auth/token/refresh/- רענון JWT tokenPOST /api/auth/token/verify/- אימות JWT token
GET /api/users/- רשימת משתמשיםPOST /api/users/- יצירת משתמש חדשGET /api/users/{id}/- פרטי משתמשPATCH /api/users/{id}/- עדכון משתמשGET /api/users/{id}/posts/- פוסטים של משתמשGET /api/users/{id}/followers/- עוקבים של משתמשGET /api/users/{id}/following/- משתמשים שהמשתמש עוקב אחריהםPOST /api/users/{id}/follow/- עקיבה אחרי משתמשPOST /api/users/{id}/unfollow/- הפסקת מעקב אחרי משתמש
GET /api/posts/- רשימת פוסטיםPOST /api/posts/- יצירת פוסט חדשGET /api/posts/{id}/- פרטי פוסטPATCH /api/posts/{id}/- עדכון פוסטDELETE /api/posts/{id}/- מחיקת פוסטPOST /api/posts/{id}/like/- לייק לפוסטPOST /api/posts/{id}/unlike/- הסרת לייק מפוסטGET /api/posts/{id}/comments/- תגובות לפוסט
POST /api/comments/- יצירת תגובה חדשהPATCH /api/comments/{id}/- עדכון תגובהDELETE /api/comments/{id}/- מחיקת תגובהGET /api/comments/{id}/replies/- תגובות לתגובה
GET /api/programming-languages/- רשימת שפות תכנותPOST /api/programming-languages/- הוספת שפת תכנות חדשה (admin only)PATCH /api/programming-languages/{id}/- עדכון שפת תכנות (admin only)DELETE /api/programming-languages/{id}/- מחיקת שפת תכנות (admin only)
להרצת בדיקות:
pytestלבדיקת כיסוי קוד:
coverage run -m pytest
coverage reportפרויקט זה מופץ תחת רישיון MIT. ראה קובץ LICENSE לפרטים נוספים.