Skip to content

Instantly share code, notes, and snippets.

@ramijames
Created January 1, 2026 15:23
Show Gist options
  • Select an option

  • Save ramijames/38c6d8605371584a23f657359e19dfcf to your computer and use it in GitHub Desktop.

Select an option

Save ramijames/38c6d8605371584a23f657359e19dfcf to your computer and use it in GitHub Desktop.
Gizra - Home Assignment BE Tickets for the Publications component
BE-1: Create / Validate Publication Content Types
**Type:** Backend / CMS
**Priority:** High
**Description:**
Create or validate content types to support the Publications component.
### Option A (Preferred)
Two distinct content types:
- `Report`
- `Document`
### Option B (Alternative)
Single `Publication` content type with a required taxonomy field:
- Publication Type (Report | Document)
### Required Fields
- Title (core)
- Summary / Description (formatted text)
- File or External Link (file or link field)
- Publish Date (date; defaults to created date)
- URL Alias (Pathauto)
**Acceptance Criteria:**
- Editors can create Reports and Documents
- Each item clearly belongs to one category
- Files support common formats (PDF, DOCX)
- Publish date is editable
BE-2: Create Views for Publications Lists
**Type:** Backend
**Priority:** High
**Description:**
Create Drupal Views to power the Publications lists.
### Views Required
- Reports List
- Documents List
### View Configuration
- Display: Block
- Filter: Published
- Filter: Publication type (Report or Document)
- Sort: Publish Date (DESC)
- Items per page: Configurable (default 5)
- Pagination: Disabled (homepage usage)
**Fields Returned**
- Title
- Summary (trimmed)
- File or Link URL
- Publish Date
**Acceptance Criteria:**
- Correct items appear under each column
- Sorting is consistent
- Views are reusable beyond this component
BE-3: Prepare Views for Theming
**Type:** Backend / Theming
**Priority:** Medium
**Description:**
Ensure Publications Views are theme-ready.
**Requirements:**
- Custom Twig templates (e.g. `views-view--publications-reports.html.twig`)
- Clean semantic markup
- No inline styles or JS logic
- Individual fields available in Twig
**Acceptance Criteria:**
- Frontend fully controls markup
- No business logic in templates
BE-4: Create “View All” Pages
**Type:** Backend
**Priority:** Medium
**Description:**
Provide full listing pages for Reports and Documents.
**Requirements:**
- Dedicated pages per publication type
- Pagination enabled
- SEO-friendly URLs
**Acceptance Criteria:**
- “View all” buttons link to correct pages
- Pages scale for large content volumes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment