From f427f9d8d463e38ef453117d410af453a16c2f49 Mon Sep 17 00:00:00 2001 From: OpenHands Date: Sat, 28 Sep 2024 02:41:34 -0400 Subject: [PATCH] Fix issue #4103: Improve description of how to do frontend setup and testing in `.openhands_instructions` (#4104) Co-authored-by: Graham Neubig --- .openhands_instructions | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/.openhands_instructions b/.openhands_instructions index 015ea101a0..c507eb32ce 100644 --- a/.openhands_instructions +++ b/.openhands_instructions @@ -1,7 +1,27 @@ OpenHands is an automated AI software engineer. It is a repo with a Python backend -(in the `openhands` directory) and typescript frontend (in the `frontend` directory). +(in the `openhands` directory) and TypeScript frontend (in the `frontend` directory). -- Setup: To set up the repo, including frontend/backend you can `make build` -- Backend Testing: All tests are in `tests/unit/test_*.py`. To test new code, you - can do `poetry run pytest tests/unit/test_xxx.py` where `xxx` is the appropriate - file for the current functionality. Write all tests with pytest. +General Setup: +- To set up the entire repo, including frontend and backend, run `make build` + +Backend: +- Located in the `openhands` directory +- Testing: + - All tests are in `tests/unit/test_*.py` + - To test new code, run `poetry run pytest tests/unit/test_xxx.py` where `xxx` is the appropriate file for the current functionality + - Write all tests with pytest + +Frontend: +- Located in the `frontend` directory +- Prerequisites: A recent version of NodeJS / NPM +- Setup: Run `npm install` in the frontend directory +- Testing: + - Run tests: `npm run test` + - To run specific tests: `npm run test -- -t "TestName"` +- Building: + - Build for production: `npm run build` +- Environment Variables: + - Set in `frontend/.env` or as environment variables + - Available variables: VITE_BACKEND_HOST, VITE_USE_TLS, VITE_INSECURE_SKIP_VERIFY, VITE_FRONTEND_PORT +- Internationalization: + - Generate i18n declaration file: `npm run make-i18n`