Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

lektor-envvars

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

lektor-envvars

A Lektor plugin making environment variables available in templates.

  • 18.6.12.4
  • PyPI
  • Socket score

Maintainers
1

lektor-envvars ##############

.. image:: https://circleci.com/gh/elbaschid/lektor-envvars.svg?style=svg :target: https://circleci.com/gh/elbaschid/lektor-envvars

Why this project?

TL;DR You can use environment variables in your Lektor templates.

I've been working with Lektor <https://www.getlektor.com/docs/plugins/>_ as as static site generator in quite a few projects and really enjoy it. Most recently I work on a project that used an environment variable to create slightly different version of the site for development, staging and production.

Lektor doesn't have a way to add environment variables into the templates, so I started building my own little plugin.

How to install it in Lektor

You can easily install this plugin following the Lektor docs <https://www.getlektor.com/docs/plugins/>_. All you need to do is run::

$ lektor plugin add lektor-envvars

This will automatically install the plugin and add it to your project configuration.

Using environment variables

You are able to access environment variables using the envvars function inside your Jinja2 template. This function is added whenever lektor is running a new build.

All environment variables are prefixed with LEKTOR_ by default. Let's look at a simple example with an environment varialbe LEKTOR_DEBUG=true::

$ export LEKTOR_DEBUG=true

You can access this variable inside any Jinja2 template::

{{ envvars('DEBUG') }}

which will display true instead.

Converting values

That's a great start but what if you want this to be a boolean value instead of the string true? You simply convert the value::

{{ envvars('DEBUG', bool) }}

or you can now even do::

{% if envvars('DEBUG', bool) %}
    ...
{% endif %}

Custom prefixes (or no prefix)

If you don't like the LEKTOR_ prefix, you can either use your own prefix by setting the prefix in the configs/lektor-envvars.ini file::

[envvars]
prefix = MY_OWN_

You can now use MY_OWN_DEBUG instead of LEKTOR_DEBUG. This means that all environment variables need to be prefixed with MY_OWN_ now instead.

You can also ignore the prefix all together::

{{ envvars('DEBUG', no_prefix=True) }}

which will give you access to the environment variable DEBUG.

License

This code is licensed under the MIT License_.

.. _MIT License: https://github.com/elbaschid/lektor-envvars/blob/master/LICENSE

FAQs


Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc