Welcome to the Library
This is a complete catalog of all the content we offer. Browse by topic, type or difficulty.
Ready to start learning?
Our Basic plan students get access to our entire library. Pro students get access to bonus content, conferences and more.View pricing
Browse courses across an array of topics and disciplines
Build a Weather App With Swift
In this project, we're going to build a weather app together and broaden our understanding of Swift and Cocoa Touch frameworks. We will start by learning foundational concepts like networking and concurrency while building on our existing knowledge of data modeling, Auto Layout and more. We’ll even take a look at how we can structure our code better and construct decoupled classes and structs that lead to greater code reuse. By the end of this project you will have built your second iOS app and be well on your way to becoming an iOS developer.
One of the more powerful features in Swift are closures. Similar to blocks in Objective-C, closures allow you to encapsulate functionality and pass it around in your code. In this course, we’re going to take a look at the underlying principles behind closures, the different ways we can write closures and how closures are used in iOS development.
In this course, you will learn how APIs work and how to customize them using the popular MailChimp API.
Google Play Services
Google Play Services are a suite of APIs that give developers access to Google’s extensive cloud services and access the user’s Google account for personalization on Android devices. Google Play Services comes pre-installed on user’s devices and auto-updates every 6 weeks providing the latest APIs on all devices accessing the Play Store. You’ll learn the code necessary to access APIs like Google+ to bring personalization to your user experience. You’ll learn common errors and how to handle devices that can’t access Play Services. When you’re done you’ll be able to add other services like Maps, Cast, or Ads to elevate your app above the competition.
Browse content by the topics that interest you most.
- Development Tools
- Digital Literacy
Technology-focused presentations of tips, tricks, and tutorials.
Using the Requests Library
The requests library is one of the most popular Python libraries, period. It's amazingly friendly and useful and makes working with RESTful APIs on the Internet a breeze. In this workshop, we'll look at how to use the library to make GET, POST, and other requests, how to process JSON data, and how to handle HTTP Basic and Digest auths.
Regular Expressions in Java
Regular Expressions are an extremely handy tool to have at your disposal. They are also incredibly intimidating looking if you don’t know how or why someone is using them. Regular Expressions are common in just about every programming language, and developers have leaned on their power for many solutions. We use them for searching, replacing and validating that text meets certain formats.
Flash Messages Using Slim
Using the Slim Frameworks Flash Messages and Session Store Middleware combined with Twig template language we will provide feedback to our users about form data and email.
Ruby on Rails Scaffolding
Scaffolding in a rails application sets up resources for you to work with in your application. This is a really fancy way of saying that it creates a model, controller, migration, etmplates, and assorted files. Scaffolding is a great start to the app but is meant to be replaced over time. In this workshop, you'll learn in depth how it works.
Bonus material is exclusive to Pro membership and includes series covering new processes in design, development and illustration.
29 hoursBonus Series
The Treehouse Show
The Treehouse Show is your weekly dose of web design and web development news, hosted by Nick Pettit and Jason Seifer.
10 hoursBonus Series
Treehouse Friends is a series of interviews with interesting people in the web design and dev fields and other industry experts.
3 hoursBonus Series
Treehouse Quick Tips
Treehouse Quick Tips are fast and easy lessons that you can start applying now. Learn to create stunning designs in Photoshop, beautiful websites, and useful mobile apps for Android and iOS.
3 hoursBonus Series
Welcome to Treeviews, the show where Treehouse members submit their work - website, app, or other project - and a panel of Treehouse teachers offers feedback.
Watch talks from influential industry leaders. This content is exclusive to Pro members.
Generate NYC 2015
Generate New York City brings together some of the biggest names in Design today. It's the perfect opportunity to learn from the best in web design, be inspired, and meet great people.
Creative South 2015
Creative South is an annual design conference in Columbus, GA.
FOWD New York
Learn how to build apps across platforms that Users can't do without. Make other developers your business partners and watch your company grow!
The following items are scheduled to be released soon. You can also visit our content roadmap for more info.
Build a Blog with Jekyll and GitHub Pages
Learn how to create websites with Jekyll, one of the most widely used static site generators. With Jekyll, you can build a blog, a portfolio, or any website without having to depend on a database or content management system. You will also learn how to host your Jekyll site, for free, on GitHub pages.
Called interfaces in other languages, protocols define a blueprint of methods, properties, and other requirements that suit a particular task or piece of functionality. Protocols allow us to build flexible, decoupled objects without the limitations of inheritance.In this course, we’ll learn how to write basic protocols in Swift, how they are used in iOS development and how they lead better code reuse.
Enhance a Weather App With Table Views
Table views are used in lots of cool ways in iOS apps. They let us display structured data in a simple manner. In this course we are going to use table views to add weather data for the upcoming week to our weather app from the previous course.
These days, just about every software team says they are “Agile.” You will even find many job openings declare familiarity with Agile software development as a prerequisite. What can you do to become familiar with, and knowledgeable in Agile practices so you can hit the ground running with your next team? In this course, we will cover the Scrum model, a commonly-used flavor of Agile which is well known for its clear definition of team members’ roles and the activities carried out by the team. This course will give you an understanding of Scrum and how it is used by teams in the process of building software.
Local Development Environments
This course will introduce you how to set up your development environment on your local machine. We will take a deeper look at the Java technology and learn tips, tricks and best practices that will make you more productive.
How the Internet Works
Knowing how stuff works will make you a more thoughtful and powerful user of technology. In this course we'll explore how the Internet works, by investigating Internet hardware like routers, switches, and servers and the TCP/IP protocols that define how things are done on the Internet.
SEO for WordPress
This course covers how to optimize a WordPress site for search engines. We will cover a content first approach of making sure that the content stands strong on its own. Then we will look at things that can be done to a theme to help search engines understand the content on your site. Finally we will look at SEO plugins that help take your SEO efforts even further.
Genesis Theme Development
Genesis child themes are the way we make Genesis (and WordPress) look and behave how we and clients want. They follow many of the steps of a traditional theme, but since it is a child to a framework, there are additional functions and conventions to account for and leverage. In this course, you will learn how to create a Genesis child theme by converting a stand-alone theme into a Genesis child theme.
Custom Menu Development in WordPress
WordPress allows for easy and powerful customization of menus from the admin area using the Menu options page. However, sometimes you need to go above and beyond what is available by default. In this course we show how to customize how menu’s output on the frontend of the site using the Walker class. We also show how to add custom menu fields to the admin area.
When it comes to Python web frameworks, the elephant (pony?) in the room is Django. Let's explore this framework and build the prototype of an e-learning site. We'll look into Django's admin, ORM, migrations, and template system. In the end, you'll have a project you can use to explore even more of the Django world.
NPM is a command line tool to help you manage Node.js modules and this course will get you up and running with NPM.
Express is a "Fast, unopinionated, minimalist web framework for node." In this course you'll learn how to build an Express site from scratch!