Inspire students by turning their imagination to creative code exploration. Ages 8 to 108.

Our Courses

We believe in teaching students how to use their imagination to explore unlimited possibilities and create the things they love with code. At Codecraft Works, it all starts with WHY we code. We begin the learning experience with an exploration of real-world applications, concepts, and problems that help students understand how the skills and knowledge they are learning in school can be applied to everyday life. Our Certified Codecraft Instructors teach their students how to apply creative problem solving with computer science to create things with purpose and meaning. Students of all ages build a positive social connection with mentors, their community, and technology. Computer science coupled with expressing their interests, their passions — means a brighter future for everyone.

Block Programming Intro to CS & Engineering

Intro to CS & Engineering

Description

If computer science and software engineering are new to you, and maybe even a little bit intimidating, this course is a great way to get started! This course introduces students to the concepts and vocabulary required to work in any coding language. Using a block-based system, we can focus on the application of concepts and technical problem-solving techniques without the associated syntax. Passionate about video games, saving the planet, a mission to Mars, or impossible quizzes? This course provides you with the basic knowledge and skills you need to create your first passion projects and share them with the world. No previous programming experience is required for participation.

Objective

This course aims to teach the basics of computer science concepts and software engineering in a fun and dynamic way for first-time or practicing makers. Students will build technical vocabulary and a solid understanding of foundational computer science concepts. By the end of the course, students will be able to take a prompt in any subject and combine it with the power of new computer science and software engineering knowledge to showcase an original computer program with confidence.

Requirements

  • A stable internet connection.
  • A web browser that supports Flash Player. (Chrome is the preferred browser.)
Web Master

Web Master

Description

Everything that you see when using the web is a combination of HTML5, CSS, and JavaScript. Come create your own online games, web apps, and websites that you can share with your family and friends! Amaze people with your creations as you play with HTML5, CSS, and Javascript. Already familiar with web development? Increase your skills by mastering intermediate and advanced front-end development projects.

Objective

This course will teach you all you need to know to create your own website. You will understand the difference between HTML5, CSS, and Javascript. You will learn the correct usage of each of these tools and how to integrate all three into any website you can imagine.

Requirements

  • A stable internet connection
  • Access to  codepen.io
Level Up! Platform Game Development

Level Up! Platform Game Development

Module 1

Description

This module is designed for older beginners and intermediate level coders. We will focus on using an Independent Development Environment (IDE) to rapidly create fun and modern 2D games for any web browser! You will learn everything needed to make web games quickly and with relative ease. From layers to writing event-driven code, this module introduces students to the concepts they will need to create video games on a professional level.

Objective

This is a game development module. You will learn the basics of computer science through developing your very own web-based video game from start to finish. You will be able to create your own assets and design your own levels. You will understand the importance of User Experience and Game Design. You will become familiar with an HTML5 IDE and understand why these types of tools are so useful to independent developers and rapid development teams.

Level Up! Space Fighter Game Development

Level Up! Space Fighter Game Development

Module 2

Description

Build on your game creation knowledge. Now that you have created a game, we will delve deeper into the true power of the IDE. We will create a game that utilizes the built-in tools provided to us along with algorithms that we will develop together as a team. Level up your coding vocabulary as we introduce you to the mainstream programming model known as Object-Oriented Programming (OOP). Create code like you see the world as you create Objects and give them properties and functions to perform during gameplay. We will teach these concepts while walking you through how to create your very own Space Shooter video game.

Objective

You will be introduced to Object-Oriented Programming concepts such as Encapsulation and Objects. By using these concepts, you will write code that looks more and more like professional level programs. You will create your first User Interface and learn the importance of a properly designed game flow. We will explore physics-based movement and become less dependent on pre-written behaviors. You build your ability to create custom solutions to your game development needs.

Level Up! Object.io Game Development

Level Up! Object.io Game Development

Module 3

Description

As a final challenge, we will create our very own .io game. We will use this module to teach a more Object-Oriented driven project. We will be creating our very own Classes. We will design these classes to work together to create a final project that is more complex than any we have ever developed before. We will teach the vital importance of separating code into separate files and combining them all in a final game loop that will control the gameplay. This module will introduce a concept that can be found in any modern programming language, the Function. We will also create an Artificial Intelligence system that is robust and provides adequate challenge to our players. We will learn how to create a Leaderboard and how to save this board locally.

Objective

The objective of this module is to transition you from a purely event-driven coder into an Object-Oriented Programmer. We will teach you how to create and use a Class. You will also learn about key OOP concepts such as Inheritance, Encapsulation, Object, and Instancing. You will learn how to read from a saved file and how to save information from your game onto a local file. You will also learn how to add your project to the file sharing service known as Github. You will be able to upload your project to the web and have full access to it from anywhere with an internet connection. After this course, you will be able to transition into our Python course with ease.

Requirements

  • A stable internet connection.
  • An HTML5 compatible browser
  • The ability to install the Construct 2
  • Windows 7 or higher. (Currently Construct 2 only supports Windows operating systems.)
  • A graphics card that supports DX9 or DX11.
  • 1 gigabyte RAM. (This is to run the development tools. Some games created by students may require more.)
  • For more in depth requirements visit
  • Note: Construct 3 is a lightweight alternative to Construct 2. It is web based and requires no download. However, project size is severely limited.
Unity C# Game Development Level 1

Unity C# Game Development Level 1

Description

Whether your student is looking for a game industry career or simply curious about the way game developers think, Codecraft Works makes video game design and development FUN and approachable! Students explore concepts like gamification, the uncanny valley, and get an intro to C# development!

Requirements

  • A stable internet connection.
  • The ability to install the Unity Game Development Tools.
  • Windows 7 or higher 64-bit, macOS 10.9 or higher.
  • A graphics card that supports DX9 or DX11.
  • 1 gigabyte RAM. (This is to run the development tools. Some games created by students may require more.)
  • For more in depth requirements visit
Python Power

Python Power

Module 1

Description

Python is a powerful language used by sites like YouTube and Dropbox. In this course, we introduce students to the Python Coding Language. We teach the basics of Object-Oriented programming concepts using Classes, Variables, and Functions.

Objective

After taking this course, you will have an understanding of the different tools used in many Object-Oriented Programming Languages. You will be able to create Classes and Objects. You will be able to utilize these concepts, plus loops, functions, and variables, to create small-scale projects such as quizzes and text adventure games.

Module 2

Description

This course reviews and builds on the lessons from Module 1. We will revisit Object-Oriented programming and delve deeper into Inheritance, Encapsulation, Classes, and Objects. We will use the skills built in the previous module and introduce a new topic, Libraries. Students will expand their abilities by learning about Libraries and how to use them. We will teach students how to create their very own games using the PyGame Library.These games will include custom graphics, animation, and sound.

Objective

Your knowledge of the true power of Python will increase after this course. You will understand how to extend the power of Python through the use of Libraries. You will use the tools provided in these Libraries to create your own 2D video game. You will learn how to add your own images, animations, and sound effects to your game to make an entertaining environment in which to play! You will also build your knowledge of Object-Oriented Programming and how it is used to create a medium-scale, portfolio ready project.

Module 3

Description

Python 3 rounds out students’ coding experience by teaching how to tap into other application’s resources. We will teach students how to access and apply Application Program Interfaces (API) to build projects that can communicate and consume live data from other applications. Students will be challenged to use all that they have learned from Module 1 and Module 2 to integrate an API and build a full scale, dynamic, portfolio ready programming project.

Objective

At the conclusion of this course, students will be able to use Object-Oriented Programming techniques, Python Libraries, and open APIs to create projects that can consume data from other applications. You will have worked diligently to gain a good understanding of the capabilities of Python and be able to apply that knowledge to build other applications. After this course, you will be primed to succeed in an introductory college programming course, dominate that AP Computer Science course in high school, or get going on the side hustle project that motivated you to learn in the first place.

Requirements

  • A stable internet connection
  • Windows 7 or later, macOS, or Linux
  • 512 megabytes RAM (This is to run the development tools, some games created by students may require more)
Python Power

Ethical Hacking

Description

CyberPatriot is the National Youth Cyber Education Program. At the center of CyberPatriot is the National Youth Cyber Defense Competition. The competition pits teams of middle school students in the position of newly hired IT professionals tasked with managing the network of a small company. In the rounds of competition, teams are given a set of virtual images that represent operating systems and are tasked with finding cybersecurity vulnerabilities within the images and hardening the system while maintaining critical services in a six-hour period. Teams compete for the top placement within their state and region, and the top teams in the nation earn all-expenses-paid trips to Baltimore, MD for the National Finals Competition where they can earn national recognition and scholarship money.

Objective

CyberPatriot Competition teams meet, prepare and practice for competitions in cyber security. Beginner & Intermediate skills, self-motivated, focused middle schoolers welcome.

Requirements

  • A stable internet connection
  • Windows 7 or later, or Linux
  • The latest versions of Chrome and Internet Explorer