Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
b5d9e43
docs: Add the content of Fork & branch processing
LeoLuosifen Aug 19, 2025
852e350
Add Code style and Testing
Sallie00 Aug 19, 2025
f9a72d0
docs: Add the "Pull Request Regulation" part.
ziqi0067 Aug 19, 2025
9143a2c
docs: Fixed the "pip" to "pipenv".
ziqi0067 Aug 19, 2025
560ceed
docs: Fixed the content of the Pull Request Regulation format
LeoLuosifen Aug 19, 2025
88dedfe
docs(contributing): update introduction section of How to contribute …
FengW01 Aug 20, 2025
3921e57
Merge remote-tracking branch 'origin/yluo0664' into fwan
FengW01 Aug 20, 2025
2fa3a60
docs(contributing): update introduction section of How to contribute …
FengW01 Aug 20, 2025
48edb0e
docs: update contributing guide
FengW01 Aug 20, 2025
730e00a
docs: A strategy module has been added to the Pull Request section, a…
ziqi0067 Aug 20, 2025
79db946
feat: add Global Column Names class to replace string
LeoLuosifen Aug 23, 2025
01e95a6
code sanisitation(First version)
Aug 23, 2025
cfe0068
Merge branch 'ltc' into yluo0664
LeoLuosifen Aug 23, 2025
0b20c6a
fix: updated the comment
LeoLuosifen Aug 23, 2025
84bb3ed
code sanisitation(Version 2)
Aug 23, 2025
825febb
fix: replaced the string that using Class ColNames
LeoLuosifen Aug 23, 2025
b4a31da
fix: replaced the string that using Class ColNames in natural_ventila…
LeoLuosifen Aug 23, 2025
d2f4139
fix: replaced the string that using Class ColNames in extract_df.py a…
LeoLuosifen Aug 23, 2025
9b3ccac
docs: update pull request regulation of contributing.md
Sallie00 Aug 23, 2025
38e4da1
fix: replaced the string that using Class ColNames in wind.py and cha…
Sallie00 Aug 23, 2025
8138218
fix: replaced the string that using Class ColNames in charts_sun.py
LeoLuosifen Aug 23, 2025
2ab0f0c
fix: replaced the string that using Class ColNames in utils.py and ps…
Sallie00 Aug 23, 2025
be943a6
fix: Updated ElementIds of global_column_names.py
Kira-Liu00 Aug 23, 2025
2452ebe
fix: delete components.py
Sallie00 Aug 23, 2025
33f4865
Fix:Updated the ElementIDs of the explorer.py and global_column_names.py
ziqi0067 Aug 23, 2025
cf56585
fix: Updated ElementIds of the psy-chart and global _column _names.py
Kira-Liu00 Aug 23, 2025
bd4aced
Merge origin/Ziqi into Kira_Liu: take theirs for global_column_names.py
Kira-Liu00 Aug 23, 2025
2b82d79
Fix: Updated the ElementIds of global_column_names.py
Kira-Liu00 Aug 23, 2025
34f1ad3
Fix:Updated the ElementIDs of the explorer.py, global_column_names.py…
ziqi0067 Aug 23, 2025
d62aa83
Merge remote-tracking branch 'origin/Ziqi' into Kira_Liu
Kira-Liu00 Aug 24, 2025
85d45a0
fix: Updated the ElementIds of outdoor.py, psy-chart.py, global_colum…
Kira-Liu00 Aug 24, 2025
1e1cccf
Fix: update the sun.py, wind.py and global_column_names.py
FengW01 Aug 24, 2025
da93f7f
Fix:
Aug 24, 2025
01f4045
Fix:Align development branch versions to avoid conflicts
Aug 24, 2025
7828453
fix: aligned development branch versions of 3 days ago to avoid confl…
LeoLuosifen Aug 24, 2025
c7f11c4
fix: updated new column names
LeoLuosifen Aug 24, 2025
a6acb0b
fix: replaced the string with new column names
LeoLuosifen Aug 24, 2025
e85bfe1
fix: renamed the python file of global_element_ids.py
LeoLuosifen Aug 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.8.18
current_version = 0.9.0
commit = True
tag = True

Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/cypress.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
name: Cypress 🌲
on: [push, pull_request]
name: Cypress Testing 🌲
on:
push:
branches:
- development
pull_request:
branches:
- development
Comment on lines +1 to +8
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

CI won’t run on PRs to main with these triggers.

This PR targets main, but the workflow triggers only on development. End-to-end tests will be skipped for main PRs and pushes to main.

 name: Cypress Testing 🌲
 on:
-  push:
-    branches:
-      - development
-  pull_request:
-    branches:
-      - development
+  push:
+    branches: [main, development]
+  pull_request:
+    branches: [main, development]
+  workflow_dispatch:

Please re-run this PR after the change to confirm the Cypress job triggers on main.


🏁 Script executed:

#!/bin/bash
# Show the first 20 lines of the Cypress workflow to inspect its triggers
sed -n '1,20p' .github/workflows/cypress.yml

# Highlight all 'branches' entries to verify which branches are included
rg -nP "branches" -C2 .github/workflows/cypress.yml || true

Length of output: 561


Add “main” to the Cypress workflow triggers

The current workflow only runs on pushes and PRs against development, so any PR targeting main (like this one) will skip end-to-end tests. Please update .github/workflows/cypress.yml to include both main and development—and add a manual trigger if desired—so CI runs on main as well.

• File: .github/workflows/cypress.yml
• Replace lines 2–8 with:

 on:
-  push:
-    branches:
-      - development
-  pull_request:
-    branches:
-      - development
+  push:
+    branches: [main, development]
+  pull_request:
+    branches: [main, development]
+  workflow_dispatch:

After making this change, re-run the workflow on this PR to confirm that the Cypress job now triggers for main branch changes.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
name: Cypress Testing 🌲
on:
push:
branches:
- development
pull_request:
branches:
- development
name: Cypress Testing 🌲
on:
push:
branches: [main, development]
pull_request:
branches: [main, development]
workflow_dispatch:
🤖 Prompt for AI Agents
.github/workflows/cypress.yml lines 1 to 8: the workflow only triggers on pushes
and PRs to development so CI will skip PRs targeting main; update the on:
section to include both development and main branches for push and pull_request
and add a manual workflow_dispatch trigger (if desired) so tests can be run
manually; replace the current lines 2–8 with an on: block that lists push and
pull_request with branches: ['development','main'] and also include
workflow_dispatch to allow manual runs, then commit and re-run the workflow on
this PR to verify Cypress triggers for main.

jobs:
cypress:
runs-on: ubuntu-latest
Expand Down
41 changes: 13 additions & 28 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,46 +1,31 @@
# .github/workflows/deploy.yml
name: Deploy 🚀 Clima to Google Cloud Run (☁🏃)

on:
push:
branches:
- main

jobs:
deploy:
name: Deploying 🚀 Clima
runs-on: ubuntu-latest
if: "contains(github.event.head_commit.message, 'bump version')"
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v4
- id: auth
uses: google-github-actions/auth@v2
with:
python-version: '3.11'

- name: Export gcloud related env variable
run: export CLOUDSDK_PYTHON="/usr/bin/python3"
credentials_json: ${{ secrets.GCP_SA_KEY_JSON }}

# Build and push image to Google Container Registry
- name: Setting up
uses: google-github-actions/setup-gcloud@v0
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@v1
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

setup-gcloud@v1 is deprecated on new runners; bump to v2

actionlint warns v1 is too old. Upgrade to v2.

-      - name: Set up Cloud SDK
-        uses: google-github-actions/setup-gcloud@v1
+      - name: Set up Cloud SDK
+        uses: google-github-actions/setup-gcloud@v2
🧰 Tools
🪛 actionlint (1.7.7)

23-23: the runner of "google-github-actions/setup-gcloud@v1" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🤖 Prompt for AI Agents
.github/workflows/deploy.yml around line 23: the workflow uses the deprecated
google-github-actions/setup-gcloud@v1; update the action reference to
google-github-actions/setup-gcloud@v2 to remove the deprecation warning, then
verify and adjust any input keys that changed in v2 (consult the v2 docs for
exact input names such as export_default_credentials or project/credentials
handling) and run actionlint and the workflow to confirm no other syntax or
input errors remain.

with:
version: '318.0.0'
service_account_key: ${{ secrets.GCP_SA_KEY_JSON }}
service_account_email: "federico.tartarini@bears-berkeley.sg"
project_id: clima-316917
project_id: heat-stress-scale

- name: Building (🏗️)
run: |-
- name: Building (🏗️) and Deploying (🚀)
run: |
gcloud builds submit \
--tag us-docker.pkg.dev/clima-316917/gcr.io/clima

# Setup gcloud CLI
- name: Deploy (🚀)
uses: google-github-actions/deploy-cloudrun@v1
with:
service: clima
image: us-docker.pkg.dev/clima-316917/gcr.io/clima
region: us-central1
credentials: ${{ secrets.GCP_SA_KEY_JSON }}
project_id: clima-316917
--project=clima-316917 \
--substitutions=_REPO_NAME="clima",_PROJ_NAME="clima-316917",_IMG_NAME="main",_GCR="us.gcr.io",_REGION="us-central1",_MEMORY="4Gi",_CPU="2"
Comment on lines 25 to 31
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Project mismatch: setup uses heat-stress-scale, build submits to clima-316917

These should match; otherwise auth/quotas/logs land in different projects. Align both to the intended GCP project (pick one).

-        with:
-          project_id: heat-stress-scale
+        with:
+          project_id: clima-316917
@@
-          --project=clima-316917 \
+          --project=${{ steps.gcloud_setup.outputs.project_id || 'clima-316917' }} \

Or hardcode one project consistently in both places.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
project_id: heat-stress-scale
- name: Building (🏗️)
run: |-
- name: Building (🏗️) and Deploying (🚀)
run: |
gcloud builds submit \
--tag us-docker.pkg.dev/clima-316917/gcr.io/clima
# Setup gcloud CLI
- name: Deploy (🚀)
uses: google-github-actions/deploy-cloudrun@v1
with:
service: clima
image: us-docker.pkg.dev/clima-316917/gcr.io/clima
region: us-central1
credentials: ${{ secrets.GCP_SA_KEY_JSON }}
project_id: clima-316917
\ No newline at end of file
--project=clima-316917 \
--substitutions=_REPO_NAME="clima",_PROJ_NAME="clima-316917",_IMG_NAME="main",_GCR="us.gcr.io",_REGION="us-central1",_MEMORY="4Gi",_CPU="2"
- uses: google-github-actions/setup-gcloud@v0
with:
project_id: clima-316917
- name: Building (🏗️) and Deploying (🚀)
run: |
gcloud builds submit \
--project=${{ steps.gcloud_setup.outputs.project_id || 'clima-316917' }} \
--substitutions=_REPO_NAME="clima",_PROJ_NAME="clima-316917",_IMG_NAME="main",_GCR="us.gcr.io",_REGION="us-central1",_MEMORY="4Gi",_CPU="2"
🧰 Tools
🪛 YAMLlint (1.37.1)

[error] 31-31: no new line character at the end of file

(new-line-at-end-of-file)

🤖 Prompt for AI Agents
In .github/workflows/deploy.yml around lines 25 to 31, the workflow’s project_id
is set to heat-stress-scale but the gcloud builds submit uses
--project=clima-316917 (mismatched GCP projects); choose the correct project and
make them consistent by updating either project_id to clima-316917 or changing
the --project and any _PROJ_NAME/_REPO_NAME substitutions to heat-stress-scale
so both the workflow metadata and the gcloud invocation use the same project
identifier; ensure any related substitution variables (_PROJ_NAME, _REPO_NAME)
and IAM/secret references are updated accordingly.

25 changes: 16 additions & 9 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
name: Python 🐍
on: [push, pull_request]
name: Python Testing 🐍
on:
push:
branches:
- development
pull_request:
branches:
- development
jobs:
pytest:
runs-on: ubuntu-latest
Expand All @@ -17,13 +23,14 @@ jobs:
pip install pipenv
pipenv install --dev

- name: Test Clima
- name: Ruff Check
run: |-
pipenv run python -m pytest
pipenv run ruff check . --output-format=github

- name: Ruff Format (verify)
run: |-
pipenv run ruff format --check .

- name: Run Black
# TODO: Add to dev dependencies: Adding it right now
# bumps other dependencies and the application won't run.
- name: Test Clima
run: |-
pip install black
black . --check
pipenv run python -m pytest
10 changes: 10 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.12.9
hooks:
# Run the linter.
- id: ruff-check
args: [ --fix ]
# Run the formatter.
- id: ruff-format
Comment on lines +7 to +10
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Fix YAML indentation under hooks and add missing EOF newline

Current indentation under hooks is deeper than pre-commit’s canonical style and flagged by YAMLlint; also there’s no trailing newline.

 repos:
 - repo: https://github.com/astral-sh/ruff-pre-commit
   # Ruff version.
   rev: v0.12.9
   hooks:
-    # Run the linter.
-    - id: ruff-check
-      args: [ --fix ]
-    # Run the formatter.
-    - id: ruff-format
+  # Run the linter.
+  - id: ruff-check
+    args: [--fix]
+  # Run the formatter.
+  - id: ruff-format
+
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- id: ruff-check
args: [ --fix ]
# Run the formatter.
- id: ruff-format
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.12.9
hooks:
# Run the linter.
- id: ruff-check
args: [--fix]
# Run the formatter.
- id: ruff-format
🧰 Tools
🪛 YAMLlint (1.37.1)

[warning] 7-7: wrong indentation: expected 2 but found 4

(indentation)


[error] 10-10: no new line character at the end of file

(new-line-at-end-of-file)

🤖 Prompt for AI Agents
.pre-commit-config.yaml lines 7-10: the list items under hooks are over-indented
and the file is missing a trailing newline; re-indent the hooks block to match
pre-commit canonical style (list items and their keys aligned with two spaces
under the parent mapping, e.g. ensure "- id:" lines are at the correct list
indentation level under "hooks:" and any "args:" stays as a child of the
corresponding list item), and add a final newline (EOF) at the end of the file.

1 change: 1 addition & 0 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ pytest = "*"
bump2version = "*"
black = "*"
ruff = "*"
pre-commit = "*"

[requires]
python_version = "3.11"
359 changes: 239 additions & 120 deletions Pipfile.lock

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion assets/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,7 @@
"orientation": "portrait",
"background_color": "#ffffff",
"display": "standalone",
"id": "0.8.18",
"id": "0.9.0",
"description": "CBE Clima Tool: a free and open-source web application for climate analysis tailored to sustainable building design",
"start_url": "/",
"scope": "/",
Expand Down
2 changes: 1 addition & 1 deletion cloudbuild.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ steps:
'--image', '$_GCR/$_PROJ_NAME/$_REPO_NAME/$_IMG_NAME',
'--region', '$_REGION',
'--memory', '$_MEMORY',
'--cpu', '$_CPU',]
'--cpu', '$_CPU']
16 changes: 8 additions & 8 deletions config.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,21 +61,21 @@ class PageInfo:
TEMP_RH_NAME = "Temperature and Humidity"
TEMP_RH_ORDER = 2
SOLAR_RADIATION_NAME = "Solar Radiation"
SOLAR_RADIATION_ORDER = 2
SOLAR_RADIATION_ORDER = 3
SUN_NAME = "Sun and Clouds"
SUN_ORDER = 3
SUN_ORDER = 4
WIND_NAME = "Wind"
WIND_ORDER = 4
WIND_ORDER = 5
PSYCHROMETRIC_NAME = "Psychrometric Chart"
PSYCHROMETRIC_ORDER = 5
PSYCHROMETRIC_ORDER = 6
NATURAL_VENTILATION_NAME = "Natural Ventilation"
NATURAL_VENTILATION_ORDER = 6
NATURAL_VENTILATION_ORDER = 7
UTCI_NAME = "Outdoor Comfort"
UTCI_ORDER = 7
UTCI_ORDER = 8
EXPLORER_NAME = "Data Explorer"
EXPLORER_ORDER = 8
EXPLORER_ORDER = 9
CHANGELOG_NAME = "Changelog"
CHANGELOG_ORDER = 9
CHANGELOG_ORDER = 10
NOT_FOUND_NAME = "404"


Expand Down
4 changes: 3 additions & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,16 @@ The CBE Clima Tool is a web-based application built to support climate analysis

The CBE Clima Tool is open source. We have released the source code on a [public repository](https://github.com/CenterForTheBuiltEnvironment/clima). We welcome contributions from the community ([more info here](contributing/contributing.md)).

### Video Tutorial
## Video Tutorial

Learn more about the CBE Clima Tool by watching the following video.

{% embed url="https://www.youtube.com/watch?v=VJ_wOHadVdw" %}
CBE Clima tool tutorial and overview
{% endembed %}

[Watch on YouTube](https://www.youtube.com/watch?v=VJ_wOHadVdw)

## Contributions

This ongoing project results from the collaboration and contributions of the people listed below.
Expand Down
149 changes: 149 additions & 0 deletions docs/contributing/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,72 @@ description: Guide on how to contribute to this project
# How to contribute

First off, thanks for taking the time to contribute!
We use GitHub as our main collaboration platform. Please work from the `development` branch, create small feature branches, and open focused pull requests. Follow Conventional Commit messages (e.g., `feat:`, `fix:`, `docs:`), format Python code with Black, and add tests where needed. Never merge your own PR—wait for review and address all comments (including AI reviewer suggestions). Use Issues and Projects to track tasks and discussions.

> This project requires Python 3.11. Do not use Python 3.12 or newer, as it may cause dependency incompatibilities, build failure or runtime errors

Comment on lines +8 to +11
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Align formatter guidance: choose Ruff or Black (docs vs CI mismatch)

CI uses Ruff (check/format). The doc says “format Python code with Black” and later installs Black. This is conflicting. Recommend standardizing on Ruff (formatter) and dropping Black from mandatory steps.

-We use GitHub as our main collaboration platform. Please work from the `development` branch, create small feature branches, and open focused pull requests. Follow Conventional Commit messages (e.g., `feat:`, `fix:`, `docs:`), format Python code with Black, and add tests where needed. Never merge your own PR—wait for review and address all comments (including AI reviewer suggestions). Use Issues and Projects to track tasks and discussions.
+We use GitHub as our main collaboration platform. Please work from the `development` branch, create small feature branches, and open focused pull requests. Follow Conventional Commits (e.g., `feat:`, `fix:`, `docs:`), format Python code with Ruff (`ruff format`), and add tests where needed. Never merge your own PR—wait for review and address all comments (including AI reviewer suggestions). Use Issues and Projects to track tasks and discussions.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
We use GitHub as our main collaboration platform. Please work from the `development` branch, create small feature branches, and open focused pull requests. Follow Conventional Commit messages (e.g., `feat:`, `fix:`, `docs:`), format Python code with Black, and add tests where needed. Never merge your own PR—wait for review and address all comments (including AI reviewer suggestions). Use Issues and Projects to track tasks and discussions.
> This project requires Python 3.11. Do not use Python 3.12 or newer, as it may cause dependency incompatibilities, build failure or runtime errors
We use GitHub as our main collaboration platform. Please work from the `development` branch, create small feature branches, and open focused pull requests. Follow Conventional Commits (e.g., `feat:`, `fix:`, `docs:`), format Python code with Ruff (`ruff format`), and add tests where needed. Never merge your own PR—wait for review and address all comments (including AI reviewer suggestions). Use Issues and Projects to track tasks and discussions.
> This project requires Python 3.11. Do not use Python 3.12 or newer, as it may cause dependency incompatibilities, build failure or runtime errors
🤖 Prompt for AI Agents
In docs/contributing/contributing.md around lines 8 to 11, the contributor guide
instructs to "format Python code with Black" which conflicts with the CI that
uses Ruff; update the document to standardize on Ruff as the project formatter,
remove or replace references to Black, and adjust any installation or setup
steps in the docs to show installing/configuring Ruff (and its rules/plugins) so
the docs match CI and avoid telling contributors to use Black.


## General Feedback

If you have a general feedback about our project, please do not open an issue but instead please fill in this [form](https://forms.gle/LRUq3vsFnE1QCLiA6)

## Fork & branch processing

First fork the origin repository to your own github repository, then clone the repository to your local computer.

```bash
git clone https://github.com/Your Account name/clima.git
cd clima
```

Set up the upstream repository and check the output repositories.

```bash
git remote add upstream https://github.com/CenterForTheBuiltEnvironment/clima.git

git remote -v
```

The terminal should output a list:

- `origin → your Fork repository`
- `upstream → origin repository`

Check all branches.

```bash
git branch -a
```

The terminal will show a list of branches:

```bash
> * main
remotes/origin/HEAD -> origin/main
remotes/origin/development
remotes/origin/main
```

Pull the development branch first, and if the terminal does not notice you that you should try the second command.

```bash
git checktout development

git checkout -b development origin/development
```

Comment on lines +54 to +61
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Typos and phrasing in branch checkout instructions

Fix “checktout” and clarify the fallback command.

-Pull the development branch first, and if the terminal does not notice you that you should try the second command.
+Pull the development branch. If that fails, try the second command to create a local tracking branch.
@@
-git checktout development
+git checkout development
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Pull the development branch first, and if the terminal does not notice you that you should try the second command.
```bash
git checktout development
git checkout -b development origin/development
```
Pull the development branch. If that fails, try the second command to create a local tracking branch.
🤖 Prompt for AI Agents
In docs/contributing/contributing.md around lines 54-61, the example has a typo
("checktout") and an unclear fallback instruction; change the first command to
"git checkout development" and reword the fallback to say that if the branch
does not exist locally, fetch from origin and create a local tracking branch
using "git fetch origin" followed by "git checkout -b development
origin/development" (or simply "git checkout -b development
origin/development"); ensure the wording is concise and replaces the phrase "if
the terminal does not notice you that you should try the second command" with
"if the branch does not exist locally, run the fallback commands".

Create a new branch in the development branch.

```bash
git checkout -b (your branch name)
```

Finally update and push to your repository branch if you modify the files.

```bash
git push origin (your branch name)
```

## Code of Conduct

Available [here](code_of_conduct.md)
Expand All @@ -18,6 +79,57 @@ Available [here](code_of_conduct.md)

We use Black.exe to format the code.

Install Black:

We use ruff to enforce the code style and code formatting. You can run it with:

```bash
pipenv run ruff check .
pipenv run ruff format .
```

To ensure that the code is formatted correctly, we use a pre-commit hook that runs Ruff before every commit.
Run the following once to enable hooks in your local repo:

```bash
pipenv run pre-commit install
# optional: run on all files
pipenv run pre-commit run --all-files
```

Hence, you will need to make sure that the code is formatted correctly before committing your changes; otherwise, the commit will fail.
More information about pre-commit hooks can be found [here](https://pre-commit.com/).

```bash
pipenv install black
```

Format your code before committing:

```bash
black .
```

Comment on lines 80 to +112
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Code style section reads both “Black.exe” and “Ruff”; streamline and remove Black steps

“Black.exe” is Windows-specific and misleading. Since CI enforces Ruff, remove the Black install/formatting block or mark Black as optional.

-We use Black.exe to format the code.
-
-Install Black:
-
-We use ruff to enforce the code style and code formatting. You can run it with:
+We use Ruff for linting and formatting. Run it with:
@@
-To ensure that the code is formatted correctly, we use a pre-commit hook that runs Ruff before every commit.
+To ensure that the code is formatted correctly, we use a pre-commit hook that runs Ruff before every commit.
@@
-Hence, you will need to make sure that the code is formatted correctly before committing your changes; otherwise, the commit will fail.
+Make sure the code is formatted before committing; otherwise, the commit will fail.
@@
-```bash
-pipenv install black
-```
-
-Format your code before committing:
-
-```bash
-black .
-```
+<!-- Black is not required by CI. If you prefer Black locally, ensure it doesn’t conflict with Ruff’s formatter. -->
🤖 Prompt for AI Agents
In docs/contributing/contributing.md around lines 80 to 112, the Code style
section mixes a Windows-specific “Black.exe” reference and full Black
install/formatting steps with Ruff instructions; remove the Black installation
and formatting block (or replace it with a brief note that Black is optional and
must not conflict with Ruff), keep only the Ruff/pre-commit instructions and the
pre-commit enable/run steps, and update the wording to state that CI enforces
Ruff so Black is optional for local use.

## Testing

Before submitting a Pull Request, please make sure:
- All tests should pass.
- You have installed project dependencies:

```bash
npm install

pipenv install -r requirements.txt
```

From the root directory, run:

```bash
cd tests/node

npx cypress run
```

## Submitting changes

Please send a Pull Request with a clear list of what you've done. Always write a clear log message for your commits. One-line messages are fine for small changes, but bigger changes should look like this:
Expand All @@ -28,6 +140,43 @@ $ git commit -m "A brief summary of the commit
> A paragraph describing what changed and its impact."
```

> Detailed requirements for submitting a PR are described in the [Pull Request Regulation](#pull-request-regulation) section below

Classification of Common Commit Types:

- `Main (Master)`: Stable branch, merge code that passes review and CI; merge and release every time,
- `Develop`: Continuous Integration branch for daily integration with multiple collaborators.
- `Feature/*`: feature development branch, cut out from main or develop, send PR to merge in after completing the feature.
- `Fix/*`: defect repair branch, the same process as feature
- `Release/*`: release preparation branch for freezing versions, fixing documentation, doing regressions and tagging.
- `docs/*`, `chore/*`, `refactor/*`, `test/*`: documentation, miscellaneous, refactor, test type branches.
- `Style`: style modification (does not affect the function): code formatting, space adjustment, naming rules unity.
- `Refactor`: Code Refactoring: Refactor existing code to improve maintainability.
- `Test`: Add or modify tests: add unit tests, integration tests, or modify test logic.
- `Chore`: Build Configuration, Dependency Management, CI/CD Configuration Updates.
- `Perf`: Performance Optimisation: Optimising code execution efficiency or memory usage.
- `Ci`: CI Configuration Related: Changing Continuous Integration Configurations for Github Actions, Travis, Jenkins, etc.
- `Build`: build system related: modify build scripts, packaging configuration.
- `Revert`: Rollback Commit: Undoing a Previous Commit
- `Security`: Security fixes, fixing security vulnerabilities, updating dependencies to prevent attacks.
- `Deps`: Dependency Management: Dependency Management/Adding, updating, and removing dependency libraries
- `Infra`: Infrastructure related: changes to development environments, containers, server configurations, etc.

## Pull Request Regulation
**Time to submit PR:**

- User requirements/issues have been addressed or discussed in Issue and consensus has been reached.
- Changes have been minimised (small steps/phased submission) to avoid "mega PRs".

**The pull request should include the following information:**

- **Description:** Provide a brief summary of the changes, related issues, and motivation. List any required dependencies. **Fixes # (issue)**

- **Type of Change:** Bug fix (non-breaking); New feature (non-breaking); Breaking change; Documentation update.

- **Testing:** Describe how you tested your changes and how we can reproduce them. Include test details if necessary.


## Thanks

Thank you again for being interested in this project! You are awesome!
Expand Down
2 changes: 1 addition & 1 deletion docs/contributing/run-project-locally.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ This guide is for Mac OSX, Linux, or Windows.
2. **Create a virtual environment using pipenv and install dependencies:**

```text
pipenv install <name-of-the-package>
pipenv install --dev
```

3. **Run tool locally**
Expand Down
2 changes: 1 addition & 1 deletion docs/documentation/tabs-explained/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description: >-

The Clima app is organized in a series of tabs that allow the exploration of various topics. All the tabs other than "Select Weather File" are active after a weather file has been selected.

Although there is a logical sequence in the organization of the tabs, thy can be accessed in any order. &#x20;
Although there is a logical sequence in the organization of the tabs, thy can be accessed in any order.

The Followin section will explain the content and the usage of each tab.

Expand Down
Loading