Add full internationalization across 127+ components and pages.
790+ translation keys in en, tr, kmr, ckb, ar, fa locales.
Remove duplicate keys and delete unused .json locale files.
Replaced custom loading spinners with standardized LoadingState component from AsyncComponent.tsx. This ensures consistent UX for all data-loading operations.
Changes:
- web/src/components/staking/StakingDashboard.tsx: LoadingState for staking data
- web/src/components/governance/GovernanceOverview.tsx: LoadingState for governance data
- web/src/components/governance/ProposalsList.tsx: LoadingState for proposals
- web/src/components/dex/PoolBrowser.tsx: LoadingState for liquidity pools
- web/src/components/delegation/DelegationManager.tsx: LoadingState for delegation data
- web/src/components/forum/ForumOverview.tsx: LoadingState for forum threads
- web/src/components/treasury/TreasuryOverview.tsx: LoadingState for treasury data
All components now show:
- Kurdistan green animated spinner (Loader2)
- Contextual loading messages
- Consistent padding and centering
- Professional appearance
Button loading states (auth, wallet modals) left as-is since they appropriately disable during actions.
- Redesigned ForumOverview with modern, professional UI
- Added admin announcements banner with 4 priority types (info/warning/success/critical)
- Implemented upvote/downvote system with real-time updates
- Added forum statistics dashboard showing discussions, categories, users, replies
- Created category grid with visual icons and discussion counts
- Enhanced discussion cards with pin/lock/trending badges
- Integrated search, filtering, and sorting functionality
- Added comprehensive moderation panel with:
- Reports queue management
- Auto-moderation settings with AI sentiment analysis
- User management with warn/suspend/ban actions
- Moderation stats dashboard
- Created useForum hook with real-time Supabase subscriptions
- All data connected to Supabase with RLS policies for security
This completes the modern forum implementation as requested.
Restructured the project to support multiple frontend applications:
- Move web app to web/ directory
- Create pezkuwi-sdk-ui/ for Polkadot SDK clone (planned)
- Create mobile/ directory for mobile app development
- Add shared/ directory with common utilities, types, and blockchain code
- Update README.md with comprehensive documentation
- Remove obsolete DKSweb/ directory
This monorepo structure enables better code sharing and organized
development across web, mobile, and SDK UI projects.