ReginaldBrixton capstone-compass .cursorrules file for JavaScript

# Student Learning Platform Project Plan

## Frontend

### Pages

#### Dashboard
- `page.jsx`: Student dashboard home page
- `analytics/page.jsx`: Detailed analytics dashboard
- `notifications/page.jsx`: All notifications view
- Components:
  - `DashboardSummary.jsx`: Overview of student activity
  - `RecentActivity.jsx`: Latest updates and notifications
  - `QuickActions.jsx`: Common actions shortcuts
  - `LearningProgress.jsx`: Learning path progress
  - `UpcomingDeadlines.jsx`: Deadline reminders
  - `StudyTimeTracker.jsx`: Study time analytics
  - `WeeklyGoals.jsx`: Goal setting and tracking

#### Projects
- `page.jsx`: Projects overview page
- `[projectId]/page.jsx`: Individual project view
- `archived/page.jsx`: Archived projects
- `templates/page.jsx`: Project templates
- Components:
  - `ProjectList.jsx`: List of student projects
  - `ProjectCard.jsx`: Individual project preview
  - `ProjectDetails.jsx`: Detailed project view
  - `ProjectTimeline.jsx`: Project milestones
  - `CollaboratorsList.jsx`: Project team members
  - `TaskBoard.jsx`: Kanban-style task management
  - `FileManager.jsx`: Project files and resources

#### Schedule
- `page.jsx`: Schedule calendar view
- `week/page.jsx`: Weekly schedule view
- `month/page.jsx`: Monthly calendar view
- `planner/page.jsx`: Study planner
- Components:
  - `Calendar.jsx`: Interactive calendar component
  - `DayView.jsx`: Daily schedule breakdown
  - `EventCard.jsx`: Individual schedule event
  - `TimeBlockPlanner.jsx`: Study block scheduler
  - `DeadlineTracker.jsx`: Assignment deadlines
  - `ClassReminders.jsx`: Class notifications
  - `StudySessionTimer.jsx`: Focus timer

#### Team
- `page.jsx`: Team collaboration page
- `[teamId]/page.jsx`: Specific team workspace
- `discover/page.jsx`: Find new teams
- `requests/page.jsx`: Team invitations
- Components:
  - `TeamList.jsx`: List of team members
  - `TeamChat.jsx`: Team communication interface
  - `TeamProjects.jsx`: Shared team projects
  - `TeamCalendar.jsx`: Team schedule sync
  - `CollaborationTools.jsx`: Shared workspace
  - `TeamAnalytics.jsx`: Team performance
  - `MeetingScheduler.jsx`: Team meeting planner

#### Assignments
- `page.jsx`: Assignments dashboard
- `[assignmentId]/page.jsx`: Assignment details
- `submitted/page.jsx`: Submission history
- `feedback/page.jsx`: Teacher feedback
- Components:
  - `AssignmentList.jsx`: List of assignments
  - `AssignmentCard.jsx`: Assignment preview card
  - `SubmissionForm.jsx`: Assignment submission
  - `GradingRubric.jsx`: Assignment criteria
  - `PeerReview.jsx`: Peer review system
  - `DraftManager.jsx`: Work-in-progress saves
  - `PlagiarismChecker.jsx`: Originality checker

#### Progress
- `page.jsx`: Student progress tracking
- `skills/page.jsx`: Skills assessment
- `certificates/page.jsx`: Earned certificates
- `reports/page.jsx`: Detailed reports
- Components:
  - `ProgressChart.jsx`: Visual progress indicators
  - `Achievements.jsx`: Student achievements
  - `GradeBook.jsx`: Academic performance
  - `SkillsMatrix.jsx`: Skills development
  - `LearningAnalytics.jsx`: Learning patterns
  - `ImprovementSuggestions.jsx`: AI-powered tips
  - `CompetencyTracker.jsx`: Mastery tracking

#### Announcements
- `page.jsx`: Announcements feed
- `important/page.jsx`: Priority announcements
- `archived/page.jsx`: Past announcements
- `subscriptions/page.jsx`: Channel management
- Components:
  - `AnnouncementList.jsx`: List of announcements
  - `AnnouncementCard.jsx`: Individual announcement
  - `NotificationPreferences.jsx`: Alert settings
  - `CategoryFilter.jsx`: Content filtering
  - `SearchAnnouncements.jsx`: Advanced search
  - `PinBoard.jsx`: Pinned announcements
  - `ReminderSetter.jsx`: Custom reminders

#### Messages
- `page.jsx`: Messaging interface
- `[chatId]/page.jsx`: Individual chat
- `groups/page.jsx`: Group messages
- `archived/page.jsx`: Archive
- Components:
  - `ChatList.jsx`: List of conversations
  - `ChatWindow.jsx`: Message thread view
  - `MessageComposer.jsx`: New message composer
  - `FileSharing.jsx`: Resource sharing
  - `VideoChat.jsx`: Video conferencing
  - `VoiceMessages.jsx`: Audio messages
  - `ChatSearch.jsx`: Message search

#### Resources
- `page.jsx`: Learning resources hub
- `[resourceId]/page.jsx`: Resource viewer
- `bookmarks/page.jsx`: Saved resources
- `uploads/page.jsx`: My uploads
- Components:
  - `ResourceLibrary.jsx`: Resource collection
  - `ResourceViewer.jsx`: Resource preview/viewer
  - `StudyMaterials.jsx`: Course materials
  - `DownloadManager.jsx`: Resource downloads
  - `ResourceSharing.jsx`: Share interface
  - `TagManager.jsx`: Resource organization
  - `RecommendationEngine.jsx`: Smart suggestions

#### Help
- `page.jsx`: Help and support center
- `tutorials/page.jsx`: Platform tutorials
- `contact/page.jsx`: Contact support
- `documentation/page.jsx`: User guides
- Components:
  - `FAQList.jsx`: Frequently asked questions
  - `SupportTicket.jsx`: Support request form
  - `LiveChat.jsx`: Real-time support
  - `TutorialVideos.jsx`: How-to guides
  - `Troubleshooter.jsx`: Problem solver
  - `KnowledgeBase.jsx`: Help articles
  - `FeedbackForm.jsx`: User feedback

#### Settings
- `page.jsx`: User settings page
- `security/page.jsx`: Security settings
- `privacy/page.jsx`: Privacy controls
- `integrations/page.jsx`: App connections
- Components:
  - `AccountSettings.jsx`: Account preferences
  - `NotificationSettings.jsx`: Notification controls
  - `PrivacyControls.jsx`: Data privacy
  - `SecuritySettings.jsx`: Account security
  - `AppIntegrations.jsx`: Third-party apps
  - `AccessibilitySettings.jsx`: Accessibility
  - `LanguageSettings.jsx`: Language preference

#### Profile
- `page.jsx`: User profile page
- `edit/page.jsx`: Edit profile
- `portfolio/page.jsx`: Student portfolio
- `network/page.jsx`: Connections
- Components:
  - `ProfileInfo.jsx`: Profile information
  - `ActivityFeed.jsx`: Recent user activity
  - `SkillsDisplay.jsx`: Skills showcase
  - `PortfolioGallery.jsx`: Work showcase
  - `ConnectionsNetwork.jsx`: Professional network
  - `EndorsementsSection.jsx`: Peer endorsements
  - `AchievementGallery.jsx`: Badges and awards



  
### Shared

#### Components
- `Layout.jsx`: Common layout wrapper
- `Navbar.jsx`: Navigation header
- `Sidebar.jsx`: Side navigation menu
- `Notifications.jsx`: Notification system
- `LoadingStates.jsx`: Loading spinners/skeletons
- `ErrorBoundary.jsx`: Error handling component

#### Styles
- `theme.js`: Global theme configuration
- `variables.scss`: SCSS variables and mixins
- `animations.scss`: Common animations

## Backend




### API

#### Courses
- Routes:
  - `GET /api/courses`: List all courses
  - `GET /api/courses/:id`: Get course details
  - `POST /api/courses/:id/enroll`: Enroll in course
  - `GET /api/courses/:id/materials`: Get course materials
  - `POST /api/courses/:id/assignments`: Submit assignment
- Models:
  - `Course.js`: Course data model
  - `Enrollment.js`: Course enrollment model
  - `Assignment.js`: Assignment model

#### Schedule
- Routes:
  - `GET /api/schedule`: Get student schedule
  - `POST /api/schedule/export`: Export schedule
  - `GET /api/schedule/conflicts`: Check conflicts
- Models:
  - `Schedule.js`: Schedule data model
  - `Class.js`: Class session model

#### Profile
- Routes:
  - `GET /api/profile`: Get student profile
  - `PUT /api/profile`: Update profile
  - `GET /api/profile/academic`: Get academic history
- Models:
  - `Student.js`: Student profile model
  - `Academic.js`: Academic records model

### Services
- `auth.js`: Authentication service
- `notification.js`: Notification service
- `storage.js`: File storage service
- `email.js`: Email notification service

### Database
- `migrations`: Database schema migrations
- `seeds`: Initial data seeds
- `models`: Database models and relationships

## Infrastructure

### Deployment
- `docker`: Containerization setup
- `ci-cd`: Continuous integration pipeline
- `monitoring`: Application monitoring

### Security
- `authentication`: JWT-based auth system
- `authorization`: Role-based access control
- `data-protection`: Data encryption and security
analytics
auth.js
css
docker
golang
javascript
jwt
scss
+2 more

First Time Repository

JavaScript

Languages:

CSS: 36.9KB
JavaScript: 859.5KB
SCSS: 8.2KB
Shell: 0.1KB
TypeScript: 7.8KB
Created: 1/23/2025
Updated: 1/23/2025

All Repositories (1)