Chapter 15.2โ˜• 25 min read

Hyderabad Job Board

Build a job listing platform with filters, pagination, detail pages, auth guards, resolvers, and custom pipes.

01What We'll Build

What We'll Build

A job listing platform for Hyderabad IT companies:

  • Browse jobs with filters by company/salary/type
  • Job detail page with resolver pre-fetch
  • Post a job (auth guard protected)
  • Pagination with signals
  • Custom salary pipe (Indian format)

"Hyderabad IT ka job board โ€” TCS, Wipro, Infosys ki jobs ek jagah"

Uses: Routing params (Ch 6.2), Guards (Ch 6.5), Resolvers (Ch 6.6), Pipes (Ch 4.3), Signals (Ch 10).

02Project Structure

Project Structure

src/app/
โ”œโ”€โ”€ pages/
โ”‚   โ”œโ”€โ”€ jobs-list/
โ”‚   โ”œโ”€โ”€ job-detail/
โ”‚   โ”œโ”€โ”€ post-job/
โ”‚   โ””โ”€โ”€ company-page/
โ”œโ”€โ”€ components/
โ”‚   โ”œโ”€โ”€ job-card/
โ”‚   โ”œโ”€โ”€ job-filters/
โ”‚   โ”œโ”€โ”€ pagination/
โ”‚   โ””โ”€โ”€ salary.pipe.ts
โ”œโ”€โ”€ services/
โ”‚   โ”œโ”€โ”€ job.service.ts
โ”‚   โ””โ”€โ”€ company.service.ts
โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ job.model.ts
โ”‚   โ””โ”€โ”€ company.model.ts
โ”œโ”€โ”€ guards/
โ”‚   โ””โ”€โ”€ auth.guard.ts
โ””โ”€โ”€ resolvers/
    โ””โ”€โ”€ job-detail.resolver.ts
03List & Filter

Core Features โ€” List & Filter

  • Job list with @for and track (Ch 3.7)
  • Filter by: company, min salary, job type (full-time/part-time), location
  • Filters as signals โ†’ computed filtered list (Ch 10.2)
  • Custom CurrencyPipe for Indian format (Ch 4.4)

"Filter = job search โ€” sirf relevant jobs dikhao"

04Detail & Guards

Core Features โ€” Detail & Guards

  • Job detail page with route param /jobs/:id (Ch 6.2)
  • Resolver pre-fetches job data (Ch 6.6)
  • Post Job page protected by auth guard (Ch 6.5)

"Detail = job ka poora description, Guard = login kiye bina post nahi kar sakte"

05Pagination

Core Features โ€” Pagination

page = signal(1);
pageSize = signal(10);
paginatedJobs = computed(() => allJobs().slice(start, end));
totalPages = computed(() => Math.ceil(filteredJobs().length / pageSize()));

"Pagination = book ke pages โ€” 10 jobs per page, next page pe click karo"

Project Summary

  • Signal-based filters with computed() filtered list
  • Resolver pre-fetches job detail data
  • Functional auth guard protects post-job route
  • Signal-based pagination with computed()
  • Custom pipe for Indian salary format
Course Search
Search across all chapters & stages
๐Ÿ“–

Search the course

Type any topic โ€” branching, stash, rebase, hooks โ€” and jump straight to that chapter.

merge branchesgit stashundo commitrebase