Files
TimeTracker/desktop/package.json
T
Dries Peeters 4c427c92c0 feat(desktop): centralize connection lifecycle and expand login flow
Introduce a connection manager (state machine, listeners, offline handling,
token/server binding) with timer start/stop reconciliation helpers. Refactor
app.js to use it and extend the first-run wizard (welcome + server + token).

Add node:test coverage for the manager, timer operations, and an /api/v1/info
integration harness. Rebuild renderer bundle for packaging.

Bump desktop toolchain (electron, electron-builder, esbuild) and Python
package version to 5.3.2 in setup.py.
2026-04-24 16:17:56 +02:00

109 lines
2.8 KiB
JSON

{
"name": "timetracker-desktop",
"version": "4.20.9",
"description": "TimeTracker desktop app for Windows, Linux, and macOS",
"main": "src/main/main.js",
"scripts": {
"prestart": "npm run build:renderer",
"prebuild": "npm run build:renderer",
"test": "node --test test/",
"start": "npm run build:renderer && electron .",
"dev": "electron . --dev",
"build:renderer": "esbuild src/renderer/js/app.js --bundle --outfile=src/renderer/js/bundle.js --platform=browser --format=iife",
"build": "npm run build:renderer && electron-builder",
"build:win": "npm run build:renderer && electron-builder --win",
"build:mac": "npm run build:renderer && electron-builder --mac",
"build:linux": "npm run build:renderer && electron-builder --linux",
"build:all": "node scripts/build-all-platforms.js",
"build:win+linux": "electron-builder --win --linux",
"build:all-force": "electron-builder --win --mac --linux",
"clean:cache": "node scripts/clean-cache.js",
"dist": "electron-builder --publish=never"
},
"keywords": [
"timetracker",
"time-tracking",
"electron"
],
"author": {
"name": "TimeTracker",
"email": "support@timetracker.app"
},
"homepage": "https://github.com/DRYTRIX/TimeTracker",
"license": "MIT",
"devDependencies": {
"electron": "^41.2.1",
"electron-builder": "^26.8.1",
"esbuild": "^0.28.0"
},
"dependencies": {
"axios": "^1.6.2",
"dexie": "^3.2.4",
"electron-store": "^8.1.0"
},
"build": {
"appId": "com.timetracker.desktop",
"productName": "TimeTracker",
"directories": {
"output": "dist"
},
"files": [
"src/**/*",
"package.json"
],
"asar": true,
"asarUnpack": [],
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64"
]
}
],
"icon": "assets/icon.ico",
"artifactName": "${productName}-${version}-${arch}.${ext}",
"sign": null
},
"mac": {
"target": [
{
"target": "dmg",
"arch": [
"x64",
"arm64"
]
}
],
"icon": "assets/icon.icns",
"category": "public.app-category.productivity",
"artifactName": "${productName}-${version}-${arch}.${ext}"
},
"linux": {
"target": [
{
"target": "AppImage",
"arch": [
"x64"
]
},
{
"target": "deb",
"arch": [
"x64"
]
}
],
"icon": "assets/icon.png",
"category": "Utility",
"maintainer": "TimeTracker <support@timetracker.app>",
"artifactName": "${productName}-${version}-${arch}.${ext}"
},
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true
}
}
}