https://github.com/kjaymiller/render_engine_theme_kjaymiller
A Theme inspired by the pre-theme era of render-engine. Built with tailwindcss, fontawesome.
https://github.com/kjaymiller/render_engine_theme_kjaymiller
render-engine
Last synced: 2 months ago
JSON representation
A Theme inspired by the pre-theme era of render-engine. Built with tailwindcss, fontawesome.
- Host: GitHub
- URL: https://github.com/kjaymiller/render_engine_theme_kjaymiller
- Owner: kjaymiller
- Created: 2023-07-18T02:28:41.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-11-22T23:31:48.000Z (4 months ago)
- Last Synced: 2025-11-23T01:13:26.490Z (4 months ago)
- Topics: render-engine
- Language: HTML
- Homepage: https://kjaymiller.github.io/render_engine_theme_kjaymiller/
- Size: 1.48 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# KJayMiller Render Engine Theme
[](https://actions-badge.atrox.dev/kjaymiller/render_engine_theme_kjaymiller/goto?ref=main)
This is a theme based on the early development of render-engine for kjaymiller.com.
It relies on Tailwind CSS with support for icons via fontawesome and embeds for analytics, and newsletters.
## Quickstart
1. Install this theme through pip:
```bash
pip install render-engine-theme-kjaymiller
```
2. Import and register your theme:
```python
from render_engine import Site
from render_engine_theme_kjaymiller import kjaymiller
app = Site()
app.register_themes(kjaymiller)
```
3. Add configuration file
This theme supports styling through [TailwindCSS](https://tailwindcss.com/). To add your own configuration, create a `tailwind.config.js` file in your project root and add your configuration there. You will need the following information in your config:
```js
// tailwind.config.js
/** @type {import('tailwindcss').Config} */
module.exports = {
content: ['output/**/*.{html, js}'],
plugins: [require('@tailwindcss/typography')]
}
```
4. Add your theme settings
This theme supports embeds for many different tools as well as configurations for your tailwindcss settings in your `app.py` module. Here is a basic example of what your site's theme settings might look like:
```python
app = Site()
settings = {
"NAVIGATION": {...} ,
... # settings for other plugins and your site
"theme" : {
... # Your theme settings
"colors": {
"main1": "rose-800", # You can use any valid tailwindcss color here
}
"favicon": "https:fav.farm/☕", # url to your favicon
"colors": {
"main1": "purple-500",
"header_gradient_interval": 100,
},
"social": {
"youtube": "https://www.youtube.com/kjaymiller",
"twitter": "https://twitter.com/kjaymiller",
"linkedin": "https://linkedin.com/in/kjaymiller",
"github": "https://github.com/kjaymiller",
"mastodon": "https://mastodon.social/@kjaymiller",
},
}
}
# Update your settings: prefer update to overwrite
app.site_settings.update(theme)
```
5. Build your site
```bash
python -m render_engine serve --build app:app
```
## Development & Testing
This project uses `just` for common development tasks and `nox` for testing across multiple Python versions.
### Quick Start with Just
```bash
# Run tests
just test
# Run linting
just lint
# Run both linting and tests
just check
# Run tests with coverage
just test-coverage
```
### Using Nox for Multi-Version Testing
Test the theme across Python 3.11, 3.12, 3.13, and 3.14:
```bash
# Run tests on all Python versions
nox -s test
# Run linting on all Python versions
nox -s lint
# Run both tests and linting
nox -s check
```
### Development Setup
```bash
# Install with uv (recommended)
uv sync
# Install with pip
pip install -e ".[test]"
# Run tests
just test
```
## Available Just Commands
- `just test` - Run pytest on current Python version
- `just test-coverage` - Run pytest with coverage reporting
- `just lint` - Run ruff linting checks
- `just check` - Run both linting and tests