Resma is a static site generator (SSG) written in Python. Below you'll find information on how to set up the development environment, run the application, and run tests.
As of now, you can use pipx
to install Resma in your machine:
pipx install git+https://github.com/brasilisclub/resma-cli
To set up the development environment for Resma, you'll need to have Python 3.12 installed. You can use Poetry to manage dependencies and run commands.
-
Clone the Repository:
git clone <repository-url> cd resma
-
Install Poetry:
If you don't have Poetry installed, you can install it by following the instructions on the Poetry installation page.
-
Install Dependencies:
poetry install
This command will install all the necessary dependencies for both the application and development.
-
Activate the Virtual Environment:
poetry shell
To run the application, use the following command:
resma
This command will start the Resma application as defined in resma.main:app
.
Resma uses taskipy
for task management. Here are some useful commands:
-
Linting:
task lint
This command will run Ruff to check for code issues and display any differences.
-
Formatting:
task format
This command will automatically format your code using Ruff.
-
Run Tests:
task test
This will run the test suite using pytest and display coverage information.
-
Run Mypy:
task mypy
This will run Mypy for type checking.
-
Pytest:
Configuration for pytest is specified in
pyproject.toml
under[tool.pytest.ini_options]
. -
Mypy:
Configuration for Mypy is specified under
[tool.mypy]
. -
Ruff:
Configuration for Ruff, including linting and formatting settings, is specified under
[tool.ruff]
.
If you would like to contribute to Resma, please fork the repository and submit a pull request with your changes. Ensure that your changes pass the linting and testing requirements before submitting.
For any questions or support, please contact:
- Thiago Campos: [email protected]
- Ivan Santiago: [email protected]
Resma is licensed under the GNU General Public License v3.0.
Thank you for using Resma!