Skip to content

Commit 170bc3d

Browse files
committed
Initial project skeleton
0 parents  commit 170bc3d

File tree

18 files changed

+582
-0
lines changed

18 files changed

+582
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Publish to PyPI
2+
on:
3+
release:
4+
types: [published]
5+
workflow_dispatch:
6+
7+
permissions:
8+
contents: read
9+
id-token: write
10+
11+
jobs:
12+
deploy:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
fetch-depth: 0
18+
19+
- name: Set up Python
20+
uses: actions/setup-python@v3
21+
with:
22+
python-version: '3.x'
23+
24+
- name: Install dependencies
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install build wheel setuptools
28+
29+
- name: Build package
30+
run: python -m build
31+
32+
- name: Publish package
33+
uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/tests.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Run tests
2+
on: [push, pull_request]
3+
jobs:
4+
test:
5+
runs-on: ubuntu-latest
6+
steps:
7+
- uses: actions/checkout@v4
8+
- name: Set up Python
9+
uses: actions/setup-python@v5
10+
with:
11+
python-version: '3.x'
12+
- name: Install dependencies
13+
run: |
14+
python -m pip install --upgrade pip
15+
pip install -e .[test]
16+
- name: Test with pytest
17+
run: |
18+
pytest tests/ -v

.gitignore

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# Byte-compiled / optimized / DLL files
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
6+
# C extensions
7+
*.so
8+
9+
# Notebooks (except documentation notebooks)
10+
*.ipynb
11+
!docs/**/*.ipynb
12+
13+
# Distribution / packaging
14+
.Python
15+
build/
16+
develop-eggs/
17+
dist/
18+
downloads/
19+
eggs/
20+
.eggs/
21+
lib/
22+
lib64/
23+
parts/
24+
sdist/
25+
var/
26+
wheels/
27+
*.egg-info/
28+
.installed.cfg
29+
*.egg
30+
*.pypirc
31+
32+
# PyInstaller
33+
*.manifest
34+
*.spec
35+
36+
# Installer logs
37+
pip-log.txt
38+
pip-delete-this-directory.txt
39+
40+
# Unit test / coverage reports
41+
htmlcov/
42+
.tox/
43+
.coverage
44+
.coverage.*
45+
.cache
46+
nosetests.xml
47+
coverage.xml
48+
*.cover
49+
.hypothesis/
50+
test_reports/
51+
*.pyc
52+
__pycache__/
53+
.pytest_cache/
54+
55+
# Jupyter Notebook
56+
.ipynb_checkpoints
57+
58+
# pyenv
59+
.python-version
60+
61+
# Environment
62+
.env
63+
.venv
64+
env/
65+
venv/
66+
ENV/
67+
68+
# Shell
69+
*.bat
70+
71+
# IDEs
72+
.vscode/
73+
.idea/
74+
75+
# OS generated files
76+
.DS_Store
77+
.DS_Store?
78+
._*
79+
.Spotlight-V100
80+
.Trashes
81+
ehthumbs.db
82+
Thumbs.db
83+
84+
# Claude
85+
.claude
86+
87+
88+
*_version.py

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 PathSim
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
2+
<p align="center">
3+
<img src="https://raw.githubusercontent.com/pathsim/pathsim-rf/main/docs/source/logos/rf_logo.png" width="300" alt="PathSim-RF Logo" />
4+
</p>
5+
6+
<p align="center">
7+
<strong>RF engineering blocks for PathSim</strong>
8+
</p>
9+
10+
<p align="center">
11+
<a href="https://pypi.org/project/pathsim-rf/"><img src="https://img.shields.io/pypi/v/pathsim-rf" alt="PyPI"></a>
12+
<img src="https://img.shields.io/github/license/pathsim/pathsim-rf" alt="License">
13+
</p>
14+
15+
<p align="center">
16+
<a href="https://docs.pathsim.org/rf">Documentation</a> &bull;
17+
<a href="https://pathsim.org">PathSim Homepage</a> &bull;
18+
<a href="https://github.com/pathsim/pathsim-rf">GitHub</a>
19+
</p>
20+
21+
---
22+
23+
PathSim-RF extends the [PathSim](https://github.com/pathsim/pathsim) simulation framework with blocks for RF and microwave engineering. All blocks follow the standard PathSim block interface and can be connected into simulation diagrams.
24+
25+
## Features
26+
27+
*Coming soon.*
28+
29+
## Install
30+
31+
```bash
32+
pip install pathsim-rf
33+
```
34+
35+
## License
36+
37+
MIT

docs/.readthedocs.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Read the Docs configuration file
2+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
3+
4+
version: 2
5+
6+
build:
7+
os: ubuntu-24.04
8+
tools:
9+
python: "3.13"
10+
11+
sphinx:
12+
configuration: docs/source/conf.py
13+
14+
python:
15+
install:
16+
- method: pip
17+
path: .
18+
- requirements: docs/requirements.txt

docs/requirements.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
numpy>=1.15,<2
2+
scipy>=1.2
3+
sphinx>=7.0
4+
furo
5+
myst-parser
6+
sphinx-copybutton
7+
sphinx-design
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
pathsim\_rf
2+
==========
3+
4+
.. automodule:: pathsim_rf
5+
:members:
6+
:undoc-members:
7+
:show-inheritance:

docs/source/_static/custom.css

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
/* Custom CSS for PathSim-RF Documentation */
2+
3+
/* Fix link preview card backgrounds for light/dark mode */
4+
.sd-card {
5+
background-color: var(--color-card-background) !important;
6+
}
7+
8+
.sd-card-header {
9+
background-color: var(--color-card-marginals-background) !important;
10+
}
11+
12+
.sd-card-footer {
13+
background-color: var(--color-card-marginals-background) !important;
14+
}
15+
16+
/* Ensure link preview text is readable in both modes */
17+
.sd-card-text {
18+
color: var(--color-foreground-primary) !important;
19+
}
20+
21+
.sd-card-title {
22+
color: var(--color-foreground-primary) !important;
23+
}
24+
25+
/* Fix any link cards created by MyST linkify */
26+
a.reference.external .sd-card {
27+
background-color: var(--color-card-background) !important;
28+
border-color: var(--color-card-border) !important;
29+
}
30+
31+
/* Main tooltip container */
32+
.tooltip {
33+
background-color: var(--color-background-primary) !important;
34+
border: 1px solid var(--color-background-border) !important;
35+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
36+
}
37+
38+
/* Dark mode specific adjustments */
39+
body[data-theme="dark"] .tooltip {
40+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5) !important;
41+
}
42+
43+
/* Tooltip content text */
44+
.tooltip .highlight,
45+
.tooltip pre,
46+
.tooltip code {
47+
background-color: var(--color-code-background) !important;
48+
color: var(--color-code-foreground) !important;
49+
}
50+
51+
/* Tooltip general text */
52+
.tooltip,
53+
.tooltip * {
54+
color: var(--color-foreground-primary) !important;
55+
}
56+
57+
/* Tooltip links */
58+
.tooltip a {
59+
color: var(--color-link) !important;
60+
}
61+
62+
.tooltip a:hover {
63+
color: var(--color-link--hover) !important;
64+
}

docs/source/api.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
API Reference
2+
=============
3+
4+
*Modules will be listed here as they are added.*

0 commit comments

Comments
 (0)