# Note on *_DEFAULT_ORDER # If set, it will append a direct ORDER BY to the SQL query # while listing objects. You can look at the structure of the SQLite database to # see the schema and the column names. Some fields are compound and not visible # directly from the schema (joins). You can check the query in the */list.sql files # in the source to see all column names. # The usual syntax for those variables is ""."" [ASC|DESC]. # For composite fields (CASE, SUM, COUNT) the syntax is , there is no
name. # For instance: # - "table"."name" (by "table"."name", default order) # - "table"."name" ASC (by "table"."name", ascending) # - "table"."name" DESC (by "table"."name", descending) # - "field" (by "field", default order) # - ... # You can combine the ordering options. # You can use the special column name 'rowid' to order by insertion order. # Optional: A unique password to protect sensitive areas of the app # Useful if you want to share the page with other in read-only # Security: Currently not fully protecting the socket action, would be better # to have server-side sessions, with flask-session for instance # BK_AUTHENTICATION_PASSWORD=my-secret-password # Optional/Mandatory: A unique key used to sign the secrets when using authentication # Do not share it with anyone, and you MUST make it random. # You can use the following command in your terminal to generate such random secret: # python3 -c 'import secrets; print(secrets.token_hex())' # BK_AUTHENTICATION_KEY=change-this-to-something-random # Optional: Pattern of the link to Bricklink for a part. Will be passed to Python .format() # Default: https://www.bricklink.com/v2/catalog/catalogitem.page?P={number} # BK_BRICKLINK_LINK_PART_PATTERN= # Optional: Display Bricklink links wherever applicable # Default: false # BK_BRICKLINK_LINKS=true # Optional: Path to the database. # Useful if you need it mounted in a Docker volume. Keep in mind that it will not # do any check on the existence of the path, or if it is dangerous. # Default: ./app.db # BK_DATABASE_PATH=/var/lib/bricktracker/app.db # Optional: Format of the timestamp added to the database file when downloading it # Check https://docs.python.org/3/library/time.html#time.strftime for format details # Default: %Y-%m-%d-%H-%M-%S # BK_DATABASE_TIMESTAMP_FORMAT=%Y%m%d-%H%M%S # Optional: Enable debugging. # Default: false # BK_DEBUG=true # 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 # Default: 25 # BK_DEFAULT_TABLE_PER_PAGE=50 # Optional: if set up, will add a CORS allow origin restriction to the socket. # Default: # Legacy name: DOMAIN_NAME # BK_DOMAIN_NAME=http://localhost:3333 # Optional: IP address the server will listen on. # Default: 0.0.0.0 # BK_HOST=0.0.0.0 # Optional: By default, accordion items are linked together and only one can be in # a collapsed state. This makes all the items indepedent. # Default: false # BK_INDEPENDENT_ACCORDIONS=true # Optional: A comma separated list of extensions allowed for uploading and displaying # instruction files. You need to keep the dot (.) in the extension. # Security: not really # Default: .pdf # BK_INSTRUCTIONS_ALLOWED_EXTENSIONS=.pdf, .docx, .png # Optional: Folder where to store the instructions, relative to the '/app/static/' folder # Default: instructions # BK_INSTRUCTIONS_FOLDER=/var/lib/bricktracker/instructions/ # Optional: Hide the 'Add' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ADD_SET=true # Optional: Hide the 'Bulk add' entry from the add page. Does not disable the route. # Default: false # BK_HIDE_ADD_BULK_SET=true # Optional: Hide the 'Admin' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ADMIN=true # Optional: Hide the 'Instructions' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ALL_INSTRUCTIONS=true # Optional: Hide the 'Minifigures' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ALL_MINIFIGURES=true # Optional: Hide the 'Parts' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ALL_PARTS=true # Optional: Hide the 'Sets' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_ALL_SETS=true # Optional: Hide the 'Missing' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_MISSING_PARTS=true # Optional: Hide the 'Instructions' entry in a Set card # Default: false # BK_HIDE_SET_INSTRUCTIONS=true # Optional: Hide the 'Wishlist' entry from the menu. Does not disable the route. # Default: false # BK_HIDE_WISHES=true # Optional: Change the default order of minifigures. By default ordered by insertion order. # Useful column names for this option are: # - "minifigures"."fig_num": minifigure ID (fig-xxxxx) # - "minifigures"."name": minifigure name # Default: "minifigures"."name" ASC # BK_MINIFIGURES_DEFAULT_ORDER="minifigures"."name" ASC # Optional: Folder where to store the minifigures images, relative to the '/app/static/' folder # Default: minifigs # BK_MINIFIGURES_FOLDER=minifigures # Optional: Disable threading on the task executed by the socket. # You should not need to change this parameter unless you are debugging something with the # socket itself. # Default: false # BK_NO_THREADED_SOCKET=true # Optional: Change the default order of parts. By default ordered by insertion order. # Useful column names for this option are: # - "inventory"."part_num": part number # - "inventory"."name": part name # - "inventory"."color_name": part color name # - "inventory"."is_spare": par is a spare part # - "total_missing": number of missing parts # Default: "inventory"."name" ASC, "inventory"."color_name" ASC, "inventory"."is_spare" ASC # BK_PARTS_DEFAULT_ORDER="total_missing" DESC, "inventory"."name" ASC # Optional: Folder where to store the parts images, relative to the '/app/static/' folder # Default: parts # BK_PARTS_FOLDER=parts # Optional: Port the server will listen on. # Default: 3333 # BK_PORT=3333 # Optional: Shuffle the lists on the front page. # Default: false # Legacy name: RANDOM # BK_RANDOM=true # Optional/Mandatory: The API key used to retrieve sets from the Rebrickable API. # It is not necessary to set it to display the site, but it will limit its capabilities # as you will not be able to add new sets # Default: # Legacy name: REBRICKABLE_API_KEY # BK_REBRICKABLE_API_KEY=xxxx # Optional: URL of the image representing a missing image in Rebrickable # Default: https://rebrickable.com/static/img/nil.png # BK_REBRICKABLE_IMAGE_NIL= # Optional: URL of the image representing a missing minifigure image in Rebrickable # Default: https://rebrickable.com/static/img/nil_mf.jpg # BK_REBRICKABLE_IMAGE_NIL_MINIFIGURE= # Optional: Pattern of the link to Rebrickable for a minifigure. Will be passed to Python .format() # Default: https://rebrickable.com/minifigs/{number} # BK_REBRICKABLE_LINK_MINIFIGURE_PATTERN= # Optional: Pattern of the link to Rebrickable for a part. Will be passed to Python .format() # Default: https://rebrickable.com/parts/{number}/_/{color} # BK_REBRICKABLE_LINK_PART_PATTERN= # Optional: Pattern of the link to Rebrickable for instructions. Will be passed to Python .format() # Default: https://rebrickable.com/instructions/{path} # BK_REBRICKABLE_LINK_INSTRUCTIONS_PATTERN= # Optional: User-Agent to use when querying Rebrickable outside of the Rebrick python library # Default: 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' # BK_REBRICKABLE_USER_AGENT= # Optional: Display Rebrickable links wherever applicable # Default: false # Legacy name: LINKS # BK_REBRICKABLE_LINKS=true # Optional: The amount of items to retrieve per Rebrickable API call when. # Default: 100 # BK_REBRICKABLE_PAGE_SIZE=200 # Optional: URL to the unofficial retired sets list on Google Sheets # Default: https://docs.google.com/spreadsheets/d/1rlYfEXtNKxUOZt2Mfv0H17DvK7bj6Pe0CuYwq6ay8WA/gviz/tq?tqx=out:csv&sheet=Sorted%20by%20Retirement%20Date # BK_RETIRED_SETS_FILE_URL= # Optional: Path to the unofficial retired sets lists # You can name it whatever you want, but content has to be a CSV # Default: ./retired_sets.csv # BK_RETIRED_SETS_PATH=/var/lib/bricktracker/retired_sets.csv # Optional: Change the default order of sets. By default ordered by insertion order. # Useful column names for this option are: # - "rebrickable_sets"."set": set number as a string # - "rebrickable_sets"."number": the number part of set as an integer # - "rebrickable_sets"."version": the version part of set as an integer # - "rebrickable_sets"."name": set name # - "rebrickable_sets"."year": set release year # - "rebrickable_sets"."number_of_parts": set number of parts # - "total_missing": number of missing parts # - "total_minifigures": number of minifigures # Default: "rebrickable_sets"."number" DESC, "rebrickable_sets"."version" ASC # BK_SETS_DEFAULT_ORDER="rebrickable_sets"."year" ASC # Optional: Folder where to store the sets images, relative to the '/app/static/' folder # Default: sets # BK_SETS_FOLDER=sets # Optional: Skip saving or displaying spare parts # Default: false # BK_SKIP_SPARE_PARTS=true # Optional: Namespace of the Socket.IO socket # Default: bricksocket # BK_SOCKET_NAMESPACE=customsocket # Optional: Namespace of the Socket.IO path # Default: /bricksocket/ # BK_SOCKET_PATH=custompath # Optional: URL to the themes.csv.gz on Rebrickable # Default: https://cdn.rebrickable.com/media/downloads/themes.csv.gz # BK_THEMES_FILE_URL= # Optional: Path to the themes file # You can name it whatever you want, but content has to be a CSV # Default: ./themes.csv # BK_THEMES_PATH=/var/lib/bricktracker/themes.csv # Optional: Timezone to use to display datetimes # Check your system for available timezone/TZ values # Default: Etc/UTC # BK_TIMEZONE=Europe/Copenhagen # Optional: Use remote image rather than the locally stored ones # Also prevents downloading any image when adding sets # Default: false # BK_USE_REMOTE_IMAGES=true # Optional: Change the default order of sets. By default ordered by insertion order. # Useful column names for this option are: # - "bricktracker_wishes"."set": set number as a string # - "bricktracker_wishes"."name": set name # - "bricktracker_wishes"."year": set release year # - "bricktracker_wishes"."number_of_parts": set number of parts # Default: "bricktracker_wishes"."rowid" DESC # BK_WISHES_DEFAULT_ORDER="bricktracker_wishes"."set" DESC