How michiokazuo/interview-platform works
Interview Platform supports candidates and businesses with recruitment content, interview management and practice, and project and hiring-process management. Users enter through the web app, authenticate or register, then use the platform’s domain APIs; interview services can provision Daily.co rooms and question tests. Administrators can also initiate Stack Overflow crawling, with results handled asynchronously. The graph emphasizes documented capabilities and sampled controller/service/model relationships; several listed subsystems were not sampled, so their internal links are omitted rather than inferred.
Main entry points: api.php Laravel API · InterviewServiceImpl.php Interview service · AuthController.php Authentication · UserServiceImpl.php User service
Components 23
Web client
- Interview web app
resources/js/src/App.vue - Laravel API
routes/api.php
Accounts and profiles
- Authentication
app/Http/Controllers/AuthController.php - User service
app/Services/User/UserServiceImpl.php - User accounts
app/Models/User.php - User representation
app/Http/Resources/User/UserResource.php
Recruitment and interviews
- Recruitment articles
app/Http/Controllers/API/BlogController.php - Recruitment news
app/Http/Controllers/API/RecruitmentNewsController.php - News service
app/Services/RNews/NewsServiceImpl.php - Recruitment news data
app/Models/RecruitmentNews.php - Projects and processes
app/Http/Controllers/API/ProjectController.php - Interview management
app/Http/Controllers/API/InterviewController.php - Interview service
app/Services/Interview/InterviewServiceImpl.php - Interview records
app/Models/Interview.php - Question practice
app/Http/Controllers/API/GroupQuestionController.php
Admin and integrations
- Administration
app/Http/Controllers/API/AdminController.php - Stack Overflow crawler
app/Console/Commands/CrawlDataStackOverflow.php - Crawl job
app/Jobs/CrawlData.php - Mail service
app/Services/Mail/MailServiceImpl.php
Other components
- Candidate
- Business
- Daily.co
- Stack Overflow
Connections 23
- Candidate → Interview web app: uses
- Business → Interview web app: uses
- Interview web app → Laravel API: requests
- Laravel API → Authentication: routes to
- Authentication → User service: calls
app/Http/Controllers/AuthController.php - User service → User accounts: uses
app/Services/User/UserServiceImpl.php - Authentication → User representation: formats user
app/Http/Controllers/AuthController.php - Laravel API → Recruitment news: routes to
- Recruitment news → News service: calls
app/Http/Controllers/API/RecruitmentNewsController.php - News service → Recruitment news data: uses
app/Services/RNews/NewsServiceImpl.php - Laravel API → Interview management: routes to
- Interview management → Interview service: calls
app/Http/Controllers/API/InterviewController.php - Interview service → Interview records: reads/writes
app/Services/Interview/InterviewServiceImpl.php - Interview service → Daily.co: provisions rooms
app/Services/Interview/InterviewServiceImpl.php - Interview service → Question practice: creates test
app/Services/Interview/InterviewServiceImpl.php - Candidate → Interview management: applies or practices
- Business → Projects and processes: manages hiring
- Business → Recruitment news: posts vacancies
- Candidate → Recruitment articles: reads articles
- Administration → Stack Overflow crawler: initiates crawl
- Stack Overflow crawler → Crawl job: dispatches
- Crawl job → Stack Overflow: fetches questions
- User service → Mail service: sends notifications