1.0.7-test.0.0.0 • Published 4 years ago

xm v1.0.7-test.0.0.0

Weekly downloads
13
License
MIT
Repository
-
Last release
4 years ago

₪ xm - extensible HTML

xm is a tiny compiler for HTML that adds

  • <import> tag to inline external HTML files
  • <slot> and <fill> tags to define slots and fill them with content
  • <markdown> tag to portal into Markdown

xm CLI comes with a dev mode that compiles and serves built HTML.

Furthermore xm is built on top of posthtml-cli and therefore it is extensible.

Are you using xm? Share your site's URL here.

Install

npm i -g xm

Usage

Usage: xm <command> [options]

Commands:

  dev     Compiles HTML files on change and serves the root folder
  build   Compiles the HTML files once
  help    Displays help

Options:

  --root       Folder to compile (default ./)
  --output     Output (destination) folder. This is necessary only when using xm build
  --htmlOnly   Compile and copy only the built HTML files

<import> element

Allows to inline (import) HTML files into the current one.

<import src="file.html" />

Paths are relative.

<!-- src/folder/index.html -->

<import src="file.html" />
<!-- file.html -> src/folder/file.html -->

You can prefix paths with / to make them absolute i.e. relative to the --root value.

$ xm build --root ./src
# <import src="file.html" />
# -> ./src/file.html

Importing markdown files

xm supports importing .md (markdown) files too. When importing such files the front matter declarations are converted to fill elements.

<style>
  /* theme */
</style>
<import src="README.md" />

💡 This feature can be used to generate styled docs sites for your open source project!

If you create a reusable theme for README-like files we encourage you to use the following naming convention:

xm-theme-<theme-name>

Share your site or theme URL here.

<slot> and <fill> elements

HTML files can define slot elements with an attribute name. slots can be filled when importing HTML files using the fill tag.

<!-- base.html -->

<!DOCTYPE html>
<title><slot name="title"></slot></title>
<main>
  <slot name="main"></slot>
</main>

<!-- about.html -->

<import src="base.html">
  <fill name="title">About</fill>
  <fill name="main">
    <h1>About</h1>
    <p>welcome</p>
  </fill>
</import>
<footer>Unique to this page</footer>

<!-- about.html (compiled with xm) -->

<!DOCTYPE html>
<title>About</title>
<main>
  <h1>About</h1>
  <p>welcome</p>
</main>
<footer>Unique to this page</footer>

You can also define a special unnamed slot that will be filled with the import children that are not fill tags:

<!-- base.html -->

<slot></slot>
<footer><slot name="footer"></slot></footer>

<!-- about.html -->

<import src="base.html">
  <fill name="footer">good bye</fill>
  hello
  <p>friend</p>
</import>

<!-- about.html (compiled with xm) -->

hello
<p>friend</p>
<footer>good bye</footer>

Credits

  • Ivan Demidov for helping me out with PRs and PostHTML
  • askucher for transferring ownership of the xm package
1.0.7-test.0.0.0

4 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

0.1.310

10 years ago

0.1.309

10 years ago

0.1.304

10 years ago

0.1.303

10 years ago

0.1.302

10 years ago

0.1.300

10 years ago

0.1.299

10 years ago

0.1.298

10 years ago

0.1.297

10 years ago

0.1.296

10 years ago

0.1.295

10 years ago

0.1.294

10 years ago

0.1.293

10 years ago

0.1.292

10 years ago

0.1.291

10 years ago

0.1.290

10 years ago

0.1.289

10 years ago

0.1.288

10 years ago

0.1.287

10 years ago

0.1.286

10 years ago

0.1.285

10 years ago

0.1.284

10 years ago

0.1.283

10 years ago

0.1.282

10 years ago

0.1.281

10 years ago

0.1.280

10 years ago

0.1.279

10 years ago

0.1.278

10 years ago

0.1.277

10 years ago

0.1.276

10 years ago

0.1.275

10 years ago

0.1.274

10 years ago

0.1.273

10 years ago

0.1.272

10 years ago

0.1.271

10 years ago

0.1.270

10 years ago

0.1.269

10 years ago

0.1.268

10 years ago

0.1.267

10 years ago

0.1.266

10 years ago

0.1.265

10 years ago

0.1.264

10 years ago

0.1.263

10 years ago

0.1.262

10 years ago

0.1.261

10 years ago

0.1.260

10 years ago

0.1.259

10 years ago

0.1.258

10 years ago

0.1.257

10 years ago

0.1.256

10 years ago

0.1.255

10 years ago

0.1.254

10 years ago

0.1.253

10 years ago

0.1.252

10 years ago

0.1.251

10 years ago

0.1.250

10 years ago

0.1.249

10 years ago

0.1.248

10 years ago

0.1.247

10 years ago

0.1.246

10 years ago

0.1.245

10 years ago

0.1.244

10 years ago

0.1.243

10 years ago

0.1.242

10 years ago

0.1.241

10 years ago

0.1.240

10 years ago

0.1.239

10 years ago

0.1.238

10 years ago

0.1.237

10 years ago

0.1.236

10 years ago

0.1.235

10 years ago

0.1.234

10 years ago

0.1.233

10 years ago

0.1.232

10 years ago

0.1.231

10 years ago

0.1.230

10 years ago

0.1.229

10 years ago

0.1.228

10 years ago

0.1.227

10 years ago

0.1.226

10 years ago

0.1.225

10 years ago

0.1.224

10 years ago

0.1.223

10 years ago

0.1.222

10 years ago

0.1.221

10 years ago

0.1.220

10 years ago

0.1.219

10 years ago

0.1.218

10 years ago

0.1.217

10 years ago

0.1.216

10 years ago

0.1.215

10 years ago

0.1.214

10 years ago

0.1.213

10 years ago

0.1.212

10 years ago

0.1.211

10 years ago

0.1.210

10 years ago

0.1.209

10 years ago

0.1.208

10 years ago

0.1.207

10 years ago

0.1.206

10 years ago

0.1.205

10 years ago

0.1.204

10 years ago

0.1.203

10 years ago

0.1.202

10 years ago

0.1.201

10 years ago

0.1.200

10 years ago

0.1.199

10 years ago

0.1.198

10 years ago

0.1.197

10 years ago

0.1.196

10 years ago

0.1.195

10 years ago

0.1.194

10 years ago

0.1.193

10 years ago

0.1.192

10 years ago

0.1.191

10 years ago

0.1.190

10 years ago

0.1.189

10 years ago

0.1.188

10 years ago

0.1.187

10 years ago

0.1.186

10 years ago

0.1.185

10 years ago

0.1.184

10 years ago

0.1.183

10 years ago

0.1.182

10 years ago

0.1.181

10 years ago

0.1.180

10 years ago

0.1.179

10 years ago

0.1.178

10 years ago

0.1.177

10 years ago

0.1.176

10 years ago

0.1.175

10 years ago

0.1.174

10 years ago

0.1.173

10 years ago

0.1.172

10 years ago

0.1.171

10 years ago

0.1.170

10 years ago

0.1.169

10 years ago

0.1.168

10 years ago

0.1.167

10 years ago

0.1.166

10 years ago

0.1.165

10 years ago

0.1.164

10 years ago

0.1.163

10 years ago

0.1.162

10 years ago

0.1.161

10 years ago

0.1.160

10 years ago

0.1.159

10 years ago

0.1.158

10 years ago

0.1.157

10 years ago

0.1.156

10 years ago

0.1.155

10 years ago

0.1.154

10 years ago

0.1.153

10 years ago

0.1.152

10 years ago

0.1.151

10 years ago

0.1.150

10 years ago

0.1.149

10 years ago

0.1.148

10 years ago

0.1.147

10 years ago

0.1.146

10 years ago

0.1.145

10 years ago

0.1.144

10 years ago

0.1.143

10 years ago

0.1.142

10 years ago

0.1.141

10 years ago

0.1.140

10 years ago

0.1.139

10 years ago

0.1.138

10 years ago

0.1.137

10 years ago

0.1.136

10 years ago

0.1.135

10 years ago

0.1.134

10 years ago

0.1.133

10 years ago

0.1.132

10 years ago

0.1.131

10 years ago

0.1.130

10 years ago

0.1.129

10 years ago

0.1.128

10 years ago

0.1.127

10 years ago

0.1.126

10 years ago

0.1.125

10 years ago

0.1.124

10 years ago

0.1.123

10 years ago

0.1.122

10 years ago

0.1.121

10 years ago

0.1.120

10 years ago

0.1.119

10 years ago

0.1.118

10 years ago

0.1.117

10 years ago

0.1.116

10 years ago

0.1.115

10 years ago

0.1.114

10 years ago

0.1.113

10 years ago

0.1.112

10 years ago

0.1.111

10 years ago

0.1.110

10 years ago

0.1.109

10 years ago

0.1.108

10 years ago

0.1.107

10 years ago

0.1.106

10 years ago

0.1.105

10 years ago

0.1.104

10 years ago

0.1.103

10 years ago

0.1.102

10 years ago

0.1.101

10 years ago

0.1.100

10 years ago

0.1.99

10 years ago

0.1.98

10 years ago

0.1.97

10 years ago

0.1.96

10 years ago

0.1.95

10 years ago

0.1.94

10 years ago

0.1.93

10 years ago

0.1.92

10 years ago

0.1.91

10 years ago

0.1.90

10 years ago

0.1.89

10 years ago

0.1.88

10 years ago

0.1.87

10 years ago

0.1.86

10 years ago

0.1.85

10 years ago

0.1.84

10 years ago

0.1.83

10 years ago

0.1.82

10 years ago

0.1.81

10 years ago

0.1.80

10 years ago

0.1.79

10 years ago

0.1.78

10 years ago

0.1.77

10 years ago

0.1.76

10 years ago

0.1.75

10 years ago

0.1.74

10 years ago

0.1.73

10 years ago

0.1.72

10 years ago

0.1.71

10 years ago

0.1.70

10 years ago

0.1.69

10 years ago

0.1.68

10 years ago

0.1.67

10 years ago

0.1.66

10 years ago

0.1.65

10 years ago

0.1.64

10 years ago

0.1.63

10 years ago

0.1.62

10 years ago

0.1.61

10 years ago

0.1.60

10 years ago

0.1.59

10 years ago

0.1.58

10 years ago

0.1.57

10 years ago

0.1.56

10 years ago

0.1.55

10 years ago

0.1.54

10 years ago

0.1.53

10 years ago

0.1.52

10 years ago

0.1.51

10 years ago

0.1.50

10 years ago

0.1.49

10 years ago

0.1.48

10 years ago

0.1.47

10 years ago

0.1.46

10 years ago

0.1.45

10 years ago

0.1.44

10 years ago

0.1.43

10 years ago

0.1.42

10 years ago

0.1.41

10 years ago

0.1.40

10 years ago

0.1.39

10 years ago

0.1.38

10 years ago

0.1.37

10 years ago

0.1.36

10 years ago

0.1.35

10 years ago

0.1.34

10 years ago

0.1.33

10 years ago

0.1.32

10 years ago

0.1.31

10 years ago

0.1.30

10 years ago

0.1.29

10 years ago

0.1.28

10 years ago

0.1.27

10 years ago

0.1.26

10 years ago

0.1.25

10 years ago

0.1.24

10 years ago

0.1.23

10 years ago

0.1.22

10 years ago

0.1.21

10 years ago

0.1.20

10 years ago

0.1.19

10 years ago

0.1.18

10 years ago

0.1.17

10 years ago

0.1.16

10 years ago

0.1.15

10 years ago

0.1.14

10 years ago

0.1.13

10 years ago

0.1.12

10 years ago

0.1.11

10 years ago

0.1.10

10 years ago

0.1.9

10 years ago

0.1.8

10 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago