← Back to project catalogue
GP-CS-0JG4OFEComputer ScienceReady

Angular approval workflow console

A server-authoritative Angular approval console with role-scoped queues, guarded state transitions, optimistic versions, idempotent commands, and hash-linked case history.

Angular approval workflow console project visual
GP-CS-0JG4OFE · Computer Science
  • Angular 22.1.3
  • TypeScript 6.0.3
  • RxJS 7.8.2
  • Angular Material 22.1.3
  • Fastify 5.12.1
  • SQLite
  • Vitest
  • Playwright
  • Docker

Project definition

Problem statement

Approval systems combine request facts, role authority, current workflow state, deadlines, comments and irreversible human decisions.

A visible button is not authorization. The server must reject wrong-role, wrong-state, self-review, repeated and stale commands while retaining inspectable evidence.

Project objectives

  • Model a versioned workflow with explicit states, transitions, roles and guards.
  • Present assigned work, the complete selected case and chronological history in one readable console.
  • Enforce role, state, resource, requester-conflict and separation-of-duty rules on the server.
  • Protect decisions with optimistic versions, semantic idempotency and atomic persistence.
  • Measure permission agreement, repeated lifecycle correctness, evidence integrity, coverage and local queue scaling.

Project structure

Project components

01

Approval console

Keeps the role-scoped queue, complete case, available decisions and ordered history visible in three persistent columns.

02

Workflow engine

Validates definition structure and evaluates fields, source state, role, requester conflict, prior actors, comments, amounts and expected versions.

03

Fastify API

Authenticates every protected request, rejects additional properties, applies resource scope and returns stable error outcomes.

04

SQLite store

Commits the conditional case update, event record and idempotency response in one transaction.

05

Evidence chain

Links ordered approval events with SHA-256 digests and verifies the retained sequence.

06

Verification laboratory

Runs core, API, component and browser tests together with permission, lifecycle, audit and queue experiments.

Methodology

Project workflow

  1. 01
    Open assigned work

    A prepared reviewer sees only cases assigned to the active role and workflow state.

  2. 02
    Inspect the complete case

    The console presents requester, department, purpose, supplier, amount, risk note, due state and current version.

  3. 03
    Apply a guarded decision

    The API repeats authorization and validates the expected version, required comment and transition-specific rules.

  4. 04
    Commit and refresh

    SQLite updates the case and replay evidence atomically, then Angular reloads the queue and selected record.

  5. 05
    Verify the history

    The right column displays ordered events and the current hash-chain verification result.

Demonstration scenario

A department reviewer recommends a synthetic research request, a different finance reviewer clears its budget, and a committee chair who performed neither earlier review approves it. The queue changes after every decision and the complete verified history remains visible.

Engineering

Tools and method

Angular application
Standalone Angular 22 components, strict TypeScript, signals for local view state and RxJS for HTTP request chains.
Authorization model
One shared assessor supports client action discovery while the Fastify route remains authoritative for execution.
Concurrency and replay
Expected case versions prevent stale approval and actor-scoped idempotency keys bind to the complete semantic command.
Persistence
Indexed SQLite case fields, JSON payloads, conditional updates, transactions, write-ahead logging and hash-linked events.
Delivery
Locked pnpm dependencies, production secret guards, a non-root Docker image and GitHub Actions for all quality gates.

Testing

Evaluation

Evaluation measures

  • 42 of 42 role-state permission cells match independently declared expectations
  • 100 of 100 repeated four-stage approval lifecycles complete
  • 100 of 100 resulting event chains verify
  • 86 core and API tests with 96.55 percent line and 89.69 percent branch coverage
  • Three Angular component tests and three Chromium workflows
  • Queue filter and sort observations for 100, 1,000 and 5,000 prepared records

Project boundaries

  • All actors, requests, organisations and amounts are synthetic.
  • The prepared role selector is a local demonstration bootstrap, not production authentication.
  • SQLite and local hash-linked evidence do not provide multi-instance storage or independent tamper prevention.
  • Institutional deployment requires trusted identity, tenant policy, workflow governance, TLS, rate limiting, external logging, backups, privacy review and accessibility testing.

Included

  1. 01Three-column approval console, strict workflow engine, transactional API, SQLite evidence store, experiments, and test suite
  2. 02Prepared sample data and demonstration scenarios
  3. 03Automated tests and measured results
  4. 04Complete source code in a private GitHub repository
  5. 05Complete project documentation in PDF and editable Word formats with synopsis, abstract, methodology, architecture diagrams, test results, screenshots, and conclusion
  6. 06Setup and usage guide

Project record

No information is collected on this page.

Permanent project ID
GP-CS-0JG4OFE
Catalogued
21 Aug 2026
Completed
25 Aug 2026
Verified
25 Aug 2026
Demonstration
Included in repository

Handover

After purchase

  1. 01
    Payment is confirmed

    The project is marked unavailable and cannot be purchased again.

  2. 02
    Repository access is granted

    The buyer's submitted GitHub account receives access to the private repository.

  3. 03
    The purchase record is delivered

    The certification sheet is prepared from the reviewed buyer details and sent privately by email.