name: tlaternet
version: 1.0.0
description: tlaternet web interface
author: Tristan Maat <tm@tlater.net>
license: MIT
private: true

dependencies:
  # Libraries
  gl-matrix: ^3.4.3   # To help with 3D math in WebGL code
  classnames: ^2.5.1 # To manage CSS class names in react code

  # Fonts
  hack-font: ^3.3.0
  '@fontsource/arimo': ^5.0.18
  '@fontsource/nunito': ^5.0.16
  '@fortawesome/fontawesome-free': ^6.5.1

  # Frameworks for static content
  bulma: ^0.9.4

  # React-redux stuff
  react: ^18.2.0
  react-dom: ^18.2.0
  react-use-error-boundary: ^3.0.0 # TODO(tlater): Remove when react implement their own
  redux: ^5.0.1
  '@reduxjs/toolkit': ^2.0.1
  react-redux: ^9.0.4

devDependencies:
  # Parcel & plugins
  parcel: ^2.10.3
  '@parcel/transformer-sass': ^2.10.3
  '@parcel/transformer-glsl': ^2.10.3

  # Build tools
  typescript: ^5.3.3
  sass: ^1.69.6
  posthtml-extend: ^0.6.5
  posthtml-favicons: ^1.4.0
  posthtml-include: ^1.7.4
  posthtml-markdownit: ^1.3.1

  '@babel/preset-env': ^7.23.7

  # Type shims
  '@types/react-dom': ^18.2.18
  '@types/react-redux': ^7.1.33

  # Dev tools
  npm-check-updates: ^16.14.12
  prettier: ^3.1.1
  typescript-language-server: ^4.2.0
  typescript-eslint-language-service: ^5.0.5
  eslint: ^8.56.0
  '@typescript-eslint/parser': ^6.17.0
  '@typescript-eslint/eslint-plugin': ^6.17.0
  vscode-langservers-extracted: ^4.8.0

scripts:
  # Dev workflow
  build: parcel build --no-autoinstall
  serve: parcel serve --no-autoinstall
  watch: parcel watch --no-autoinstall

  # Production build
  build-dist: parcel build --no-cache --no-autoinstall

  # Checks
  check: tsc --noEmit
  style: prettier --check src
  lint: eslint --max-warnings=0 --format unix src

# Parcel config
source:
  - src/index.html
  - src/error.html

browserslist: '> 1%, not dead'

posthtml:
  plugins:
    posthtml-markdownit:
      root: src
    posthtml-extend:
      root: src
    posthtml-include:
      root: src
    posthtml-favicons:
      root: src
      outDir: ./dist/
      configuration:
        appName: tlater.net
        appShortName: tlater.net
        appDescription: tlater's home page
        developerName: Tristan Daniël Maat
        developerURL: https://tlater.net
        dir: auto
        lang: en-US
        background: '#0f0f0f'
        theme_color: '#99d1ce'
        appleStatusBarStyle: black-translucent
        display: browser
        orientation: any
        start_url: https://tlater.net
        version: "1.0"
        icons:
          favicons: true
