Skip to content

CS 408 Full Stack Web Development

Catalogue Description

CS408 - Full Stack Web Development (3-0-3)(F). Learn how to apply various technologies used for client-side and server-side web development. Learn advanced concepts behind competing web technologies, best practices for design and usability, and build rich, dynamic, n-tier secure and scalable web applications. Tools used will be mainly open source such as HTML, CSS, JavaScript and server-side technologies such as Node.js. Topics include templating, single page apps, multi-page apps, continuous integration, and advanced serverless deployments using AWS or Azure. PREREQ: CS208, CS321

Course Logistics

  • Email: shanepanter (at) boisestate.edu
  • Office Hours: Book an appointment
  • Classroom: Online (Asynchronous)
  • Semester: Fall 2026
  • Class Time: N/A (Asynchronous)
  • Textbook: None

Learning Objectives

TLOSLOObjective
1Create a Full Stack Web Application
1.1Use a Database to store state information about your application
1.2Apply responsive UI design techniques that displays correctly on both desktop and mobile
1.3.Use JavaScript to add interactive components to your websites.
1.4Use backend templates reduce repetitive HTML and produce dynamic content based on conditionals.
1.5Given several professional frameworks that you could use (React, HTMX, etc.) evaluate their pros and cons for your selected domain
2Apply Advanced HTML and CSS properties
2.1Explain the purpose of advanced HTML/CSS tags
2.2Use advanced HTML tags in your designs
2.3Use advanced CSS to style HTML elements.
2.4Apply styles using id and class attributes.
3Given JavaScript in a Full Stack environment, Explain Its Purpose
3.1Identify the differences between using Javascript on the frontend vs backend
3.2Use async/wait where appropriate
3.3Use callbacks where appropriate
3.4Use AJAX to retrieve and manipulate HTML elements and properties.
4Develop an Accessible Website
4.1Understand why WAI-ARIA was created (very simple explanation)
4.2Memorize a given list of important WAI-ARIA rules (the plain language version)
4.3Explain in layman's terms the given list of important WAI-ARIA rules
4.4Given a specific accessibilty problem, identify the appropriate section of the WAI-ARIA document that contains the rules
4.5Explain the legal ramifications for not creating accessible websites
4.6Describe the elements of an accessible design
4.7Incorporate common accessibility features from a given list
5Establish advanced program development strategies
5.1Use a debugger for both front end and backend
5.2Explain when you need to write tests and when you don't
5.3Use web developer tools to inspect existing web pages and network traffic.
5.4Use the Chrome Developer Tools and console logging to debug JavaScript in your web pages.
6Apply good software engineering practices (cross cutting)
6.1Use Version Control for all projects
6.2Configure and Use Continuous Integration and testing with github actions
6.3Configure and Use Automatic Version extraction from github tags
6.4Configure Continuous deployment
6.5Configure Continuous Integration

Assessments

Your final grade is based on work you ship to the class GitHub repository as merged pull requests. There are no exams. There are no individual homework assignments.

GradeMerged PRsReviews Given
A≥ 12≥ 10
B≥ 8≥ 6
C≥ 5≥ 0
D/F< 5

A merged PR must: pass all CI checks (ruff, pyright, pytest), have 2 peer approvals, and be linked to a GitHub issue. Canvas weekly reflections (10%) and the final demo video (10%) round out the grade.

Participation

Participation happens on GitHub, not Canvas. Leaving a substantive code review counts as participation. Opening a well-written issue counts. Posting a weekly reflection in Canvas also counts (required every other week, see the schedule).

Grading Policy

Grades will be posted in Canvas and calculated using the percentages below. Final grades will not be rounded. Extra Credit opportunities are available throughout the semester to help improve your final grade.

Letter GradePercentage
A94% – 100%
A-90% – 93.99%
B+87% – 89.99%
B84% – 86.99%
B-80% – 83.99%
C+77% – 79.99%
C74% – 76.99%
C-70% – 73.99%
D+67% – 69.99%
D64% – 66.99%
D-60% – 63.99%
FBelow 60%

Extra Credit Opportunities

Standing extra credit is always available to help students on a grading boundary. Extra credit earned over the semester cannot exceed 2.5% of total points offered (e.g., a maximum of 25 points in a 1000-point course).

  • Typos and Bugs — If you find a typo or bug in the course materials, click the "Edit this page" link at the bottom of any page, make the correction, and submit a pull request. If your pull request is merged you will receive 5 bonus points. Read carefully — there are deliberately placed errors throughout the materials. 🦅

TIP

Submitting a pull request is the core objective of this extra credit. No points will be awarded for any other submission method. If you click "Edit this page" and don't see the content you want to fix, look for a <!--@include: ../path/to/file.md --> directive — that points to the source file that actually needs editing.

Homework Policy

Unless explicitly stated otherwise, all work is individual. Group assignments will be clearly marked. The Kount Computer Learning Center (CCP 241) is accessible 24/7 by proxy card to all students enrolled in CS courses and has all the software you will need.

AI Policy

There is no restriction of AI use in this course. You may use AI tools to help you with your work, but you are responsible for ensuring that your work is accurate and meets the requirements of the assignment. You are strongly encouraged to explore the use of AI tools as part of your learning process, but you should not rely on them exclusively. If you use AI tools, you should disclose this in your work and provide a brief explanation of how you used them.

Attendance Policy

I follow the official attendance policy as defined by the university. Students are responsible for all announcements made during class. If you miss a class, it is your responsibility to get caught up. Students with an excused absence should contact me as soon as possible to arrange make-up work. Students who are chronically late may lose up to 10% of their final grade for excessive tardiness after receiving a written warning.

Late Work Policy

Homework assignments may be submitted up to 2 days late with no penalty. After the grace period, no submissions will be accepted unless prior arrangements were made before the original due date. No work or extra credit will be accepted after the last day of course instruction — the semester must end at some point, so plan accordingly. Work submitted 1 second late is treated the same as work submitted 1 day late. You can find the last day of course instruction on the registrar's academic calendar.

Compressed Semesters

For courses taught in a 5-week or 7-week session, the last day of course instruction is NOT the same as a regular 15-week semester. Consult the registrar's academic calendar for the exact date.

Exam and Quiz Policy

All exams and quizzes must be completed within the time frame specified in Canvas unless prior arrangements have been made. Extensions are granted on a case-by-case basis for circumstances outside the student's control. Some assessments may require the testing center — it is the student's responsibility to schedule their own appointment in a timely manner.

Class Interaction Policy

All class interaction assignments must be completed within the time frame specified in Canvas or during the lecture unless prior arrangements have been made. Interactive assignments are only valuable when everyone participates at the same time. It is not fair to classmates who submitted on time to have to respond to or view late submissions. The secret code for the syllabus quiz is "green".

This applies to (but is not limited to):

  • Discussion posts
  • Reflections (written and video)
  • Group meetings (virtual and in person)
  • Status updates
  • In-class activities
  • Paper quizzes and exams

Communication Policy

Outside the classroom, communication will be through email, Canvas, and office hours. Other methods such as carrier pigeon 🐦 are not supported.

If you do not receive a reply within 48 hours, verify you are emailing from BroncoMail and send a follow-up. You can also message through Canvas if email is not going through. Please include the following in all emails:

  • First and last name
  • Student ID
  • Course and section number (e.g., CS452 – Section 1)

BroncoMail is the official university communication channel. Check it two to three times per week. Your instructor will not respond to emails from personal accounts (Gmail, Yahoo, etc.). See University Policy 2280 for details.

Emails are answered within 24 hours, Monday–Friday, 9:00 am–5:00 pm (MST). Emails sent on weekends or outside those hours will receive a reply on the next business day. Reserve email for private matters such as grades — general course questions belong in the class discussion forum.

IT Support Policy

Your instructor and teaching assistant cannot provide IT support for personal machines. If you cannot get your personal machine configured correctly, use a lab machine to complete your work.

Labs and Other Building Spaces

The CCP building (downtown Boise) has three labs secured by proxy card access. All lab machines are supported by department IT staff and are guaranteed to work.

  • Kount Learning Center (CCP 241) — Accessible 24/7 by proxy card to all CS students. See the Success & Tutoring page for details.
  • CS 121 Classroom Lab (CCP 242) — Accessible 24/7 by proxy card, but not available during scheduled courses and labs (see the schedule posted outside the lab).
  • Metageek Lab (CCP 240) — Accessible 24/7 by proxy card, but not available during scheduled CS courses and labs (see the schedule posted outside the lab).

University Policies

Violations of university policies may result in a failing grade (F) for the course. All students are required to review the following:

Student Support

Boise State cares about your success. Help is available for technical, academic, financial, and personal needs, as well as learning accommodations. Nearly all services are available to online students as well.

Released under the MIT License.