Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Phase 3: Implement /deadlines route with deadline view

Abierto
#32 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
68/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
typescript

Línea de trabajo

Start with PRD §8.4, then inspect src/lib/resources.ts, src/components/directory/resource-card.tsx, and the existing app routes. Review scripts/normalize-data.ts and offers.json to determine how deadline data should be added. Done means /deadlines lists dated resources in ascending order, marks deadlines within 14 days, collapses expired items into a past section, and is linked from the homepage or directory.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

Description

Implement the /deadlines route as specified in PRD §8.4. This is a P0 requirement for Phase 3.

Acceptance Criteria (from PRD §8.4)

  • /deadlines route lists all resources with a non-null deadline, soonest first
  • Resources with deadlines within 14 days get a visually distinct "closing soon" badge
  • Expired deadlines auto-move to a collapsed "past" section, not deleted (useful for next year's cycle)

Current State

  • Database schema already has deadline column on resources table (nullable timestamp)
  • src/db/schema.ts line 54: deadline: timestamp("deadline")
  • No deadline data exists in current seed (see PROGRESS.md judgment call #8)
  • Need to add deadline data to offers.json / normalization

Implementation Plan

  1. Add deadline data: Update offers.json or normalization to include deadline data for scholarship/internship resources
  2. Create /deadlines page: New route at src/app/deadlines/page.tsx
  3. Create deadline query: Add getResourcesWithDeadlines() to src/lib/resources.ts
  4. Build UI components:
    • Upcoming deadlines list (sorted by deadline ASC)
    • "Closing soon" badge (deadline within 14 days)
    • Collapsible "Past deadlines" section
  5. Add to navigation: Link from homepage/directory

Files to Create/Modify

  • src/app/deadlines/page.tsx (new)
  • src/lib/resources.ts - add deadline queries
  • scripts/normalize-data.ts - add deadline parsing if data exists
  • src/components/directory/resource-card.tsx - reuse card or create deadline-specific card
  • Homepage/directory - add link to /deadlines

Design Notes

  • Public route (no auth required)
  • Server Component for initial data fetch
  • Can reuse ResourceCard component with deadline-specific props
  • "Closing soon" = deadline < 14 days from now
  • "Past" = deadline < now
Lenguaje dominante
TypeScript
Estrellas
1
Forks
6
Merge medio
11 h 16 min
PR fusionados (30 d)
16

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Your-Voldemort/StudentStack

Todos los issues de Your-Voldemort/StudentStack

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.