Commit Graph

32 Commits

Author SHA1 Message Date
Sameh Abouel-saad
580fd72dce feat: Implement Sign Request Manager component for handling sign requests in the popup (WIP)
- Added SignRequestManager.js to manage sign requests, including UI states for keyspace lock, mismatch, and approval.
- Implemented methods for loading state, rendering UI, and handling user interactions (approve/reject requests).
- Integrated background message listeners for keyspace unlock events and request updates.
2025-06-04 16:55:15 +03:00
Sameh Abouel-saad
a0622629ae feat: Add function to retrieve the current keyspace name in WebAssembly bindings 2025-06-04 16:43:54 +03:00
Sameh Abouel-saad
4e1e707f85 feat: Add SigSocket integration with WASM client and JavaScript bridge for sign requests 2025-06-04 16:11:53 +03:00
Sameh Abouel-saad
9f143ded9d Implement native and WASM WebSocket client for sigsocket communication
- Added `NativeClient` for non-WASM environments with automatic reconnection and message handling.
- Introduced `WasmClient` for WASM environments, supporting WebSocket communication and reconnection logic.
- Created protocol definitions for `SignRequest` and `SignResponse` with serialization and deserialization.
- Developed integration tests for the client functionality and sign request handling.
- Implemented WASM-specific tests to ensure compatibility and functionality in browser environments.
2025-06-04 13:03:15 +03:00
Sameh Abouel-saad
b0d0aaa53d refactor: replace Ed25519 with Secp256k1 for default keypair generation 2025-06-02 15:59:17 +03:00
Sameh Abouel-saad
e00c140396 Fix tests 2025-05-29 14:40:55 +03:00
Sameh Abouel-saad
4ba1e43f4e clean files 2025-05-29 13:42:13 +03:00
Sameh Abouel-saad
b82d457873 Fixed unused imports and variables 2025-05-29 13:41:10 +03:00
zaelgohary
b0b6359be1 Enhance themes 2025-05-29 09:03:18 +03:00
zaelgohary
536c077fbf Merge branch 'main_browser_extension' of https://git.ourworld.tf/samehabouelsaad/sal-modular into main_browser_extension 2025-05-29 08:57:28 +03:00
zaelgohary
31975aa9d3 Add session timeout, refactor session manager, reduce code duplication, update icons & styling 2025-05-29 08:57:25 +03:00
Sameh Abouel-saad
087720f61f feat: add default keypair creation and selection functionality 2025-05-28 12:48:28 +03:00
zaelgohary
c2c5be3409 Enhance UI, remove unused code 2025-05-28 11:39:25 +03:00
zaelgohary
37764e3861 Support encrypt, decrypt & verify + add dark theme + better error handling & UI enhancements 2025-05-28 09:49:23 +03:00
zaelgohary
5bc205b2f7 Add extension 2025-05-27 17:15:53 +03:00
Sameh Abouel-saad
beba294054 refactor: migrate extension to TypeScript and add Material-UI components 2025-05-26 23:01:47 +03:00
Sameh Abouel-saad
0224755ba3 Doc: Update README.md 2025-05-26 13:27:50 +03:00
Sameh Abouel-saad
44b4dfd6a7 chore: add wasm console demo 2025-05-26 13:22:42 +03:00
Sameh Abouel-saad
1e52c572d2 refactor: migrate extension to React and update build configuration 2025-05-22 16:11:04 +03:00
Sameh Abouel-saad
1f2d7e3fec fix: hardcode keyspace value to "vault" in init_session function 2025-05-22 12:53:27 +03:00
Sameh Abouel-saad
ed76ba3d8d feat: implement browser extension UI with WebAssembly integration 2025-05-22 11:53:32 +03:00
13945a8725 feat: Add WASM support and browser extension infrastructure
- Add WASM build target and dependencies for all crates.
- Implement IndexedDB-based persistent storage for WASM.
- Create browser extension infrastructure (UI, scripting, etc.).
- Integrate Rhai scripting engine for secure automation.
- Implement user stories and documentation for the extension.
2025-05-16 15:31:53 +03:00
19f46d6edb fix: fix tests and add Makefile 2025-05-16 03:42:48 +03:00
85a15edaec feat: Upgrade dependencies and refactor client
- Upgrade several dependencies to their latest versions.
- Refactor the EVM client for improved modularity and clarity.
- Simplify transaction signing and sending logic.
2025-05-16 03:07:42 +03:00
017fc897f4 docs: Clarify the rationale for split trait implementations for native and WASM targets 2025-05-16 02:16:36 +03:00
03533f9216 tests: Add browser WASM tests for evm_client 2025-05-16 02:06:41 +03:00
73233ec69b feat: Add SessionManager for ergonomic key management 2025-05-16 00:15:07 +03:00
791752c3a5 Feat: simplify vault API and update docs 2025-05-15 22:28:37 +03:00
cea2d7e655 feat: Refactor kvstore and vault to use features and logging
- Remove hardcoded dependencies in kvstore Cargo.toml; use features
  instead. This allows for more flexible compilation for different
  targets (native vs. WASM).
- Improve logging in vault crate using the `log` crate. This makes
  debugging easier and provides more informative output during
  execution.  Native tests use `env_logger`, WASM tests use
  `console_log`.
- Update README to reflect new logging best practices.
- Add cfg attributes to native and wasm modules to improve clarity.
- Update traits.rs to specify Send + Sync behavior expectations.
2025-05-15 16:42:19 +03:00
7d7f94f114 Feat: add vault module 2025-05-15 15:29:47 +03:00
09635f3a32 Docs: Update roadmap items 2025-05-13 20:27:23 +03:00
9dce815daa feat: Add basic project structure and initial crates
- Added basic project structure with workspace and crates:
  `kvstore`, `vault`, `evm_client`, `cli_app`, `web_app`.
- Created initial `Cargo.toml` files for each crate.
- Added placeholder implementations for key components.
- Included initial documentation files (`README.md`, architecture
  docs, repo structure).
- Included initial implementaion for kvstore crate(async API, backend abstraction, separation of concerns, WASM/native support, testability)
- Included native and browser tests for the kvstore crate
2025-05-13 20:24:29 +03:00