mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-16 14:58:05 +08:00
* Make `tauri build` just work * Move folder: frontend/wasm -> wasm * Create SvelteKit project with 'npx create-svelte' * Move wasm-communication into seperate npm package * Use wasm-pack directly and pack package.json * Got it to work * Add primitive build script for wasm npm module * Fix wasm build script (python) * Clean up glue code * Rewrite wasm build script in node.js * Add serde-reflection to trace types * Add traced types * Generate typescript (.d.ts) from Rust types * Update .d.ts * Finalize TS types * Add script to update .d.ts * Add watch command to build wasm-bindgen * Make wasm work again * Add sass; fix build script for windows * Describe requirement for wasm-pack * Add license * Copy and reorganize vue components * translate LayoutCol.vue * Split app.scss into pieces * Translate LayoutRow.svelte * Rename scss files * Fix compile issues on Windows * WIP port TitleBar * Support classes for LayoutCol/Row * Restructure based on Vue codebase * Port all components in window folder * Port FloatingMenu * Port Document panel component * Update readme after folder move * Update typegen: print discriminant by default * Update typegen: Merge from branch 'tailwind' 4f14fedb Fixes bigint & bytes * Made Vue/webpack/eslint to accept wasm package at new location This is quite a hack. Those two packages are both named the same. Yes, it's an npm package inside another npm package. - frontend/src/wasm-communication/ - frontend-svelte/glue/ 'wasm/pkg/index.js' imports the correct one registered when linking. * Port LayerTree * Port NodeGraph * Port Properties * Port components in /floating-menus * Finish porting all Vue -> Svelte components * Change import prefix * Revert type generation * Revert moved wasm folder * Revert all of @locriacyber's work on this branch - Remove Vite and restore Webpack - Remove SvelteKit - Remove everything except the components I ported to Svelte - Restore all frontend files from Vue code, now altered for Svelte * Convert Vue's 'reactive' and 'provide' to Svelte's stores and contexts * Fix event emitting and bi-di data flow * Undo removal of 'update:' events * Fix 'update:' event dispatching * Fix usage in parent of bi-di component props * Fix component typing, more progress towards no errors * The page builds and opens! * Add loading spinner and remove postcss dependency * Make the basics of document editing work * Fix rebase history Co-authored-by: Locria Cyber <74560659+locriacyber@users.noreply.github.com>
65 lines
2.5 KiB
JSON
65 lines
2.5 KiB
JSON
{
|
|
"name": "graphite-web-frontend",
|
|
"private": true,
|
|
"description": "Graphite's web app frontend. Planned to be replaced by a native GUI written in Rust in the future.",
|
|
"author": "Graphite Authors <contact@graphite.rs>",
|
|
"scripts": {
|
|
"start": "npm run serve",
|
|
"serve": "webpack serve || (npm run print-building-help && exit 1)",
|
|
"build-dev": "webpack build || (npm run print-building-help && exit 1)",
|
|
"build-prod-unix": "NODE_ENV=production webpack build || (npm run print-building-help && exit 1)",
|
|
"build-prod-windows": "set NODE_ENV=production && webpack build || (npm run print-building-help && exit 1)",
|
|
"check": "svelte-check",
|
|
"lint": "webpack lint || (npm run print-linting-help && exit 1)",
|
|
"lint-no-fix": "webpack lint --no-fix || (npm run print-linting-help && exit 1)",
|
|
"tauri:build": "webpack tauri:build",
|
|
"tauri:serve": "webpack tauri:serve",
|
|
"print-building-help": "echo 'Graphite project failed to build. Did you remember to `npm install` the dependencies in `/frontend`?'",
|
|
"print-linting-help": "echo 'Graphite project had lint errors, or may have otherwise failed. In the latter case, did you remember to `npm install` the dependencies in `/frontend`?'"
|
|
},
|
|
"dependencies": {
|
|
"@tauri-apps/api": "^1.2.0",
|
|
"class-transformer": "^0.5.1",
|
|
"idb-keyval": "^6.2.0",
|
|
"reflect-metadata": "^0.1.13"
|
|
},
|
|
"devDependencies": {
|
|
"@types/license-checker-webpack-plugin": "^0.2.1",
|
|
"@types/node": "^18.11.18",
|
|
"@types/webpack": "^5.28.0",
|
|
"@types/webpack-dev-server": "^4.7.2",
|
|
"@typescript-eslint/eslint-plugin": "^5.48.0",
|
|
"@typescript-eslint/parser": "^5.48.0",
|
|
"@wasm-tool/wasm-pack-plugin": "^1.6.0",
|
|
"css-loader": "^6.7.3",
|
|
"eslint": "^8.31.0",
|
|
"eslint-config-prettier": "^8.6.0",
|
|
"eslint-plugin-import": "^2.26.0",
|
|
"license-checker-webpack-plugin": "^0.2.1",
|
|
"prettier": "^2.8.2",
|
|
"sass": "^1.57.1",
|
|
"sass-loader": "^13.2.0",
|
|
"svelte": "^3.55.0",
|
|
"svelte-check": "^3.0.1",
|
|
"svelte-check-plugin": "^1.0.4",
|
|
"svelte-loader": "^3.1.4",
|
|
"svelte-preprocess": "^5.0.0",
|
|
"ts-loader": "^9.4.2",
|
|
"ts-node": "^10.9.1",
|
|
"typescript": "^4.9.4",
|
|
"webpack": "^5.75.0",
|
|
"webpack-cli": "^5.0.1",
|
|
"webpack-dev-server": "^4.11.1"
|
|
},
|
|
"optionalDependencies": {
|
|
"wasm-pack": "^0.10.3"
|
|
},
|
|
"//": "Notes about dependency issues and incompatibilities should be added here when needed.",
|
|
"homepage": "https://graphite.rs",
|
|
"license": "Apache-2.0",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/GraphiteEditor/Graphite.git"
|
|
}
|
|
}
|