-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
113 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,113 @@ | ||
# iris | ||
# Iris | ||
|
||
 | ||
 | ||
 | ||
 | ||
|
||
**Iris** is a modern, lightweight Python template engine designed for simplicity, flexibility, and performance. With advanced directive processing, includes, and dynamic context evaluation, Iris provides developers with a seamless way to render dynamic templates efficiently. | ||
|
||
--- | ||
|
||
## 🚀 Key Features | ||
|
||
- **Advanced Directives**: Includes support for custom template directives like `@extends`, `@include`, and control structures. | ||
- **Dynamic Context Injection**: Easily pass and process dynamic data into your templates. | ||
- **Flexible Templating**: Supports layout inheritance, template composition, and reusable components. | ||
- **Fast and Lightweight**: Minimal overhead with high performance, designed for Python applications. | ||
- **Safe Evaluation**: Includes built-in safeguards for variable evaluation to ensure template safety. | ||
- **Open for Personal & Commercial Use**: Use Iris freely in personal and commercial projects (not for resale as a standalone product). | ||
|
||
--- | ||
|
||
## 🛠️ How to Use Iris | ||
|
||
### Step 1: Install Iris | ||
|
||
Install Iris via pip: | ||
|
||
```bash | ||
pip install iris-template | ||
``` | ||
|
||
### Step 2: Render Your First Template | ||
|
||
Create a template file, e.g., `template.html`: | ||
|
||
```html | ||
@extends('base.html') | ||
|
||
@section('title', 'Welcome to Iris') | ||
|
||
@section('content') | ||
<h1>Hello, {{ user }}!</h1> | ||
@endsection | ||
``` | ||
|
||
Create a Python script to render the template: | ||
|
||
```python | ||
from iris import TemplateEngine | ||
|
||
engine = TemplateEngine(template_dir="./templates") | ||
output = engine.render("template.html", {"user": "Alice"}) | ||
print(output) | ||
``` | ||
|
||
### Step 3: Explore More Features | ||
|
||
Iris provides advanced features for layout inheritance, template inclusion, and custom directives. For example: | ||
|
||
#### Including Other Templates | ||
|
||
```html | ||
@include('header.html') | ||
|
||
<p>This is the body content.</p> | ||
|
||
@include('footer.html') | ||
``` | ||
|
||
#### Dynamic Control Structures | ||
|
||
```html | ||
@if(user.is_admin) | ||
<p>Welcome, Admin {{ user.name }}!</p> | ||
@else | ||
<p>Welcome, {{ user.name }}!</p> | ||
@endif | ||
``` | ||
|
||
--- | ||
|
||
## 🔍 Project Status | ||
|
||
 | ||
 | ||
 | ||
|
||
--- | ||
|
||
## 📜 License and Usage | ||
|
||
Iris is free to use for both personal and commercial projects. However, Iris itself cannot be resold or distributed as a standalone product. | ||
|
||
--- | ||
|
||
## 🤝 Contributors | ||
|
||
Developed and maintained by **Altxria Inc.** with contributions from a growing community of passionate developers. | ||
|
||
 | ||
|
||
[See All Contributors](https://github.com/altxriainc/iris/graphs/contributors) | ||
|
||
--- | ||
|
||
## ❤️ Support Iris | ||
|
||
If you find Iris useful, consider sponsoring us to support ongoing development and new features! | ||
|
||
[](https://github.com/sponsors/altxriainc) | ||
|
||
[](https://ko-fi.com/N4N516SMZ6) |