005
Archive 005Tool
Feedplace
A specialist/freelancer marketplace: profile cards with portfolios and services, reviews, real-time chat, orders, studios, and a Telegram bot
01 /About
A specialist/freelancer marketplace: profile cards with portfolios and services, reviews, real-time chat, orders, studios, and a Telegram bot.
Developed for resale / as a future production project.
02 /🎯 Overview
- 01A discovery platform for specialists/freelancers: every user gets a profile card with a portfolio, services and reviews
- 02Positioning: "A platform for finding specialists. A profile, reviews and portfolio — all in one place"
- 03Three roles: specialist, client, administrator, chosen during onboarding after registration
- 04A separate sub-product, Webreview, is an independent directory of third-party websites with reviews
- 05Three UI locales (ru/uk/en) auto-detected via cookie, geo-IP and Accept-Language
03 /🏗️ Architecture
- 01Two-part monorepo: backend (FastAPI) and frontend (Next.js), no shared root config
- 02Backend: async SQLAlchemy 2.0 + asyncpg, PostgreSQL with UUID/JSONB, 35+ Alembic revisions
- 03Layers: routers → 24 *_services.py modules → models.py (32 tables) → database.py
- 04Redis is optional: rate limiting, JWT version revocation, settings/stats cache, WebSocket pub/sub across processes
04 /🧑💼 Specialist profiles
- 01Public page /{username} with tags, location, experience, languages; contacts gated behind login
- 02JSON resume (grade, skills, experience, education) plus a resume-tools catalog
- 03DiceBear avatars: ready-made styles, randomization, component-level builder
- 04Subscription-based styling (free/brand/studio): banner, background, theme, avatar frame, widget style
05 /🛒 Services and orders
- 01Services (Product entries) with price type, delivery time, deliverables, images
- 02Orders created from chat as proposals, with a counter-offer flow and manual payment confirmation
- 03Full lifecycle from proposed to completed, plus cancelled/disputed/refunded
- 04Guarantor payment mode is modeled (Payment, EscrowHold) but not yet wired to a payment provider
06 /🏢 Studios and teams
- 01Studio registration with admin moderation, public page at /studios/{slug}
- 02Team roles (owner/admin/manager/member), email-token invites
- 03Studio services from a shared catalog or custom entries, dedicated studio conversations
07 /⭐ Reviews, verification and trust
- 01Profile/website/studio reviews with rating + text and per-pair uniqueness
- 02Moderation and polymorphic complaint reports
- 03Specialist verification questionnaire with junior/middle/senior/expert badges
08 /💬 Messaging and notifications
- 01Real-time chat over REST + WebSocket with attachments, editing, read receipts, presence
- 0224 in-app notification kinds, auto-purged after a few days
- 03Configurable SMTP email notifications
09 /🤖 Telegram integration
- 01A dedicated aiogram 3 bot with menu, messages, notifications, services and support commands
- 02Account linking via deep link or Telegram Login/OIDC
- 03Platform notifications mirrored to Telegram
10 /🌐 Webreview and embeddable widget
- 01Directory of third-party websites with domain normalization and moderation
- 02Website reviews via upsert with an aggregate rating
- 03Embeddable rating widget (classic/premium) with open CORS
11 /🖥️ Dashboard and admin panel
- 01Specialist and client dashboards covering profile, services, messages, orders, support
- 02Admin panel: users, moderation, service catalog, tickets, site settings, SEO audit, analytics, logs
12 /🧩 Technical highlights
- 01Pydantic v2, JWT + bcrypt auth, Redis-backed rate limiting and JWT versioning
- 02Docker Compose (PostgreSQL 16 + Redis 7), managed Postgres support
- 03Unified 5xx error handling with a developer log
- 0418 FastAPI routers, 32 ORM models
13 /Gallery




