dalet/README.md

100 lines
1.8 KiB
Markdown
Raw Normal View History

2024-07-22 19:43:20 +03:00
<div align="center">
![dalet](./imgs/dalet.png)
2024-07-22 18:00:17 +03:00
# dalet
2024-07-22 19:43:20 +03:00
</div>
Markup language ecosystem сombining small file size, big number of possibilities for describing the interface and readability.
2024-07-22 20:58:07 +03:00
[Specification](./specification/main.md).
2024-07-22 20:58:07 +03:00
## Concept
This is daleth (high level language that translates to daletl).
2024-07-22 20:58:07 +03:00
```yaml
# tag: body
# each line is a new tag (if not {}, () is used)
2024-07-22 20:58:07 +03:00
h1: TxtDot revolution
p: TxtDot is a cool project
# If no tag is specified, then the 'element' tag, the most primitive tag, is placed
(
Check dalet too
This is one paragraph
)
This is another paragraph
# [ ] for arguments
row[center]: {
link[https://github.com/txtdot/txtdot]: Homepage
button[https://example.com/donate]: {
# tag without body
img[https://example.com/donate.png]
Donate
}
}
2024-07-22 20:58:07 +03:00
# {} for multiple objects
row: {
{
h2: Features
ul: {
Server-side page simplification
Media proxy
Image compression with Sharp
Rendering client-side apps (Vanilla, React, Vue, etc) with webder
Search with SearXNG
Handy API endpoints
No client JavaScript
Some kind of Material Design 3
Customization with plugins, see @txtdot/sdk and @txtdot/plugins
}
}
{
h2: Running
{
h3: Dev
# () for multiline strings, indent is automatically trimmed
code: (
npm install
npm run dev
)
# (~n Text) n is number of minimum spaces
code[markdown]: (~4
this is codeblock
)
# (# Text) Text after "(# " not modified
code[markdown]: (# this is codeblock)
2024-07-22 20:58:07 +03:00
}
{
h3: Production
2024-07-22 21:08:37 +03:00
code: (
2024-07-22 20:58:07 +03:00
npm install
npm run build
npm run start
2024-07-22 21:08:37 +03:00
)
2024-07-22 20:58:07 +03:00
}
{
h3: Docker
code: docker compose up -d
}
}
}
```