# Introduction
## ⭐ Features
- Use HTML-like elements in Django templates, e.g. `` instead of `{% include 'partial.html' %}`
- Can be sprinkled in as needed, but does not remove existing Django functionality
- Pretend like you are writing React components, but without dealing with JavaScript at all
- Lets you excitedly tell your friends how neat the Shadow DOM is
- Since it looks like HTML, syntax highlighting mostly "just works"
- Wraps included templates in a custom element for easier debugging and targeted CSS styling
## 💥 Example
**`base.html`**
```
```
**`index.html`**
```
This is verbatim: {% include %}
this is a comment
this is another comment
This is escaped
This is not escaped
```
**partial.html**
```html
This is a partial: {{ now|date:"c" }}
```
## ✨ Inspiration
I have been interested in Django components for a long time (see [django-unicorn](https://www.django-unicorn.com), [dlitejs](https://dlitejs.com), etc), but had never thought of using HTML tags in Django templates until I looked at [Cotton](https://django-cotton.com) by [wrabit](https://github.com/wrabit). `dj-angles` takes that basic idea further than just components to encompass even more of the Django template tags.
```{toctree}
:maxdepth: 2
:hidden:
self
installation
components
tag-elements
```
```{toctree}
:caption: Integrations
:maxdepth: 2
:hidden:
integrations/django-bird
```
```{toctree}
:caption: Advanced
:maxdepth: 2
:hidden:
settings
mappers
```
```{toctree}
:caption: API
:maxdepth: 3
:hidden:
api/dj_angles/index
```
```{toctree}
:caption: Info
:maxdepth: 2
:hidden:
changelog
GitHub
Sponsor
```