Footzi یک پلتفرم اجتماعی و متنباز برای طرفداران فوتبال است تا خاطرات و فرهنگ هواداری خود را به اشتراک بگذارند. این پروژه به جای تمرکز بر آمار و ارقام، بر روی احساسات، نوستالژی و داستانهایی تمرکز دارد که فوتبال را برای ما معنادار میکنند.
- احراز هویت کامل: سیستم ثبتنام و ورود امن با استفاده از JWT.
- آپلود فایل: قابلیت آپلود عکس برای خاطرات با استفاده از سرویس Object Storage.
- ایجاد و نمایش پستها: کاربران وارد شده میتوانند پست جدید ایجاد کنند و همه کاربران میتوانند فید اصلی خاطرات را مشاهده کنند.
- معماری مدرن و کانتینری: کل پروژه با استفاده از Docker اجرا میشود که راهاندازی آن را بسیار ساده و قابل اعتماد میکند.
- 🖥️ فرانتاند: Vite, React, TypeScript, Tailwind CSS, Zustand, React Router
- 🧠 بکاند (API): NestJS, TypeScript, TypeORM, Passport.js (JWT)
- 🗃️ دیتابیس: PostgreSQL
- 📦 ذخیرهسازی فایل: MinIO (S3-Compatible)
- ⚙️ زیرساخت: Docker, Docker Compose
ما برای آینده Footzi هیجانزدهایم! در اینجا لیستی از قابلیتهایی که قصد داریم به زودی به اپلیکیشن اضافه کنیم، آورده شده است:
- سیستم لایک و کامنت: برای افزایش تعاملات اجتماعی زیر هر پست.
- پروفایل کاربری: صفحه اختصاصی برای هر کاربر با نمایش تمام پستهای او.
- سیستم دنبال کردن (Follow): تا کاربران بتوانند پروفایلهای مورد علاقه خود را دنبال کرده و یک فید شخصیسازی شده داشته باشند.
- دستهبندی و تگگذاری پیشرفته: برای فیلتر کردن خاطرات بر اساس تیم، بازیکن، ورزشگاه، فصل و...
- اعلانها (Notifications): برای اطلاعرسانی به کاربران در مورد لایکها و کامنتهای جدید.
- پشتیبانی از ویدیو: امکان آپلود کلیپهای ویدیویی کوتاه از شعارها و لحظات خاص.
- استقرار (Deployment): پابلیش کردن پروژه در اینترنت با استفاده از سرویسهای ابری.
این پروژه تحت لایسنس MIT منتشر شده است.