Updated readme

This commit is contained in:
Constantin Graf
2024-04-15 19:26:26 +02:00
parent 34c57cc5f0
commit 1972fc51aa
2 changed files with 27 additions and 15 deletions

View File

@@ -1,14 +1,24 @@
# Time-tracking project # solidtime
## Setup the Project ![GitHub License](https://img.shields.io/github/license/solidtime-io/solidtime)
![Codecov](https://img.shields.io/codecov/c/github/solidtime-io/solidtime?style=flat-square&logo=codecov)
![GitHub Actions Unit Tests Status](https://img.shields.io/github/actions/workflow/status/solidtime-io/solidtime/phpunit?style=flat-square)
![PHPstan badge](https://img.shields.io/badge/PHPstan-Level_9-blue?style=flat-square&color=blue)
System Requirements: ![Screenshot of the solidtime application with header: solidtime - The modern Open-Source Time Tracker](docs/solidtime-banner.png "solidtime Banner")
* Docker
* PHP 8.3 ## Local setup for development
* Composer
**System requirements**
* Docker
```bash ```bash
composer install docker run --rm \
--pull=always \
-v "$(pwd)":/opt \
-w /opt \
laravelsail/php83-composer:latest \
bash -c "composer install --ignore-platform-reqs"
cp .env.example .env cp .env.example .env
@@ -23,14 +33,13 @@ cp .env.example .env
./vendor/bin/sail npm install ./vendor/bin/sail npm install
./vendor/bin/sail npm run build ./vendor/bin/sail npm run build
``` ```
Make sure to set the APP_PORT and VITE_PORT inside your `.env` file to a port that is not already used by your system. Make sure to set the APP_PORT and VITE_PORT inside your `.env` file to a port that is not already used by your system.
## Setup with Reverse Proxy ### Setup with Reverse Proxy
Additional System Requirements: **Additional System Requirements**
* Traefik 2 Reverse-Proxy (https://github.com/korridor/reverse-proxy-docker-traefik) * Traefik 2 Reverse-Proxy (https://github.com/korridor/reverse-proxy-docker-traefik)
Add the following entry to your `/etc/hosts` Add the following entry to your `/etc/hosts`
@@ -42,12 +51,12 @@ Add the following entry to your `/etc/hosts`
127.0.0.1 mail.solidtime.test 127.0.0.1 mail.solidtime.test
``` ```
## Running E2E Tests ### Running E2E Tests
`./vendor/bin/sail up -d ` will automatically start a Playwright UI server that you can access at `https://playwright.solidtime.test`. `./vendor/bin/sail up -d ` will automatically start a Playwright UI server that you can access at `https://playwright.solidtime.test`.
Make sure that you use HTTPS otherwise the resources will not be loaded correctly. Make sure that you use HTTPS otherwise the resources will not be loaded correctly.
## Recording E2E Tests ### Recording E2E Tests
To record E2E tests, you need to install and execute playwright locally (outside the Docker container) using: To record E2E tests, you need to install and execute playwright locally (outside the Docker container) using:
@@ -56,17 +65,16 @@ npx playwright install
npx playwright codegen solidtime.test npx playwright codegen solidtime.test
``` ```
## E2E Troubleshooting ### E2E Troubleshooting
If E2E tests are not working at all, make sure you do not have the Vite server running and just run `npm run build` to update the version. If E2E tests are not working at all, make sure you do not have the Vite server running and just run `npm run build` to update the version.
If the E2E tests are not working consistently and fail with a timeout during the authentication, you might want to delete the `test-results/.auth` directory to force new test accounts to be created. If the E2E tests are not working consistently and fail with a timeout during the authentication, you might want to delete the `test-results/.auth` directory to force new test accounts to be created.
## Generate ZOD Client ### Generate ZOD Client
The Zodius HTTP client is generated using the following command: The Zodius HTTP client is generated using the following command:
```bash ```bash
npm run zod:generate npm run zod:generate
``` ```
@@ -76,3 +84,7 @@ This project is in a very early stage. The structure and APIs are still subject
Therefore we do not currently accept any contributions, unless you are a member of the team. Therefore we do not currently accept any contributions, unless you are a member of the team.
As soon as we feel comfortable enough that the application structure is stable enough, we will open up the project for contributions. As soon as we feel comfortable enough that the application structure is stable enough, we will open up the project for contributions.
## License
This project is open-source and available under the GNU Affero General Public License v3.0 (AGPL v3). Please see the [license file](LICENSE.md) for more information.

BIN
docs/solidtime-banner.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB