Skip to main content
Using the CodeHS Project Catalog

Search for additional projects for students in the CodeHS Project Catalog App

Sara Jenis avatar
Written by Sara Jenis
Updated over a month ago
Banner: This is a Free Feature.

The Project Catalog is a curated list of projects that range from short, beginner-level projects that may take an hour or less to complete, to more challenging projects that could take several weeks. Projects often involve more problem-solving and open-ended problem statements and are designed to challenge students on skills already learned by combining concepts in ways they may not need to do with in-course assignments.

You can access the Project Catalog app by clicking on Project Catalog under the Curriculum category in the lefthand navigation menu.

Screenshot of the lefthand navigation menu with an arrow pointing to the Project Catalog under the Curriculum category of links.

Selecting Projects from the Project Catalog

With over 100 projects in the catalog, you may find it easiest to filter the results as you browse for a suitable project for your class. The results can be filtered based on the programming language, grade level, difficulty level, tag, or a keyword search.

Screenshot  of the Project Catalog app with the filters at the top highlighted. There are filters for Grade, Difficulty, Tag, Programming Language, and Keyword

Programming Language

The programming language is the language that that project is set up to run. Many projects are available in several languages, but you should select the the language students are using in your classroom, as starter code, solution code, and autograders will be based on this language. If more than one language is listed for a particular project, such as Javascript and HTML, both languages will be needed to solve the problem.

Grade Level

Projects are labeled as middle school or high school. These are suggested bands that can be used based on the level of your class.

Difficulty Level

Each project has a difficulty level of easy, medium, or hard. It is important to note that the difficulty is relative to other projects in that language. For example, an easy C++ project is easier than a medium C++ project, but C++ as a language may be more challenging than a language such as Python. As a result, easy C++ projects may be more challenging than easy Python projects.

Tags

  • Beginner - The beginner tag is used to signify a project that only requires introductory-level skills, such as input/output and basic control statements.

  • Autograded - The autograded tag is used to signify that the project has an autograder for at least some of the tasks of the project. Since projects tend to be more open-ended, even an auto-graded problem may still require teachers to review aspects of the student's code. Check out CodeHS Autograders to learn more about what our Autograders can check for.

  • AP CSA Lab - The AP CSA Lab tag is used to signify a project that is implemented from the official AP CSA College Board recommended labs. You can find more information about these labs, including sample solutions, in the AP Classroom on the College Board website.

More Details on Projects

Gif showing full details of Project Card, including the description, overview, demo, and estimated completion time.

Estimated Time - Each project card displays an estimated number of hours to complete that particular project. In general, more difficult projects involve more code and will take longer to complete.

Demos - When clicking into the project card, you will see demos for nearly all projects. The demos are there to provide an example of what the students may produce, however at times it may be hard to understand the demo without more context from the project instructions.

Project Overview and Description - Each project includes a description and brief overview of activities included. Clicking on the name of an activity will load a preview in the Code Editor.

Assigning Projects to Your Course

When assigning a project to your Course, the project will be added as a new module at the end of your Course. Once the project is assigned, you will have access to example solutions and Lesson Plans, when applicable. See Accessing Solutions and Lesson Plans for more information.

Assigning from the Project Catalog:

  1. Navigate to the Project Catalog under the Curriculum category in the lefthand navigation menu

  2. Choose the project you would like to assign.

  3. Click the green Assign button to add the project to one of your courses

  4. Verify which section(s) the project should be added to and click Assign. The project will be added as a module to the end of your course.

Gif demonstrating how to navigate to the Project Catalog and how to assign a project following the steps above.

Assigning from your Assignments App:

  1. Click the blue Add button and choose CodeHS Project.

  2. Use the search bar to find the Project you would like to add.

  3. Click Assign

Screenshot of the Assignments app with the blue Add button clicked and an arrow pointing to CodeHS Project in the dropdown menu.

Demo Video


Still have questions? Contact our team at hello@codehs.com to learn more!

Did this answer your question?