Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
An amazing prototyping tool.
With Clay you can forget about making changes to dozens of HTML files just because you need to add a link in the footer.
You can also use it to prototype your AJAX-driven application or the responses of sending forms, because it acts like a real server.
pip install clay
clay new mysite
will generate a new app container with the following structure:
mysite
├── static/
├── clay.yaml
├── index.html
└── ...other files
You can also use an optional project template path or git URL. For the URLs, "gh:" works as a shortcut of "https://github.com/" and "gl:" as a shortcut of "https://gitlab.com/". For example:
# Absolute or relative path.
clay new myapp /path/to/project/template
# GitHub repo. Note the ".git" postfix.
clay new myapp https://github.com/lucuma/clay-template.git
# The same GitHub repo with shortcut
clay new myapp gh:/lucuma/clay-template.git
Inside that folder, run the development server with:
clay run
and your site'll be available at http://0.0.0.0:8080/
.
Anything inside the static
folder is served as-is under the /static/
path.
For example you can see myapp/static/image.png
at the http://0.0.0.0:8080/static/image.png
URL.
Any file outside the static
folder, is rendered as a page.
For example, myapp/page.html
is rendered and shown at http://0.0.0.0:8080/page.html
, as an HTML page.
And myapp/foo/bar.json
is rendered and shown at http://0.0.0.0:8080/foo/bar.json
as a JSON document.
Remember to put inside static
anything you don't want to be rendered.
To generate a static version of your site, first, stop the server with
Control + C
, and then run:
clay build
and all the templates will be processed and the result stored inside the
build
folder.
If you have folders in your project, you might be tempted to write internal URLs like this
<!-- DON'T DO THIS ->
href="../a.html"
src="../static/main.js"
Don't do it. Is error-prone and could not work as expected if you do it in a base layout, for example. Always write the internal URLs using their path from the root of the project, like this:
href="/a.html"
src="/static/main.js"
That'll work on the development server and also when generating a static version of your site, Clay will convert them into relative paths automatically.
When writing your templates, in addition of what is normally available in Jinja templates you have access to some other helper functions:
dir
, enumerate
, map
, zip
, and len
.now
function, as an alias to datetime.datetime.utcnow
.active
function, to set an "active" class in navigations/menus when the current page match.active()
active(*url_patterns, partial=False, class_name="active")
TODO
clay.yaml
fileIf a YAML file named clay.yaml
is found in the root of the project, it will be read and used for configuring Clay.
---
# Shell-style patterns files/folders that must not be copied.
# Use quotes.
exclude:
- ".*"
- ".*/*"
- "~*"
- "~*/*"
- "_*"
- "_*/*"
- "*.txt"
# Shell-style patterns files/folders that *must be* copied, even if
# they are in the exclude list.
# Use quotes.
include:
- "robots.txt"
- "humans.txt"
# Jinja extensions to use
jinja_extensions:
# Shell-style patterns of files outside `static/` that must be copied
# as-is instead of trying to interpret them as Jinja templates.
# Use quotes.
binaries:
- "favicon.ico"
Happy coding!
FAQs
An amazing web prototyping tool.
We found that clay demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.