20 Commits

Author SHA1 Message Date
Mazen Touati
8c028773d8 feat(client): add tabs support (#52)
* feat(client): add `tabs` support

* chore: apply fixes

* test: fix types

* build: pw again

* build: more attempts to improve PW

* fix: regressions after refactoring to tabs

* style: apply TS style fixes

* build: more PW

* test: run a problematic test in serial mode

* test: no parallel pw

* test: fix race condition in PW

* test: pw one worker no retry
2026-01-31 02:10:41 +01:00
Mazen Touati
bc43530a9e chore: remove the status page (#51)
* chore: remove the status page

* style: apply TS style fixes

* build: reconfigure PW once again

* tes: update snapshots

* build: PW again
2026-01-30 02:07:37 +01:00
Mazen Touati
c015e62533 feat(routes): add support for processing OpenAPI specs (#50)
* feat: add support for processing OpenAPI specs

* refactor: apply rector
2026-01-29 01:56:57 +01:00
Mazen Touati
aa99eacd2c feat(relay): add transaction mode to requests (#49)
* feat(ui): initialize scroll masks onmount

* feat(relay): add transaction mode to requests

* test: set sqlite as default connection

* test(relay): add missing test

* chore: clearer access to implementation

* style: apply rector

* style: apply php style fixes

* test: ts type fixes
2026-01-26 01:03:55 +01:00
Mazen Touati
9118ad6d20 fix(ui): ui improvements follow up (tabs + state persistence + error viewer) (#47)
* chore(request): add horizontal scroll to tabs

* fix(ui): properly re-sync global headers when switching apps

* style: apply TS style fixes

* feat(response): show relay exception message when available

* test: update snapshot

* style: apply TS style fixes

* chore: improve select menu position to avoid border clash

* build: reduce PW workers in CI

* style: apply TS style fixes

* build: enable 8 workers for PW in CI

* test: fix e2e flakiness in multi-workers run

* test: halve PW workers

* test: one worker for PW in CI
2026-01-25 21:41:02 +01:00
Mazen Touati
0a4d44448b fix(relay): don't crash request on corrupt cookies (#48)
* fix(relay): don't crash request on corrupt cookies

* style: apply php style fixes
2026-01-25 20:52:43 +01:00
Mazen Touati
2895a0ddc6 feat(export): add shareable links (#41)
* feat(export): add shareable links

* chore: reconfigure PW

* test: fix namespace

* style: apply prettier

* chore: reduce workers count in CI for PW

tests are running slower (to the point some time out) and flaky

* fix: initialize pending request from store immediately

* chore: apply rector
2026-01-24 03:01:32 +01:00
Mazen Touati
edd9b7be4f build: fix gha issues (#40) 2026-01-17 21:09:14 +01:00
Mazen Touati
e1b844cee0 feat(history): add history viewer and rewind (#38)
* feat(ui): add `input group` base component

* feat(history): add history viewer and rewind

* test: update selector snapshot

* test: add PW base page

* style: apply TS style fixes

* chore(history): request history wiki

* chore(history): remove unwanted symbol

* chore: fix type

* style: apply TS style fixes
2026-01-17 20:50:00 +01:00
Mazen Touati
7b0af6feff fix(relay): properly process plain text payload (#39)
* fix(relay): properly process plain text payload

non-json text payload is passed as is.

* style: apply TS style fixes
2026-01-17 20:43:06 +01:00
Mazen Touati
a090c484f8 feat(routes): support multi-applications in config [breaking] (#34)
* chore: remove leftover console log

* chore: don't show a ring over dropdowns

* feat(routes): support multi-applications in config

* test: update snapshot
2026-01-12 21:56:38 +01:00
Mazen Touati
78d91a39c1 refactor(schemas): use standardized schema shapes (#33)
* refactor(schemas): use standardized schema shapes

* refactor: apply rector

* chore: fix types

* test(schemas): add missing tests

* chore(schemas): drop null schema

* feat(schemas): cover json rule
2026-01-12 21:23:04 +01:00
Mazen Touati
8780a79557 feat: persist UI state (#32)
* feat: persist UI state

* test: fix var declaration

* test: increate e2e timeout

sometimes there might be a network latency to load CDN assets like the fonts. Let's give the tests a maximum of 1 minute to fully run.
2026-01-11 01:32:57 +01:00
Mazen Touati
e3b3370ebe feat(relay): render dd() responses properly (#29)
* feat(relay): render `dd()` responses correctly

* wiki(relay): `dd` responses

* test: fix failing test after changing test id

* style: apply TS style fixes

* style: apply php style fixes

* chore: fix types

* build: always run php and js test on PR changes

* test(relay): simplify test

* build: use proper cache key for e2e job

* feat(relay): more assertive dd parser

* build: fix package.json indentation

* build: properly build for `dev` mode

* test: correctly install current branch artifacts for E2E

* test: fail fast for PW tests

* build: don't run php and js tests twice on PRs

* test: PW fixes

* test: correctly build artifacts from branch for E2E

* chore: fix naming

* fix(relay): properly parse some type of closures in `dd`

* test: enable parallel runs for PW

* test(relay): simplify `dd` E2E test
2026-01-04 15:57:57 +01:00
Mazen Touati
64ef46a8a4 fix(relay): properly relay request paramters (#28)
also:
- improve the relay test.
- remove unnecessary exemption of the content-type header from the headers list.
2026-01-03 16:48:30 +01:00
Mazen Touati
7b4c37d10d build: run E2E tests with the current branch (#27)
* build: run E2E tests with the current branch

* style: apply php style fixes

* build: cache PW browsers in GHA

* build: fix step name

* build: require branch name as argument for e2e setup

* chore: improve the e2e setup file traceability

* chore: improve file comment

* build: pass branch name as argument for e2e setup

* build: attempt to fix PW browser cache in GHA

* build: fix syntax issue with the e2e GHA

* build: also cache php installation for e2e test

* build: attempt to fix PW browsers cache

* build: don't attempt to cache php installation in e2e

it cannot be cached because it is installed in temporary runner directory
2025-12-27 01:27:23 +01:00
Mazen Touati
052cddeca6 feat(routes): support Spatie Data objects (#23)
* feat(routes): support Spatie Data objects

* refactor: apply rector
2025-11-21 18:47:12 +01:00
Mazen Touati
dc1f76b4a6 chore: setup E2E foundation (#22)
* chore: setup E2E foundation

* chore: use http to clone the repo

this will make it work in GHA (no SSH is needed).

* chore: add missing dependencies to e2e ci
2025-11-19 19:43:31 +01:00
Mazen Touati
23bf3b7691 fix(routes): support composed prefixes (#18)
also refactors and centralizes prefixes cleanup
2025-11-11 20:05:15 +01:00
Mazen Touati
c2aa6895d6 feat: initial alpha release
This commit represents the complete foundational codebase for Nimbus Alpha, a Laravel package that provides an integrated, in-browser API client with automatic schema discovery from validation rules.

IMPORTANT: This is a squashed commit representing the culmination of extensive development, refactoring, and architectural iterations. All previous commit history has been intentionally removed to provide a clean foundation for the public alpha release.

The development of Nimbus involved:
- Multiple architectural refactorings
- Significant structural changes
- Experimental approaches that were later abandoned
- Learning iterations on the core concept
- Migration between different design patterns

This messy history would:
- Make git blame confusing and unhelpful
- Obscure the actual intent behind current implementation
- Create noise when reviewing changes
- Reference deleted or refactored code

If git blame brought you to this commit, it means you're looking at code that was part of the initial alpha release. Here's what to do:

1. Check Current Documentation
   - See `/wiki/contribution-guide/README.md` for architecture details
   - Review the specific module's README if available
   - Look for inline comments explaining the reasoning

2. Look for Related Code
   - Check other files in the same module
   - Look for tests that demonstrate intended behavior
   - Review interfaces and contracts

3. Context Matters
   - This code may have been updated since alpha
   - Check git log for subsequent changes to this file
   - Look for related issues or PRs on GitHub

---

This commit marks the beginning of Nimbus's public journey. All future
commits will build upon this foundation with clear, traceable history.

Thank you for using or contributing to Nimbus!
2025-10-23 00:16:28 +02:00