Skip to content

techtankto/techtank-site

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

245 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TechTank TO β€” Website Redesign

A Next.js (App Router) implementation of techtankto.com, Toronto's volunteer-run tech community website. The redesign moves away from a flat "link-tree" layout toward a conversion-oriented onboarding hub that funnels visitors into specific roles β€” attendee, speaker, host, sponsor, or organizer.

Specs live in prd/; application code lives in app/. The initial UI scaffold was generated from the PRD via v0 β€” original prompt and generation.

Stack

Getting started

Requirements: Node.js 20+ and pnpm 10.

pnpm install
pnpm dev

Then open http://localhost:3000.

Scripts

Command What it does
pnpm dev Start the dev server with Turbopack
pnpm build Production build
pnpm start Serve the production build
pnpm lint Run Next.js' linter
pnpm format Format the repo with oxfmt
pnpm format:check Check formatting without writing

Project structure

The tree below doubles as a route map β€” each directory under app/ is a route, annotated with its purpose.

.
β”œβ”€β”€ app/                            # Next.js App Router routes
β”‚   β”œβ”€β”€ layout.tsx                  # Root layout (header, footer, fonts, SEO)
β”‚   β”œβ”€β”€ page.tsx                    # /                    Social-proof-driven home
β”‚   β”œβ”€β”€ about/                      # /about               Values & community manifesto
β”‚   β”œβ”€β”€ events/                     # /events              Upcoming (Luma) + past event timeline
β”‚   β”œβ”€β”€ get-involved/               # /get-involved        Onboarding hub (shared layout)
β”‚   β”‚   β”œβ”€β”€ speak-or-facilitate/    #   /speak-or-facilitate  Speaker/facilitator intake
β”‚   β”‚   β”œβ”€β”€ host/                   #   /host              Host intake
β”‚   β”‚   β”œβ”€β”€ sponsor/                #   /sponsor           Sponsor intake
β”‚   β”‚   └── organizer/              #   /organizer         Organizer intake
β”‚   β”œβ”€β”€ legal/                      # /legal               Legal documents (shared layout)
β”‚   β”‚   β”œβ”€β”€ terms-of-service/       #   /terms-of-service
β”‚   β”‚   β”œβ”€β”€ privacy-policy/         #   /privacy-policy
β”‚   β”‚   └── code-of-conduct/        #   /code-of-conduct
β”‚   β”œβ”€β”€ resources/                  # /resources
β”‚   β”‚   β”œβ”€β”€ media-kit/              #   /resources/media-kit     Brand assets + fast facts
β”‚   β”‚   └── design-system/          #   /resources/design-system  Brand guidelines β€” design tokens & component reference
β”‚   └── globals.css
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ layout/                     # Header, Footer
β”‚   └── ui/                         # Reusable UI (buttons, cards, sections, etc.)
β”œβ”€β”€ constants/                      # Structured data (events, sponsors, social links)
β”œβ”€β”€ prd/                            # Product requirements documents (specs)
β”œβ”€β”€ public/                         # Static assets (images, downloads, social media dumps)
β”œβ”€β”€ next.config.ts
β”œβ”€β”€ vercel.json                     # Vercel deployment config (noindex header)
└── tsconfig.json

See prd/PRD.md for the full route map, shared-layout conventions, and per-page content requirements.

Deployment

The site deploys to Vercel. Search engine indexing is enabled site-wide via the robots metadata in app/layout.tsx.

Contributing

See CONTRIBUTING.md for contribution guidelines.

  1. Read prd/PRD.md before making structural changes β€” it defines the Info Architecture, brand, and content conventions.
    • AI agents only: also read AGENTS.md for agent-specific working conventions and constraints. (CLAUDE.md is a stub that includes it.)
  2. When adding or renaming a route, update both the route table in prd/PRD.md Β§2.1 and the corresponding spec in prd/pages/.
  3. Keep one dominant CTA per page. Role pages under /get-involved/* must end in an intake action (email us).

Contributors

This redesign was built by TechTank TO volunteers who gave their time to a community they believe in. Thank you to everyone who shipped it πŸ’™

And a heartfelt thank you to everyone who built and stewarded earlier versions of techtankto.com. This redesign stands on the foundation, inspiration, and lessons you left behind.

License

MIT β€” see the file for details.

About

🐠 TechTank Toronto - Modern Website Redesign

Resources

License

Contributing

Stars

3 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages