James Crosslin
seal-mask

James Crosslin

Techdegree Graduate

Las Vegas, NV
Open to Work

16,882

Total Points

Points are earned whenever you take an important action on Treehouse.
Learn more about when and how points are earned.

Skills & Experience

  • Company

    Freelance

  • Job Title

    Full Stack Developer

  • Spoken Languages

    • English

168 Achievements

  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • React Router and Authentication
  • Introducing the Authentication Project
  • Implementing Basic Authentication
  • Regular Expressions
  • Algorithms in Code
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Validating Data
  • The Importance of Data Validation
  • Retrieve Related Data in Sequelize Queries
  • Create Related Data Using Sequelize Models
  • Data Relationships in Sequelize
  • Understand Data Relationships
  • Performing CRUD Operations
  • Defining Models
  • Getting Started with Sequelize
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Finding the Data You Want
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • React Component Patterns
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • 5 Star Techdegree Reviewer
  • JavaScript Frameworks, Libraries, and Developer Roles
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Common Commands
  • Directories and Files
  • The Command Shell
  • 1st Techdegree Peer Review
  • Practicing Getters and Setters
  • Reformatting User Input
  • Validating a Form with Regular Expressions
  • Regular Expressions
  • Exterminator
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • The Role of Selectors in JavaScript
  • Pseudo-classes and Combinators
  • Selector Basics
  • Getting Started with CSS
  • Basic Selectors
  • Understanding Values and Units
  • The Box Model
  • Basic Layout
  • Designing with the Latest Features
  • Fundamental Concepts
  • Table Basics
  • Structuring Tables
  • Introduction To Accessibility
  • Build an Accessible Form
  • Form Basics
  • Organizing Forms
  • Choosing Options
  • Getting Started With HTML
  • Structuring Your Content
  • Images, Text and Links
  • Going Further with HTML
  • Getting Familiar with HTML and CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Make It Beautiful with CSS
  • Adding a New Web Page
  • Getting Data from a Database
  • Adding the Game Logic
  • Making the Game Interactive
  • Data, Databases and SQL
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Getting the REST You Need 2
  • Asynchronous Code in Express
  • Practicing Classes
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Deeper into Routing with Express
  • GET and POST Requests in a Browser
  • Using Templates with Express
  • Getting Started with Express
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • JavaScript Outside of the Browser
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • JavaScript Objects and Conditionals
  • Creating a Simple Server in Node.js
  • Creating a Command Line Weather Application
  • Practice forEach
  • Handling Errors in Node
  • Getting Data From an API With Node
  • Combining Array Methods
  • Introduction to Node.js
  • Create Function Using Arrow Syntax
  • JavaScript Arrays and Loops
  • JavaScript Functions
  • Data Types and Variables
  • Rendering the Game
  •  Building Constructor Methods and Generating Objects
  • Introducing 'Four in a Row'
  • Array Manipulation
  • Checking Out and Returning a Book
  • Starting with Some Methods
  • The Rough Plan
  • Array Iteration
  • Getters and Setters
  • Working with Classes in JavaScript
  • Practicing Object Basics
  • Object Basics
  • Introduction to Object-Oriented JavaScript
  • Introduction to HTTP
  • Exploring Async/Await
  • Understanding Promises
  • Time Complexity
  • Asynchronous JavaScript with Callbacks
  • What is Asynchronous Programming?
  • The Browser Environment
  • Getting a Handle on the DOM
  • Making Changes to the DOM
  • Callbacks and the DOM
  • JavaScript is Everywhere
  • JavaScript Tools and Workflows
  • Object Basics
  • Loop Through Objects
  • Store Multiple Values in an Array
  • Loop Through Arrays
  • Multidimensional Arrays
  • Callbacks with Timers
  • Simplify Repetitive Tasks with Loops
  • Working with 'for' Loops
  • Create Reusable Code with Functions
  • Pass Information Into Functions
  • Arrow Functions
  • Working with Numbers
  • The Math Object
  • Introduction to Callback Functions
  • Hello, JavaScript!
  • Storing and Tracking Information with Variables
  • Working With Strings
  • Making Decisions in Your Code with Conditional Statements
  • Programming AJAX
  • Responding to User Interaction
  • Playing a Counting Game
  • AJAX Concepts
  • Traversing the DOM
  • Imposter Syndrome
  • Newbie