Skip to main content

Dars Framework build applications with Python and export to web

Reason this release was yanked:

outdated

Project description

Dars Framework

Dars is a Python UI framework for building modern, interactive web apps with only Python code. Write your interface in Python, export it to static HTML/CSS/JS, and deploy anywhere—no Javascript or frontend stack required.

How It Works

  • Build your UI using Python classes and components (like Text, Button, Container, Page, etc).
  • Preview instantly with hot-reload using app.rTimeCompile().
  • Export your app to static web files with a single CLI command.
  • Use multipage, layouts, scripts, and more—see docs for advanced features.

Quick Example: Your First App

#!/usr/bin/env python3
from dars.core.app import App
from dars.components.basic.text import Text
from dars.components.basic.button import Button
from dars.components.basic.container import Container
from dars.scripts.script import InlineScript

# Crear aplicación
app = App(title="Mi Primera App")

# Crear componentes
container = Container(style={
    'display': 'flex',
    'flex-direction': 'column',
    'align-items': 'center',
    'padding': '40px'
})

titulo = Text(
    text="Hola Dars",
    style={'font-size': '32px', 'color': '#333'}
)

boton = Button(
    text="Hacer clic",
    style={'background-color': '#007bff', 'color': 'white'}
)

# Script para interactividad
script = InlineScript("""
document.addEventListener('DOMContentLoaded', function() {
    const boton = document.querySelector('button');
    boton.addEventListener('click', function() {
        alert('Hola desde Dars.');
    });
});
""")

# Ensamblar aplicación
container.add_child(titulo)
container.add_child(boton)
app.set_root(container)
app.add_script(script)

if __name__ == "__main__":
    app.rTimeCompile() # Live preview at http://localhost:8000

CLI Usage

Command What it does
dars export my_app.py --format html Export app to HTML/CSS/JS in ./my_app_web
dars preview ./my_app_web Preview exported app locally
dars init my_project Create a new Dars project
dars info my_app.py Show info about your app
dars formats List supported export formats
dars --help Show help and all CLI options

More

Local Execution and Live Preview

To test your app locally before exporting, use the hot-reload preview from any Python file that defines your app:

if __name__ == "__main__":
    app.rTimeCompile()

Then run your file directly:

python my_app.py

This will start a local server at http://localhost:8000 so you can view your app in the browser—no manual export needed. You can change the port with:

python my_app.py --port 8088

You can also use the CLI preview command on an exported app:

dars preview ./my_exported_app

This will start a local server at http://localhost:8000 to view your exported app in the browser.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dars_framework-1.0.1.tar.gz (79.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dars_framework-1.0.1-py3-none-any.whl (100.7 kB view details)

Uploaded Python 3

File details

Details for the file dars_framework-1.0.1.tar.gz.

File metadata

  • Download URL: dars_framework-1.0.1.tar.gz
  • Upload date:
  • Size: 79.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for dars_framework-1.0.1.tar.gz
Algorithm Hash digest
SHA256 86f4aa69461cf79c032f409b7f1c36cd3d4bd9c2b696e3d422d914bb25407f39
MD5 747c5b6b19dbd080b1f18cee202ff1b0
BLAKE2b-256 01f4b7aa28dde55ce999627c77376b7b73c373c334667ae9f958278422cdb8d7

See more details on using hashes here.

File details

Details for the file dars_framework-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: dars_framework-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 100.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for dars_framework-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ee1f0ba826ae6a22de6b66fb5077ad7fc15d233e352bb7fb220dfe3e59cbf64
MD5 b7db5caff9ea26006147400566879023
BLAKE2b-256 f1a6bc7db721c53579bb617d682da5a29ad6c6d7103e8c8ed7a801b88e55de84

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page