Online Teaching Environment

A virtual online computer lab

CoCalc moves an entire computer lab into the cloud. Every student works online inside their own, isolated workspace.

Organizing files made easy: CoCalc's course management interface gives you full control over distributing, collecting, grading and returning everyone's assignments.

Follow the progress of each student in real-time: If a student needs help, open the student's file and see exactly what the student sees. This helps enormously with giving quick and precise help.

Common underlying software environment: There is no complicated software setup necessary! Everyone works with the very same software, which eliminates slight inconsistencies between your and the students' environments.

Learn more in the Instructor Guide.

Teaching a course online

Have you experienced the pain of setting up the software environments for your students? With CoCalc no software needs to be setup and you can finally focus on your students!

Combined with CoCalc's other unique features you can manage your class more effectively:

  • At any time you can jump into a file of a student, right where they are working.
  • Use TimeTravel to see each step a student took to get to the solution.
  • Consistent and immutable Backups make losing files impossible.
  • Integrated chat rooms allows you to guide students directly where they work or discuss collected files with your teaching assistants.
  • The project's Activity Log records exactly when and by whom a file was accessed.

Follow the Instructor Guide to create a course file, add your students, distribute assignments and handouts, and later collect and grade their homework.

Available tools

Jupyter Notebooks

CoCalc's own Jupyter Notebook implementation offers real-time synchronization, time-travel, automatic grading, side-chat, and more.

Sage Worksheets

Sage Worksheets are similar to Jupyter Notebooks, but made to work well with SageMath.

LaTeX Editor

A full LaTeX editor supporting preview rendering, forward/inverse search, error reporting, and more.

Linux Terminal

Access all powerful tools in a full Linux environment.

NBGrader support

CoCalc's Jupyter Notebooks fully support automatic and manual grading!
The teacher's notebook contains exercise cells for students and test cells, some of which students can also run to get immediate feedback. Once collected, you tell CoCalc to automatically run the full test suite across all student notebooks and tabulate the results.
Learn more about NBGrader in CoCalc.


I just found out that my CoCalc class got by far the best course evaluations for any course I've taught at UCSD to date (over 85% on the favorable/­unfavorable scale), which makes it a sure thing that I'll be teaching this course again (in some form) next year! Many thanks for the backend work on CoCalc, for the course materials, for the guest lecture...

Kiran Kedlaya — UC San Diego, March 2017

CoCalc provides a user-friendly interface. Students don't need to install any software at all. They just open up a web browser and go to and that's it. They just type code directly in, hit shift+enter and it runs, and they can see if it works. It provides immediate feedback. The course management features work really well.

Will Conley — Math professor, University of California at Los Angeles, Fall 2016

start free, upgrade later