A comprehensive teaching and learning platform for VS Code that facilitates code-based education through integrated course management, assignment submission, and grading workflows.
Computor is a VS Code extension designed for educational institutions to manage programming courses. It supports three main roles:
- Students: Browse courses, work on assignments, run tests, and submit solutions
- Tutors: Review and grade student submissions, provide feedback
- Lecturers: Create and manage courses, upload examples, release content
- 🎓 Role-based Interface: Dedicated views for students, tutors, and lecturers
- 📚 Course Management: Create, organize, and deploy course content
- 💻 Git Integration: Automatic repository management for assignments
- 🔐 Secure Authentication: Token-based authentication with automatic refresh
- ✅ Test Integration: Built-in test runner with result visualization
- 💬 Messaging System: Communication between students, tutors, and lecturers
- 📊 Progress Tracking: Real-time submission and grading status
- Visual Studio Code (latest version)
- Git installed and configured
- Access to your institution's Computor backend server
- GitLab account (if your institution uses GitLab for repository hosting)
- Install the Computor extension from the VS Code marketplace
- Restart VS Code after installation
-
Open the Command Palette by pressing
F1(orCtrl+Shift+P/Cmd+Shift+P) -
Search for and execute the command:
Computor: Configure Git -
You will be prompted to provide the following information:
- Name: Enter your full name (e.g., "John Doe")
- Email: Enter your institutional email address
If your institution uses GitLab:
Create a Personal Access Token:
- Navigate to your GitLab instance's personal access token page
- Click
Add new Token - Configure the token:
- Name it
computor - Set an appropriate expiration date
- Select the following scopes:
apiread_repositorywrite_repository
- Name it
- Copy and save the generated token - you'll need it in Step 4
-
Open the Command Palette (
F1) -
Search for and execute:
Computor: Change Backend URL -
Enter your institution's Computor backend URL (provided by your administrator)
IMPORTANT: Once you set your password, it cannot be changed using this command again. If you forget your password or need to reset it, you must contact your course administrator for a manual password reset. Only after an administrator resets your password can you use the Computor: Sign Up (Set Initial Password) command to set a new one.
-
Open the Command Palette (
F1) -
Search for and execute:
Computor: Sign Up (Set Initial Password) -
If your institution uses GitLab, you'll be prompted for:
- GitLab URL: Enter your GitLab instance URL
- Personal Access Token: Enter your GitLab personal access token (from Step 2)
-
The extension will validate your credentials
-
Set your password:
- Enter your desired password
- Confirm by entering it again
After setting up your password, you'll be prompted to log in.
Provide the following credentials:
- Email: Your institutional email address
- Password: The password you just created
You're now ready to use Computor!
- Browse Courses: Access available courses in the Student view
- Clone Assignments: Download assignment repositories to your workspace
- Run Tests: Execute tests locally to verify your solution
- Submit Solutions: Push your code and create submissions for grading
- Filter Students: Use filters to find specific submissions
- Clone Student Repositories: Review student code locally
- Grade Submissions: Provide grades and feedback
- Track Progress: Monitor grading status across assignments
- Create Courses: Set up new courses and course content
- Upload Examples: Provide starter code and examples
- Release Content: Deploy assignments to students
- Manage Users: Handle course enrollments and permissions
- Use
Computor: Manage GitLab Tokensto manage GitLab Personal Access Tokens per origin - Tokens are stored securely in VS Code's secret storage
- Supports multiple GitLab instances
- Automatic workspace structure creation
- Repository backup before destructive operations
- Conflict detection and resolution
- Response caching for improved performance
- Request batching to reduce network overhead
- Virtual scrolling for large lists
Cannot connect to backend:
- Verify your network connection
- Check the backend URL is correct
- Ensure your credentials are valid
Git operations failing:
- Verify Git is installed and configured
- Check GitLab token permissions
- Ensure repository access rights
Authentication errors:
- Try logging out and logging back in
- Verify your password is correct
- Contact administrator if password reset is needed
For issues and questions:
- Check the documentation
- Contact your course administrator
- Report bugs through your institution's support channels
For developers who want to contribute or extend the extension, see the Developer Guide and Architecture Overview.