Skip to main content

Teloce-Py logo

Teloce-Py

Build interactive Python apps with .vel components. No Node.js required.

PyPI version MIT license Documentation

Teloce-Py compiles a template, browser behavior, and scoped CSS from a single .vel file into plain browser assets. Your Python framework (Flask, FastAPI, Django, or Flaxon) keeps handling routes, APIs, databases, auth, and security.

Features

  • Single-file components: template, script, and scoped style in one .vel file.
  • Bring your own backend: works with Flask, FastAPI, Django, and Flaxon.
  • No Node.js: production builds use MinifyJS, a native esbuild engine bundled in the wheel.
  • Fast builds: tree shaking, mangling, code splitting, source maps, and hashed assets.

Getting Started

Install:

python -m pip install teloce-py Flask

Create static/js/App.vel:

<script>
export default {
  data() { return { count: 0 }; },
  methods: {
    increment() { this.count += 1; }
  }
};
</script>

<template>
  <button @click="increment">Clicked {{ count }} times</button>
</template>

Create app.py:

from pathlib import Path
from flask import Flask, render_template
from teloce.build import build_project

ROOT = Path(__file__).parent
build_project(ROOT, out_dir=ROOT / "dist", options={"dev": True})
app = Flask(__name__, static_folder="dist/static", static_url_path="/static")

@app.get("/")
def home():
    return render_template("app.html")

if __name__ == "__main__":
    app.run(debug=True)

Create templates/app.html:

<!doctype html>
<html>
  <body>
    <div id="app"></div>
    <script type="module">
      import { mount } from "{{ url_for('static', filename='js/App.js') }}";
      mount("#app");
    </script>
  </body>
</html>

Run it and open http://127.0.0.1:5000:

python app.py

Project Structure

my-app/
├── app.py
├── teloce.config.json
├── static/js/App.vel     # your source
├── templates/app.html    # HTML shell with #app mount
└── dist/                 # generated, never edit by hand

Production Build

teloce lint --strict
teloce build --source-map --hash-assets --bundle --report

Teloce strips common TypeScript syntax but does not type-check.

Documentation

Status

Teloce-Py is in beta. Pin your version and test generated assets on your target framework and platform.

License

MIT

Metadata

Release files for teloce-py 0.2.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for teloce-py 0.2.6
File Size Uploaded Provenance Actions
teloce_py-0.2.6.tar.gz 237.5 kB Without provenance Details for teloce_py-0.2.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for teloce-py 0.2.6
File Interpreter ABI Platform Actions
teloce_py-0.2.6-py3-none-any.whl Python 3 none any Details for teloce_py-0.2.6-py3-none-any.whl

Total release size: 520.7 kB

Release files / teloce_py-0.2.6.tar.gz

Download URL teloce_py-0.2.6.tar.gz
Size 237.5 kB
Tags Source
SHA-256 checksum
How to use checksums
86452c511fad49886d824eeb355b5b800f55fd284875c9b8514979128a2bdd47
BLAKE2b-256 checksum
How to use checksums
28e2ff3464038520830cb74336adfbdf874dfcd5bec6a2e307fcaea3e23b3c13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release files / teloce_py-0.2.6-py3-none-any.whl

Download URL teloce_py-0.2.6-py3-none-any.whl
Size 283.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
be49351a4f311ce8ec5b772f40ee45114f33e3ca2fc179b8184a10195a4ced57
BLAKE2b-256 checksum
How to use checksums
19cfd71879f0a0967d499b53fc13087485aa21d2840a9b203a2fbd9f876989af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Security for teloce-py 0.2.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page