pnpm install
pnpm startTo use all the features from ewoksweb, an instance of ewoksserver must be running locally on the port 5000.
Such an instance can be installed and run by running
pip install ewoksserver
ewoks-serverAnother ewoksserver instance (remote for example) can be used instead by
setting its URL through the env variable VITE_SERVER_URL in .env.local
(default: http://127.0.0.1:8000).
Similarly, the env variable VITE_SERVER_API_SUFFIX can be changed to request a
different version of the ewoksserver API. Ex:
/api(default): requests the latest version/api/v1: requests the latest v1.x version/api/v1.0.0: requests a specific version (1.0.0in this case)
To run Cypress tests, the ewoksweb instance must be running (pnpm start) and
the ewoksserver instance must be configured appropriately to serve the test
resources:
ewoks-server --frontend-testsCypress tests can then be run with
pnpm cypress # in interactive GUI mode
# OR
pnpm cypress:run # to run all specs in CLIBuilding the ewoksweb python package
pnpm build:package
pip install build
python -m build -sSince ewoksweb is a companion package of ewoksserver, it is released as a
Python package on PyPI.
To do a new release:
- Checkout
mainand verify that your working tree is clean. - Edit the version in
pyproject.toml - Commit the change and push it to
main. The CI will trigger and run the tests.
If the CI fails, the package cannot be released. Try to relaunch it to see if it was a one-off failure (can happen with Cypress). If not, fix the CI first!
After the CI succeeds, go to the Release workflow page
- Click on "Run workflow". Leave the checkbox asking if the release should be done on TestPyPI unchecked and click on "Run workflow" button below.
- Wait for the workflow to complete. Once it is done, a git tag will automatically be created with the version number.
- Create a Github release out of the newly added tag
- Write the release notes using the tags Compare page to gather the relevant changes since last release. Try to match the style of previous release notes.
- Click on Publish release
Congratulations, the release is done 😎!
The documentation is composed of RST files located in doc. You can look at the
Sphinx doc
for information on how to write RST files.
If a new file is created, don't forget to reference it in one of the toctree
directive.
The documentation is built with Sphinx
that generates HTML pages out of the RST files. The configuration of Sphinx is
in doc/conf.py.
Requirements (including Sphinx) can be installed with
pip install [--user] .[doc]Then, build the documentation with
sphinx-build doc build/sphinx/html -E -aThe generated HTML pages will be available in build/sphinx/html. You can
browse them by opening build/sphinx/html/index.html in your browser.
When developing/writing doc, sphinx-autobuild can be used to automatically rebuild the documentation on changes
sphinx-autobuild doc build/sphinx/html
The dynamic build will then be served on http://127.0.0.1:8000/.