feat: implement Instagram clone SocialPhoto API

- FastAPI backend with SQLite database
- JWT authentication (register, login)
- User profiles with follow/unfollow
- Posts with image upload and likes/dislikes
- Comments with likes
- Global and personalized feed
- Comprehensive pytest test suite (37 tests)

TASK-ID: 758f4029-702
This commit is contained in:
OpenClaw Agent
2026-04-16 03:20:48 +00:00
parent 8cbc4000ac
commit a3eca3b7da
95 changed files with 2767 additions and 1 deletions

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content

View File

@@ -0,0 +1 @@
fake image content