Skip to content

Add separate pages for each tag and location #37

@olegp

Description

@olegp

Summary

Add dedicated filtering pages for tags and locations in Techtribes. Users will be able to navigate to dedicated pages for each technology tag and geographical location, with support for hierarchical location filtering (country → city).

Note: This implementation focuses on separate tag and location pages only. Combined filtering (e.g., /tags/javascript/locations/helsinki) has been intentionally excluded to keep the implementation simpler and avoid generating hundreds of static pages.

Problem Statement

Currently, the Techtribes site displays all communities on a single page. As the number of communities grows:

  1. The homepage becomes cluttered and harder to navigate
  2. Users cannot easily discover communities by specific interests (tags) or locations
  3. No direct URLs exist for sharing filtered views
  4. SEO opportunities for specific technologies and locations are missed

Goals

  1. Create dedicated pages for each tag (e.g., /tags/javascript)
  2. Create dedicated pages for locations with hierarchical support (e.g., /locations/finland, /locations/finland/helsinki)
  3. Make tags and locations clickable throughout the site
  4. Maintain SEO-friendly URLs and metadata
  5. Enable future expansion to handle growing community count

URL Structure

Prefixed URLs to avoid namespace conflicts:

/tags/:tag                           # All communities with a specific tag
/locations/:country                  # All communities in a country
/locations/:country/:city            # All communities in a specific city

Examples:

  • /tags/javascript - All JavaScript communities
  • /locations/finland - All communities in Finland
  • /locations/finland/helsinki - All Helsinki communities

User Experience

  • Organic filtering: All filtering happens through clickable tags and locations within the content itself
  • No separate filter UI: No filter buttons, dropdowns, or sidebars
  • Clickable tags: Each tag badge on a community card links to that tag's page
  • Clickable locations: Location text on each card links to that location's page
  • Related filters: Each filter page shows related tags/locations for discovery
  • Breadcrumb navigation: Clear hierarchy (e.g., "← Back / Finland")

Key Features

  • Tag pages showing all communities with that technology
  • Country-level location pages showing all communities in that country
  • City-level location pages showing communities in specific cities
  • Statistics on each filter page (community count, upcoming events, etc.)
  • Related filters for cross-discovery
  • SEO-optimized with proper meta tags and structured data
  • Sitemap generation including all filter pages
  • Mobile-responsive design

Implementation Notes

  • Built for the Remix rewrite (see docs/remix-rewrite.md)
  • Static site generation for all filter pages
  • TypeScript with full type safety
  • Uses shadcn/ui components and Tailwind CSS

Detailed Plan

See docs/separate-pages.md for the complete implementation plan with code examples, architecture details, and phase-by-phase breakdown.


Prerequisites: Remix rewrite must be completed first (issue TBD)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions