the main plugins and dependencies have been added

This commit is contained in:
Александр Ебаклаков
2026-03-21 22:34:12 +03:00
parent c0a1fa6273
commit ce6e025d0e
8 changed files with 2909 additions and 23 deletions

View File

@@ -2,7 +2,8 @@
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"cli": {
"packageManager": "npm"
"packageManager": "npm",
"schematicCollections": ["angular-eslint"]
},
"newProjectRoot": "projects",
"projects": {
@@ -24,9 +25,7 @@
"input": "public"
}
],
"styles": [
"src/styles.css"
]
"styles": ["src/styles.css"]
},
"configurations": {
"production": {
@@ -66,6 +65,12 @@
},
"test": {
"builder": "@angular/build:unit-test"
},
"lint": {
"builder": "@angular-eslint/builder:lint",
"options": {
"lintFilePatterns": ["src/**/*.ts", "src/**/*.html"]
}
}
}
}

View File

@@ -9,10 +9,10 @@
## `[INFRA]` — Инициализация и Инфраструктура
- [x] **INFRA-01** Создать Tauri-проект (`tauri init`) с базовой конфигурацией `tauri.conf.json`
- [ ] **INFRA-02** Создать Angular-проект с флагом `--standalone` (без NgModules)
- [ ] **INFRA-03** Настроить Rust-зависимости в `Cargo.toml`: `argon2`, `chacha20poly1305`, `sqlx`, `keyring`, `uuid`
- [ ] **INFRA-04** Настроить npm-зависимости: `@tauri-apps/api`, `rxjs`, установить ESLint + строгий TypeScript
- [ ] **INFRA-05** Настроить `tauri-plugin-global-shortcut` в `main.rs`
- [x] **INFRA-02** Создать Angular-проект с флагом `--standalone` (без NgModules)
- [x] **INFRA-03** Настроить Rust-зависимости в `Cargo.toml`: `argon2`, `chacha20poly1305`, `sqlx`, `keyring`, `uuid`
- [x] **INFRA-04** Настроить npm-зависимости: `@tauri-apps/api`, `rxjs`, установить ESLint + строгий TypeScript
- [x] **INFRA-05** Настроить `tauri-plugin-global-shortcut` в `main.rs`
- [ ] **INFRA-06** Настроить глобальные CSS-переменные и тему (цвета, типографику из `DESIGN.md`)
---

41
eslint.config.js Normal file
View File

@@ -0,0 +1,41 @@
// @ts-check
const eslint = require('@eslint/js');
const { defineConfig } = require('eslint/config');
const tseslint = require('typescript-eslint');
const angular = require('angular-eslint');
module.exports = defineConfig([
{
files: ['**/*.ts'],
extends: [
eslint.configs.recommended,
tseslint.configs.recommended,
tseslint.configs.stylistic,
angular.configs.tsRecommended,
],
processor: angular.processInlineTemplates,
rules: {
'@angular-eslint/directive-selector': [
'error',
{
type: 'attribute',
prefix: 'app',
style: 'camelCase',
},
],
'@angular-eslint/component-selector': [
'error',
{
type: 'element',
prefix: 'app',
style: 'kebab-case',
},
],
},
},
{
files: ['**/*.html'],
extends: [angular.configs.templateRecommended, angular.configs.templateAccessibility],
rules: {},
},
]);

1775
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -6,7 +6,8 @@
"start": "ng serve",
"build": "ng build",
"watch": "ng build --watch --configuration development",
"test": "ng test"
"test": "ng test",
"lint": "ng lint"
},
"private": true,
"packageManager": "npm@11.6.2",
@@ -17,6 +18,8 @@
"@angular/forms": "^21.2.0",
"@angular/platform-browser": "^21.2.0",
"@angular/router": "^21.2.0",
"@tauri-apps/api": "^2.10.1",
"@tauri-apps/plugin-global-shortcut": "^2.3.1",
"rxjs": "~7.8.0",
"tslib": "^2.3.0"
},
@@ -24,10 +27,14 @@
"@angular/build": "^21.2.3",
"@angular/cli": "^21.2.3",
"@angular/compiler-cli": "^21.2.0",
"@eslint/js": "^10.0.1",
"@tauri-apps/cli": "^2.10.1",
"angular-eslint": "21.3.1",
"eslint": "^10.0.3",
"jsdom": "^28.0.0",
"prettier": "^3.8.1",
"typescript": "~5.9.2",
"typescript-eslint": "8.56.1",
"vitest": "^4.0.8"
}
}

1064
src-tauri/Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +1,12 @@
[package]
name = "abdristus"
version = "0.1.0"
version = "0.0.0"
description = "Cross-platform password manager built with Tauri and Angular"
authors = ["you"]
authors = ["stopmnenepriyatno"]
license = "MIT"
repository = ""
edition = "2021"
rust-version = "1.77.2"
repository = "https://github.com/stopmnenepriyatno/abdristus"
edition = "2024"
rust-version = "1.94.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@@ -15,11 +15,18 @@ name = "app_lib"
crate-type = ["staticlib", "cdylib", "rlib"]
[build-dependencies]
tauri-build = { version = "2.5.6" }
tauri-build = { version = "2.5.6", features = [] }
[dependencies]
serde_json = "1.0"
serde = { version = "1.0", features = ["derive"] }
log = "0.4"
tauri = { version = "2.10.3" }
tauri = { version = "2.10.3", features = [] }
tauri-plugin-log = "2"
argon2 = "0.5.3"
chacha20poly1305 = "0.10.1"
keyring = "3.6.3"
sqlx = { version = "0.8.6", features = ["sqlite", "runtime-tokio-rustls"] }
uuid = { version = "1.22.0", features = ["v4"] }
tokio = { version = "1.50.0", features = ["full"] }
tauri-plugin-global-shortcut = "2.3.1"

View File

@@ -6,6 +6,7 @@ mod events;
#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {
tauri::Builder::default()
.plugin(tauri_plugin_global_shortcut::Builder::new().build())
.setup(|app| {
if cfg!(debug_assertions) {
app.handle().plugin(