CAPSTONE PROJECT SUMMARY

Virginia Market Square — Full-Stack E-Commerce Platform

CIS2987 Capstone · Spring 2026 · Arnold Marten

9
Phases
48
Tasks
51.5
Hours
100%
Complete
42
Products
Course CIS2987 — Capstone
Instructor Anup Parajuli
Semester Spring 2026
Start Date March 9, 2026
End Date April 22, 2026
Repository GitHub
Live Site View Site
PM Software GitHub Projects
Final Report View PDF

PROJECT SUMMARY

Virginia Market Square is a full-stack, multi-vendor e-commerce web application designed for a farmers market in Virginia, Minnesota. The platform supports three distinct user roles — customers, vendors, and administrators — each with dedicated dashboards and role-specific functionality.

Customers can browse 42 products across 9 local vendors, filter by category, search by keyword, manage a shopping cart, and complete purchases through Stripe payment processing. Vendors manage their product listings, view order history, and track sales metrics through a dedicated portal. Administrators oversee the entire marketplace with tools for user management, vendor approval, event scheduling, and contact submission review.

The application was built from scratch over 9 phases using PHP 8.x with MySQLi prepared statements, a 12-table normalized database (3NF), Bootstrap 5.3 for responsive design, and vanilla JavaScript for client-side interactivity. Security was a priority throughout: bcrypt password hashing, CSRF token protection on all forms, XSS output escaping, and Stripe's PCI-compliant Payment Element ensure card data never touches the server.

PHP 8.x MySQL / MariaDB Bootstrap 5.3 JavaScript ES6+ Stripe API HTML5 / CSS3 GitHub Actions CI/CD IONOS Hosting

PROJECT TIMELINE — PHASE SUMMARY

# Phase Tasks Est Hrs Act Hrs Completed Status
1Planning, Design & Database Architecture65.05.5Mar 10–12Done
2Advanced Database & Environment Setup46.06.5Mar 19Done
3User Authentication Systems55.55.5Mar 21Done
4Backend Pages & API Logic1314.014.0Mar 22–27Done
5E-Commerce Payment Integration (Stripe)33.03.0Apr 4Done
6Frontend & Responsive Design117.57.5Apr 7–12Done
7JavaScript & Interactivity43.03.5Apr 19Done
8Content, Images & Sample Data22.01.5Apr 21Done
9Testing, Optimization & Deployment23.02.5Apr 22Done
TOTAL — 9 phases4848.551.5Mar 10–Apr 22COMPLETE

PROOF OF COMPLETED TASKS

Screenshots from the production site demonstrating all major features across all three user roles.

Click any screenshot to enlarge.

Virginia Market Square Homepage
Homepage
Products catalog page
Product Catalog
Product detail page
Product Detail
Shopping cart
Shopping Cart
Checkout with Stripe Payment Element
Checkout & Stripe
Order confirmation
Order Confirmation
Login page with validation
Login & Validation
Customer dashboard
Customer Dashboard
Vendor dashboard
Vendor Dashboard
Admin dashboard
Admin Dashboard
Admin vendor management
Admin — Vendors
Admin user management
Admin — Users
Mobile responsive view
Mobile Responsive

PROJECT MANAGEMENT

GitHub Projects was used as the project management tool throughout the capstone. All 48 tasks were tracked as GitHub Issues organized into 9 phases, with progress automatically updated via a GitHub Actions workflow that queries the project board through the GitHub GraphQL API.

GitHub Projects board — timeline view showing all 9 phases
GitHub Projects — Timeline View (All 9 Phases, 48 Tasks)
GitHub README showing auto-updated phase progress table
GitHub README — Auto-Updated Phase Progress (GitHub Actions)

TASKS NOT COMPLETED

All 48 planned tasks across 9 phases were completed. No tasks were left incomplete or deferred.

One infrastructure item remains outstanding: SSL/TLS certificate activation on the IONOS production domain. The hosting plan's free SSL certificates are fully allocated to other domains in the account, and the system-generated domain (s1085477016.onlinehome.us) does not support custom certificate assignment through IONOS. This is a hosting provider limitation, not an application deficiency — the application implements comprehensive security at every layer (prepared statements, bcrypt, CSRF, XSS escaping, Stripe PCI compliance).

FINAL DOCUMENTATION

The following deliverable documents were produced as part of the capstone project:

Capstone Final Report PDF · 1.2 MB · Spring 2026

Comprehensive Test Report

76 test cases across 10 feature areas. Authentication, product browsing, cart, Stripe checkout, three dashboards, public pages, form validation, responsive design. 100% pass rate.

Security Audit

45 security controls audited across 7 domains: SQL injection, XSS, CSRF, authentication, Stripe, configuration, input validation. OWASP Top 10 mapping included. All controls rated SECURE.

Deployment Documentation

Complete setup guide: tech stack, file structure, local development (XAMPP), CI/CD pipeline (GitHub Actions), database management, crash recovery, troubleshooting.

Weekly Progress Reports (7)

Seven weekly reports documenting activity logs, reflections, proof of completed tasks, and updated project timelines across the full development cycle.

Database Design Document

12-table schema in 3NF with ER diagram, foreign key relationships, indexes, and design rationale. All monetary values DECIMAL(10,2), InnoDB with utf8mb4.

Project Charter

Scope definition, user roles, feature requirements, technology stack, timeline, and success criteria established at project inception.

REFLECTION & CONCLUSION

This capstone project was the most technically demanding work I've undertaken. Building a full-stack e-commerce application from scratch — with three user roles, a normalized 12-table database, Stripe payment integration, and a CI/CD deployment pipeline — required me to apply and extend every skill from my coursework in a single integrated project.

The biggest technical growth came in backend development. Writing complex SQL JOINs that pull product data with vendor names and category labels, building database transactions with rollback for order creation, and implementing session-based authentication with role-specific access control were all areas where I went from textbook understanding to practical fluency. The Stripe integration was a highlight — understanding the PaymentIntent workflow (create server-side, confirm client-side, verify server-side before touching the database) gave me real insight into how production payment systems work.

READY TO SEE MORE?

Explore the full portfolio or get in touch about your next project.

VIEW ALL WORK