Skip to main content
The Materials feature in Campus enables educators and members to share educational resources, documents, and learning materials with their community.

Understanding Materials

Materials can include:
  • Documents (PDF, DOCX, TXT)
  • Presentations (PPTX, Google Slides links)
  • Datasets (CSV, Excel, JSON)
  • Videos (uploaded or linked)
  • External links to resources

Material Structure

{
  title: string,          // Material name (max 500 chars)
  description: string,    // Optional description (max 5000 chars)
  file: File,            // Uploaded file or null for links
  format: string,        // 'document' | 'slide' | 'dataset' | 'video' | 'link'
  uploader: string,      // User ID of uploader
  tags: string[],        // Searchable tags
  visibility: string,    // 'institution' | 'course' | 'group' | 'public'
  created: DateTime,     // Upload timestamp
  accessCount: number    // View/download count
}

Uploading Materials

1

Navigate to Materials

Go to /materials to access the materials repository.
2

Click Upload Material

Click the “Upload Material” button in the top-right corner.This opens the upload dialog.
3

Enter Material Information

Fill in the required fields:Title (required)
  • Clear, descriptive name
  • Maximum 500 characters
  • Example: “Data Structures Lecture 5 - Binary Trees”
Description (optional)
  • Detailed information about the material
  • What it covers
  • Prerequisites or related materials
  • Maximum 5000 characters
  • Supports line breaks for readability
4

Select File

Click the file input to choose a file from your computer:
  • Click “Choose File”
  • Navigate to your file
  • Select and confirm
File size limits may apply depending on your Campus instance configuration. Check with your administrator for specific limits.
5

Upload

Click the “Upload” button to submit.The upload process:
  • Shows progress indicator
  • Validates file and metadata
  • Processes and stores the file
  • Returns you to the materials list with your new material visible

Organizing Materials

Using Tags

Tags help categorize and discover materials:
// Example tags
tags: [
  'data-structures',
  'algorithms',
  'trees',
  'lecture',
  'fall-2026'
]
Use consistent tag naming conventions:
  • Lowercase
  • Hyphenated multi-word tags
  • Specific rather than generic
  • Include temporal tags (semester/year) for time-sensitive content

Material Formats

Materials are automatically categorized by format:
Text-based resources:
  • PDF files
  • Word documents (.docx)
  • Text files (.txt)
  • Markdown files
Displayed with document icon and viewable in browser (PDF) or downloadable.

Visibility Settings

Control who can access your materials:
VisibilityAccess
PublicAnyone can discover and download
InstitutionOnly users from your institution
CourseOnly students enrolled in specific course
GroupOnly members of a specific group

Searching and Discovering Materials

Search Functionality

The materials page includes a powerful search:
// Search parameters
{
  q: string,              // Search query (title/description)
  tags: string[],         // Filter by tags
  format: string,         // Filter by format type
  contributorId: string,  // Filter by uploader
  courseCode: string,     // Filter by course
  sort: 'relevance' | 'recent',
  page: number,
  perPage: number         // Results per page (max 100)
}
1

Enter Search Query

Type keywords in the search box:
  • Searches in titles and descriptions
  • Supports partial matches
  • Case-insensitive
2

Apply Filters (Optional)

Refine results using filters:
  • Format type
  • Tags
  • Contributor
  • Course/group
3

Click Search

Submit your search to see results
4

Browse Results

Results display:
  • Material title
  • Uploader name
  • Upload date
  • Tags
  • Format icon
Pagination controls appear at the bottom for multiple pages.

Sorting Options

  • Relevance: Best match to search query (default for searches)
  • Recent: Newest uploads first (default when browsing)

Accessing Materials

Viewing Materials

Click on any material card to:
  • View full details
  • See complete description
  • Check related materials
  • View access statistics

Downloading Materials

Each material has a “Download” button:
  1. Click “Download”
  2. File downloads to your default location
  3. Download is logged for analytics
Downloads are tracked to help uploaders understand material usage and popularity.

Access Logging

Campus tracks material access for:
  • Usage analytics
  • Popular content identification
  • Contributor insights
// Access log entry
{
  material: string,  // Material ID
  user: string,      // User ID
  action: 'view' | 'download',
  timestamp: DateTime
}

Managing Your Materials

Viewing Your Uploads

Access your uploaded materials:
  • Navigate to /profile/uploads or your profile page
  • Filter by “My Materials”
  • See all materials you’ve uploaded
  • View access statistics for each

Updating Materials

To update an existing material:
1

Find Your Material

Go to your uploads or search for the material
2

Click Edit

Open the material and click “Edit” (visible only to uploader and moderators)
3

Modify Details

Update:
  • Title
  • Description
  • Tags
  • Visibility
  • Replace the file (optional)
4

Save Changes

Click “Update” to save
Replacing the file will update the download for all users. The old file is not retained.

Deleting Materials

Deletion is permanent and cannot be undone. Download logs will be retained but the file will be removed.
To delete a material:
  1. Open the material details
  2. Click “Delete”
  3. Confirm the deletion
Only uploaders and space/group moderators can delete materials.

Best Practices

Make titles clear and specific:Good:
  • “Linear Algebra Exam Review - Chapter 3-5”
  • “Python Tutorial: List Comprehensions”
Avoid:
  • “Lecture Notes”
  • “Document 1”
Include context like course name, topic, and type of material.
Descriptions should:
  • Summarize the content
  • Mention prerequisites
  • Link to related materials
  • Include any special notes (version, corrections, etc.)
Example:
Slides from Week 5 lecture on binary search trees.

Topics covered:
- BST properties
- Insert/delete operations
- Traversal algorithms

Prerequisites: Understanding of basic tree structures
Related: Week 4 notes on general trees
Develop a tagging strategy:
  • Use existing tags when possible
  • Create new tags only when necessary
  • Include multiple tag types:
    • Topic tags: data-structures, algorithms
    • Course tags: cs101, intro-programming
    • Type tags: lecture, assignment, solution
    • Temporal tags: fall-2026, week-5
Consider your audience:
  • Public: General educational resources, open courseware
  • Institution: Campus-specific materials
  • Course: Exam solutions, graded assignments
  • Group: Collaborative project files, restricted content
You can always change visibility later if needed.
Group related materials:
  • Use consistent naming schemes
  • Create a series (Lecture 1, Lecture 2, etc.)
  • Use tags to create virtual collections
  • Consider creating a course page that links to all materials
Maintain your content:
  • Update materials when content changes
  • Remove outdated or incorrect materials
  • Add version numbers for evolving documents
  • Archive old semester materials appropriately

File Formats and Compatibility

For best compatibility:
Content TypeRecommended FormatAlternative
DocumentsPDFDOCX
PresentationsPDF (exported)PPTX, Link
DatasetsCSVXLSX, JSON
CodeGitHub/GitLab linkZIP
VideosYouTube/Vimeo linkMP4 (small files)

File Size Considerations

For large files:
  1. Compress PDFs using tools like Adobe Acrobat
  2. Use video compression for recorded lectures
  3. Host large files externally and link to them
  4. Split large documents into smaller sections

Common Issues

Upload FailsIf your upload doesn’t work:
  • Check file size (may exceed limit)
  • Ensure file isn’t corrupted
  • Verify internet connection is stable
  • Try a different browser
  • Contact support if issue persists
Material Not VisibleIf uploaded material doesn’t appear:
  • Check visibility settings (may be restricted)
  • Verify you’re viewing the correct space/course
  • Ensure upload completed successfully
  • Try refreshing the page

Analytics and Insights

Track how your materials are being used:
  • View count: How many times material details were viewed
  • Download count: How many times material was downloaded
  • Unique users: Number of different users who accessed
  • Access timeline: When material is most accessed
Use these insights to:
  • Identify popular content
  • Understand learning patterns
  • Plan content updates
  • Justify resource creation efforts

Next Steps

Organize Events

Create events to present materials and engage with your audience

Moderate Content

Learn how to moderate materials and ensure quality standards

Build docs developers (and LLMs) love