Skip to content

Pagination Configuration

Configure BrickTracker's pagination system to optimize performance for your collection size.

Pagination Overview

BrickTracker features a dual-mode pagination system that can operate in either server-side or client-side mode for each entity type independently.

Pagination Modes

Server-Side Mode (Recommended for large collections):

  • Performance: Handles large collections efficiently
  • Memory efficient: Loads only what's needed
  • Search: Debounced server-side search
  • Scalability: Consistent performance regardless of collection size

Client-Side Mode (Best for small collections):

  • Instant search: No server requests for filtering
  • Instant sorting: Immediate column sorting
  • Rich interactions: DataTables features like column search
  • No reload: No page refreshes needed when searching or filtering

Individual Entity Configuration

Enable/Disable Pagination

Each page type can be configured independently. You might want server-side pagination on Parts and Minifigures, but not on Sets and Problems. This can be configured individually.

Optional: Enable server-side pagination for individual pages (recommended for large collections). When enabled, pages use server-side pagination with configurable page sizes. When disabled, pages load all data at once with instant client-side search.

Default: false for all

bash
BK_SETS_SERVER_SIDE_PAGINATION=true
BK_PARTS_SERVER_SIDE_PAGINATION=true
BK_MINIFIGURES_SERVER_SIDE_PAGINATION=true
BK_PROBLEMS_SERVER_SIDE_PAGINATION=true

Page Size Configuration

Configure different page sizes for desktop and mobile devices:

Optional: Number of parts to show per page on desktop devices (when server-side pagination is enabled).

bash
BK_PARTS_PAGINATION_SIZE_DESKTOP=10

Optional: Number of parts to show per page on mobile devices (when server-side pagination is enabled).

bash
BK_PARTS_PAGINATION_SIZE_MOBILE=5

Optional: Number of sets to show per page on desktop devices (when server-side pagination is enabled).

bash
BK_SETS_PAGINATION_SIZE_DESKTOP=12

Optional: Number of sets to show per page on mobile devices (when server-side pagination is enabled).

bash
BK_SETS_PAGINATION_SIZE_MOBILE=4

Optional: Number of minifigures to show per page on desktop devices (when server-side pagination is enabled).

bash
BK_MINIFIGURES_PAGINATION_SIZE_DESKTOP=10

Optional: Number of minifigures to show per page on mobile devices (when server-side pagination is enabled).

bash
BK_MINIFIGURES_PAGINATION_SIZE_MOBILE=5

Optional: Number of problems to show per page on desktop devices (when server-side pagination is enabled).

bash
BK_PROBLEMS_PAGINATION_SIZE_DESKTOP=10

Optional: Number of problems to show per page on mobile devices (when server-side pagination is enabled).

bash
BK_PROBLEMS_PAGINATION_SIZE_MOBILE=5

Optional: Default number of items per page displayed for big tables. You can put whatever value but the exist steps are: 10, 25, 50, 100, 500, 1000

bash
BK_DEFAULT_TABLE_PER_PAGE=50

Released under the MIT License.