VT Friends
VT Friends is a LinkedIn-style social network built exclusively for the veterinary world. Built on Laravel 5.8, it has all the features you'd expect from a social platform: news feed, follow/unfollow, groups, direct messaging, and notifications — but designed for vets, vet techs, students, and industry professionals. We used Pusher for real-time notification delivery and AWS S3 for profile images and media. Social login via Laravel Socialite (Google, Facebook) reduces friction for new sign-ups. The real challenge was building the feed algorithm to surface relevant content without turning into an engagement-bait nightmare.
The Result
A full-featured veterinary social network with real-time messaging, groups, and feeds built for professional community engagement.
Tech Stack
6
Modules
7
Technologies
5
Highlights
Applications in This Project.
This project is built as 1 interconnected application, each with a distinct responsibility.
vtfriends-website
Laravel 5.8Full-stack social platform (MVC)
What It Does.
Real-time notifications via Pusher and Laravel Echo
Social login with Google and Facebook
Groups, messaging, and follow system
How It's Built.
Backend / API
Database & Cache
Services & Infra
Under the Hood.
Every module shipped in VT Friends — what it does and the features it covers.
User Profiles
Detailed professional profiles with credentials, work history, education, and privacy settings.
What's Included
- Email + password registration
- Social login (Google, Facebook)
- Profile & cover photo (with cropper)
- Bio / about section
- Professional credentials (license, specialization)
- Work history & education history
- Skills & interests
- Privacy settings (public, friends-only, private)
News Feed
Chronological and algorithmic feed with posts, reactions, comments, nested replies, and saves.
What's Included
- Chronological + algorithmic-ranked feed
- Post types: text, image, video link, article share
- Like / React to posts
- Comment + nested replies
- Share & save/bookmark posts
- Report inappropriate content
Friends & Connections
Friend requests, follow system, mutual friends, suggested connections, and user blocking.
What's Included
- Send / accept / decline friend requests
- Follow users (asymmetric)
- Mutual friends display
- Suggested connections
- Block users
Groups
Public, private, and hidden groups with membership roles, group posts, events, and notifications.
What's Included
- Create groups (public, private, hidden)
- Membership roles: member, moderator, admin
- Group posts & discussions
- Group events
- Join request approval for private groups
Direct Messaging
Real-time 1:1 messaging with typing indicators, read receipts, file attachments, and Pusher delivery.
What's Included
- 1-to-1 messaging
- Real-time delivery (Pusher)
- Typing indicators
- Read receipts
- Message notifications
- File & image attachments
Photos & Media
Photo albums, S3 upload, photo tagging, comments, and cover/profile photo management.
What's Included
- Photo albums
- Photo upload (S3)
- Photo tagging (people)
- Photo comments & likes
- Cover photos & profile photos
The Interesting Parts.
Key architectural decisions, patterns, and technical details worth knowing.
Full social graph: follow/unfollow, personalized feed, groups, and direct messaging built from scratch — no white-label base
Laravel Socialite for one-click social login via Google and Facebook
Pusher presence channels for online/offline indicators in direct and group messaging
Laravel Events and Listeners decouple notification delivery from core business logic
AWS S3 + Intervention Image handle profile photos and media with automatic resizing
Core Models & Tables.
The primary database models that power VT Friends.
User
Platform user with social profile
Post
News feed post
Comment / Reply
Post comments and nested replies
Friend / Follow
Friend requests and follow relationships
Group / GroupMember
Community groups and membership
Message
Direct message
Photo / Album
Photos and photo albums
Notification
User notifications
Want Something Like This?
We've built systems like this before — we know the pitfalls, the patterns that work, and how to scope it correctly from day one.