Refactor/orm (#7)

* feat/refactor-motr

* feat/refactor-motr

* feat: introduce Cloudflare Workers gateway application

* chore: migrate build system from Makefile to Taskfile for improved automation

* feat: streamline task management with Taskfile consolidation

* feat: consolidate build and install tasks for simplified workflows

* <no value>

* feat: enable publishing for core packages

* feat/refactor-motr

* feat: integrate updated crypto library for enhanced security

* ci: Configure CI/CD to build and test WASM signer

* refactor: streamline build process using npm scripts

* fix: Correct template file paths for accurate error reporting

* refactor: standardize templ file paths for improved maintainability

* chore: remove package documentation

* build: exclude documentation artifacts from version control

* feat: serve static assets from cloudflare worker

* feat: introduce Motr controller service

* refactor: move UI components to separate ui module

* refactor: move resolver middleware to top-level middleware directory

* feat: introduce modular middleware architecture

* refactor: improve separation of concerns by relocating endpoint definitions

* build: simplify codebase by deleting unused info types

* refactor: decouple middleware configurations

* feat: integrate request middleware for enhanced processing

* feat: implement register and login pages

* feat: integrate WASM signer for enhanced security

* refactor: move type definitions to models package

* refactor: rename ipfs middleware to vault middleware

* feat: Add Dockerfile for controller service

* feat: Add Dockerfile for controller with multi-stage build

* chore: Update Golang version to 1.24.2 in Dockerfile

* feat: introduce Docker support for application deployment

* feat: Implement WASM-based signing service

* feat: migrate build system to Taskfile for improved automation

* feat: enable docker-based development for controller and resolver

* feat: Add docker-compose services for resolver and controller workers

* refactor: streamline build and deployment processes with Devbox

* chore: standardize development environment with Devbox

* chore: standardize container entrypoint for improved consistency

* feat: introduce docker-compose setup for local development

* feat: remove initial placeholder code

* refactor: restructure project modules for improved organization

* feat: integrate motr UI library for enhanced components

* chore: upgrade motr dependency to v0.0.3

* refactor: restructure project layout for improved modularity

* refactor: consolidate data models and options into  directory

* feat: integrate sqlc for database interaction

* feat: integrate D1 database for improved data management

* refactor: improve naming consistency across project

* feat: enhance context with HTTP header utilities

* refactor: restructure project layout for improved maintainability

* refactor: centralize rendering logic into middleware

* chore: update motr dependency to v0.0.5 to address data consistency issues

* feat: consolidate handler logic into root

* refactor: relocate handlers and middleware to internal packages

* chore: update  dependency to v0.9.0

* refactor: Improve code structure and add comprehensive documentation for WebAssembly signer module

* feat: implement WASM-based signing functionality

* chore: remove build system configuration

* feat: integrate D1 database for persistent data storage

* feat: enable D1 database integration for Cloudflare Workers

* feat: enhance task execution with docker-compose integration

* refactor: centralize database queries and models

* refactor: improve sqlc code generation and project structure

* docs: Update README with Docker support and new project architecture

* refactor: centralize Sonr configuration via middleware

* chore: improve build task definitions in Taskfile

* chore: remove docker deployment configuration

* feat: upgrade crypto module to v0.11.0

* refactor: migrate to a configuration-driven architecture

* refactor: inject database common queries into index handler

* feat: streamline worker initialization

* refactor: standardize package versioning process

* build: prepare vault package for public release

* feat: enable WASM-based vault signing with durable objects

* feat: introduce Vault service for enhanced security

* feat: upgrade crypto library to v0.12.1 for enhanced security features

* build: update middleware build constraints

* feat: introduce struct-based handlers for improved organization

* feat: centralize database configuration

* build: update database seeding to target remote instance

* feat: enhance asset handling with shared coin type

* feat: decouple build process from database initialization

* refactor: move base UI components to a dedicated directory

* refactor: improve component structure for enhanced maintainability

* refactor: rename binding for clarity and consistency

* feat: introduce development task and environment configurations

* feat: introduce mprocs for simplified local development

* <no value>

* refactor: rename Vault DB to Controller DB for clarity

* refactor: simplify configuration loading and database connections

* feat: introduce MotrMode configuration to differentiate service roles

* refactor: restructure base components and consolidate metadata handling

* feat: introduce session context middleware for request handling

* feat: enhance task management with database migration support

* feat: Add database controller middleware and context retrieval methods

* refactor: Improve session context handling and add full database controller middleware

* feat: integrate Helia and Extism for Vault durable object

* refactor: rename resolver to frontend

* feat: streamline infrastructure and data management

* refactor: improve task management and dependency loading

* fix: remove legacy fetch handler from vault worker

* feat: integrate WebAuthn for secure authentication

* build: add hx-trigger for enhanced interaction

* refactor: centralize session ID handling in middleware

* refactor: simplify session context initialization

* feat/split workers (#6)

* refactor: rename claim route to register for clarity

* refactor: rename demo view to dashboard view

* feat: automate build and publish process

* refactor: unify database queries and models for vault operations

* feat: implement WASM compatible server and routing

* feat: introduce controller-based routing

* feat: implement passkey-based authentication

* feat: implement Cloudflare cache middleware for improved performance

* refactor: move ui components to ui package

* feat: add handler functions for login and registration

* refactor: centralize route registration logic

* feat: implement user registration and login with passkey support

* refactor: restructure view components for improved organization

* feat: enable handle-based authentication and session management

* refactor: improve config access and remove unused dependencies

* refactor: restructure middleware and configuration for clarity

* refactor: Remove external libraries

* docs: update architecture to reflect removal of WASM build

* refactor: centralize metadata and coin info types

* refactor: move auth types to auth package

* refactor: remove session management from vault service

* refactor: reorganize UI components and middleware for clarity

* refactor: move UI components to internal directory

* feat: add session expiry configuration

* refactor: streamline Taskfile and remove deprecated options

* feat: introduce account entities and UI components

* refactor: streamline asset representation with entity interfaces

* feat: introduce asset pricing and market data

* feat: enhance radar with session and cache middleware

* fix: update dependencies and resolve peer dependency conflicts

* feat: add blockchain entity and data model

* feat: introduce entity-specific query interfaces

* feat: Implement transaction creation, signing, and broadcasting methods

* feat: implement durable object vault with RPC and IPFS support

* refactor: align protobuf imports with updated cosm-orc package

* feat: simplify auth components by removing options

* feat: enhance data models for comprehensive crypto analysis

* feat: implement account lookup by handle

* refactor: simplify account card rendering

* feat: enhance UI rendering with middleware

* feat: remove helia file operations

* build: scaffold navigation component with templ

* feat: introduce UI layout components and dependency management

* feat: remove unused assets for templated html

* feat: implement authentication flow with WebAuthn and handle registration

* feat: remove radar cmd

* feat: enhance application architecture with module-based structure

* refactor: relocate config and middleware to internal packages

* feat: integrate session management into landing page

* feat: improve landing page handler setup and session handling

* feat: streamline initial setup and configuration process

* chore: reorganize project layout for clarity and maintainability

* chore: reorganize project structure by moving workers to 'cmd'

* refactor/orm

* feat: enhance task automation with root directory task

* refactor: relocate chart components to dedicated directory
This commit is contained in:
2025-05-09 12:51:47 -04:00
committed by GitHub
parent f6510fb5d2
commit 784a8a2c09
186 changed files with 23452 additions and 4752 deletions

View File

@@ -1,66 +1,120 @@
# yaml-language-server: $schema=https://json.schemastore.org/taskfile
#yaml-language-server: $schema=https://json.schemastore.org/taskfile
version: "3"
silent: true
# vars:
# VERSION:
# sh: git describe --tags
# COMMIT:
# sh: git log -1 --format='%H'
#
vars:
ROOT_DIR:
sh: git rev-parse --show-toplevel
tasks:
default:
clean:
desc: Remove build artifacts
cmds:
- task: gen:templ
- task: gen:sqlc
- task: build
- task: tidy:vault
- task: tidy:front
- task: tidy:root
gen:templ:
desc: Generate code
sources:
- "**/*.templ"
generates:
- "**/*_templ.go"
deploy:
desc: Deploy all
cmds:
- templ generate
gen:sqlc:
desc: Generate code
sources:
- x/**/model/*.sql
generates:
- x/**/model/*.go
cmds:
- sqlc generate -f "x/identity/model/sqlc.yaml"
- sqlc generate -f "x/portfolio/model/sqlc.yaml"
- sqlc generate -f "x/user/model/sqlc.yaml"
- task: deploy:vault
- task: deploy:front
build:
desc: Build
watch: true
desc: Build all
cmds:
- task: build:vault
- task: build:front
start:vault:
desc: Start the vault
dir: "{{.ROOT_DIR}}/cmd/vault"
cmd: bun run start
start:front:
desc: Start the frontend
dir: "{{.ROOT_DIR}}/cmd/front"
cmd: bun run start
build:vault:
desc: Build the vault
dir: "{{.ROOT_DIR}}/cmd/vault"
cmd: bun run build
sources:
- "**/*.go"
- main.go
generates:
- web/app.wasm
deps:
- task: gen:templ
- build/app.wasm
build:front:
desc: Build the frontend
dir: "{{.ROOT_DIR}}/cmd/front"
cmd: bun run build
sources:
- main.go
generates:
- build/app.wasm
deploy:vault:
desc: Deploy the vault
dir: "{{.ROOT_DIR}}/cmd/vault"
cmds:
- bun run deploy
deploy:front:
desc: Deploy the frontend
dir: "{{.ROOT_DIR}}/cmd/front"
cmd: bun run deploy
gen:templ:
desc: Generate templ
cmds:
- templ generate
- rm -rf .task
gen:sqlc:
desc: Generate sqlc
cmd: sqlc generate
db:migrate:
desc: Migrate the database
prompt:
- Are you sure you want to run this command? This will delete all data in the database.
cmds:
- task: migrate:d1
- task: gen:sqlc
vars:
TIME:
sh: date
cmds:
- rm -rf web/vault.wasm
- GOOS=js GOARCH=wasm go build -o web/vault.wasm .
- gum log --time rfc822 --level info "[BUILD] WASM Complete"
serve:
desc: Serve
dir: web
cmds:
- bunx live-server
migrate:d1:
internal: true
desc: Migrate the common database
dir: "{{.ROOT_DIR}}/cmd/vault"
cmd: npm run migrate
sources:
- schema.sql
generates:
- schema.sql
test:
desc: Test
tidy:vault:
desc: Go mod tidy the vault
internal: true
dir: "{{.ROOT_DIR}}/cmd/vault"
cmds:
- go test -v ./...
- bun run clean
- rm -rf ./build
- rm -rf ./dist
tidy:front:
desc: Go mod tidy the frontend
internal: true
dir: "{{.ROOT_DIR}}/cmd/front"
cmds:
- bun run clean
- rm -rf ./build
- rm -rf ./dist
tidy:root:
desc: Go mod tidy the root
internal: true
dir: "{{.ROOT_DIR}}"
cmds:
- go mod tidy
- rm -rf .task