Files
browser-use/browser_use
Magnus Müller 08f8fbc499 Refactor DOMWatchdog event retrieval and update tests for improved reliability
- Changed `_get_recent_events_str` method in `dom_watchdog.py` to return recent events as JSON instead of CSV, enhancing data structure and usability.
- Updated tests in `test_browser_event_ClickElementEvent.py`, `test_browser_event_NavigateToUrlEvent.py`, and others to reflect changes in event handling and improve error handling.
- Marked several tests as skipped due to known issues, ensuring clarity in test results.
2025-08-26 22:59:07 -07:00
..
2025-08-26 17:12:23 -07:00
2025-08-26 14:23:40 -07:00
2025-08-26 18:13:11 -07:00
2025-07-11 18:14:03 +02:00
2025-08-19 18:10:52 -07:00
2025-08-26 16:50:35 -07:00
2025-08-20 22:55:36 -07:00
2025-08-26 15:01:48 -07:00
2025-08-18 23:37:31 -07:00
2025-08-26 21:21:48 -07:00
2025-08-26 17:34:48 -07:00
2025-08-24 16:47:02 -07:00
2025-03-28 18:11:36 -07:00
2025-07-21 12:59:11 +02:00
2024-11-06 18:18:00 +01:00
2025-08-04 22:57:56 -04:00

Codebase Structure

The code structure inspired by https://github.com/Netflix/dispatch.

Very good structure on how to make a scalable codebase is also in this repo.

Just a brief document about how we should structure our backend codebase.

Code Structure

src/
/<service name>/
models.py
services.py
prompts.py
views.py
utils.py
routers.py

    	/_<subservice name>/

Service.py

Always a single file, except if it becomes too long - more than ~500 lines, split it into _subservices

Views.py

Always split the views into two parts

# All
...

# Requests
...

# Responses
...

If too long → split into multiple files

Prompts.py

Single file; if too long → split into multiple files (one prompt per file or so)

Routers.py

Never split into more than one file