How sravya-cyber/devbrand works
DevBrand turns a developer’s coding activity into milestone drafts and scheduled social posts. Users connect coding profiles, review activity and milestones, generate or edit content, score and schedule posts, then inspect calendar and analytics views. The backend combines API handlers, MongoDB-backed state, scheduled milestone checks, Gemini content generation, and a Redis-backed publishing worker. The README documents analytics and scheduler capabilities; some route implementations were not sampled, so those links are omitted or marked unverified.
Main entry points: App.jsx Web app routes · milestoneService.js Milestone checker · api.js HTTP API client · index.js Express API
Components 32
Web application
- Web app routes
client/src/App.jsx - Auth context
client/src/context/AuthContext.jsx - Dashboard
client/src/pages/Dashboard.jsx - Post studio
client/src/pages/CreatePost.jsx - Post calendar
client/src/pages/Calendar.jsx - Analytics view
client/src/pages/Analytics.jsx - Connected accounts
client/src/pages/Accounts.jsx - Milestone review
client/src/pages/Milestones.jsx
API and identity
- HTTP API client
client/src/services/api.js - Express API
server/index.js - Auth handlers
server/controllers/authController.js - JWT guard
server/middleware/auth.js
Content and publishing
- Post handlers
server/controllers/postController.js - AI handlers
server/controllers/aiController.js - Gemini content AI
server/services/geminiService.js - Post scheduler
server/queues/postQueue.js - Publishing worker
server/queues/workers/postWorker.js - LinkedIn publishing
server/services/linkedinService.js
Activity and milestones
- Milestone checker
server/services/milestoneService.js - Codeforces tracking
server/services/codeforcesService.js - LeetCode tracking
server/services/leetcodeService.js - GitHub tracking
server/services/githubService.js
Persistent state
- User profiles
server/models/User.js - Posts
server/models/Post.js - Milestone records
server/models/Milestone.js - Notifications
server/models/Notification.js - Social accounts
server/models/SocialAccount.js
Other components
- Developer
- Redis
- MongoDB
- Gemini API
- Coding platforms
Connections 46
- Developer → Web app routes: uses
client/src/App.jsx - Web app routes → Auth context: provides auth
client/src/App.jsx - Web app routes → Dashboard: routes to
client/src/App.jsx - Web app routes → Post studio: routes to
client/src/App.jsx - Web app routes → Post calendar: routes to
client/src/App.jsx - Web app routes → Analytics view: routes to
client/src/App.jsx - Web app routes → Connected accounts: routes to
client/src/App.jsx - Web app routes → Milestone review: routes to
client/src/App.jsx - Auth context → HTTP API client: requests
client/src/context/AuthContext.jsx - Dashboard → HTTP API client: requests
client/src/pages/Dashboard.jsx - Post studio → HTTP API client: requests
client/src/pages/CreatePost.jsx - Post calendar → HTTP API client: requests
client/src/pages/Calendar.jsx - Analytics view → HTTP API client: requests
client/src/pages/Analytics.jsx - Connected accounts → HTTP API client: requests
client/src/pages/Accounts.jsx - Milestone review → HTTP API client: requests
client/src/pages/Milestones.jsx - HTTP API client → Express API: HTTP requests
- Express API → Auth handlers: mounts routes
server/index.js - Express API → Post handlers: mounts routes
server/index.js - Express API → AI handlers: mounts routes
server/index.js - Express API → Milestone checker: starts checker
server/index.js - Auth handlers → JWT guard: protects routes
server/routes/auth.js - Auth handlers → User profiles: authenticates users
server/controllers/authController.js - JWT guard → User profiles: loads user
server/middleware/auth.js - Post handlers → Posts: creates and reads
server/controllers/postController.js - Post handlers → Gemini content AI: scores content
server/controllers/postController.js - Post handlers → Post scheduler: schedules jobs
server/controllers/postController.js - AI handlers → Gemini content AI: generates content
server/controllers/aiController.js - Gemini content AI → Gemini API: calls
server/services/geminiService.js - Post scheduler → Redis: persists jobs
- Publishing worker → Post scheduler: processes jobs
server/queues/workers/postWorker.js - Publishing worker → Posts: updates status
server/queues/workers/postWorker.js - Publishing worker → Social accounts: loads account
server/queues/workers/postWorker.js - Publishing worker → LinkedIn publishing: publishes to
server/queues/workers/postWorker.js - Publishing worker → Notifications: records outcome
server/queues/workers/postWorker.js - LinkedIn publishing → Coding platforms: publishes externally
- Milestone checker → User profiles: loads and updates
server/services/milestoneService.js - Milestone checker → Codeforces tracking: checks profile
server/services/milestoneService.js - Milestone checker → LeetCode tracking: checks profile
server/services/milestoneService.js - Milestone checker → GitHub tracking: checks profile
server/services/milestoneService.js - Milestone checker → Milestone records: stores discoveries
server/services/milestoneService.js - Milestone checker → Notifications: creates alerts
server/services/milestoneService.js - Milestone checker → Gemini content AI: drafts celebration
server/services/milestoneService.js - Codeforces tracking → Coding platforms: fetches stats
- LeetCode tracking → Coding platforms: fetches stats
- GitHub tracking → Coding platforms: fetches stats
- Express API → MongoDB: connects
server/index.js