Project tutorial
Build an ASP.NET Ecommerce Store
Build Rivergate Market with ASP.NET Core, Razor Pages, Tailwind, PostgreSQL, session auth, catalog, cart, checkout, seller product CRUD, search, password recovery, and deploy notes.
How this project works
Rivergate Market is an original teaching storefront in twelve complete snapshots. Clone once and run any numbered folder without rebuilding earlier stages.
The path starts with ASP.NET Core and Razor Pages, then adds routing, layouts, isolated PostgreSQL catalogs, product pages, accounts, session carts, addresses, seller-owned product CRUD, search, password reset, and production deploy notes.
Authentication uses custom session forms—no scaffold starter kits.
Snapshots 4–12 seed [email protected] and [email protected] with password123. Local PostgreSQL runs on host port 5449 with databases river_01–river_12.
Start with part 1 Open GitHub repo
Parts in order
Work through the parts in sequence. Each lesson explains the ideas in plain language, then points you to a complete runnable snapshot on GitHub for that stage.
- Part 1: Getting StartedBoot ASP.NET Core with Razor Pages on port 5082.
- Part 2: RoutingRegister shop routes for catalog, cart, and health.
- Part 3: Layout and UIBuild a shared Tailwind layout and product card shell.
- Part 4: Data LayerModel categories and products with migrations and seeds.
- Part 5: Catalog and DetailRender a catalog and product detail page by slug.
- Part 6: RegistrationValidate customer accounts and store password hashes.
- Part 7: Login and Session CartAuthenticate users and keep a session shopping cart.
- Part 8: Profiles and MediaEdit profiles, shipping addresses, and product images.
- Part 9: Cart, Checkout, and OwnershipCheck out orders and protect seller product mutations.
- Part 10: Pagination and SearchPaginate the catalog and filter by name or category.
- Part 11: Password ResetIssue expiring one-use password reset tokens.
- Part 12: DeployPrepare Rivergate Market for production hosting.