DocsPrimeros pasos

Inicio rápido

Creará un proyecto Nexy, lo ejecutará y verá un cambio de página a medida que lo edite. Tarda tres minutos. El Tutorial luego agrega un punto final y una compilación de producción.

Antes de empezar

Necesitas Por qué
Python 3.12+ requires-python en pyproject.toml
uv proporciona uvx, crea el proyecto e instala sus paquetes
Node.js 18+ solo si usas un framework cliente (React, Vue, Svelte, Solid, Preact)

¿No hay uv todavía? Consulte Instalación.

1. Crea el proyecto

uvx nexy new my-app

uvx viene con uv, así que instala uv primero. Ejecuta Nexy en un entorno temporal, suficiente para crear el proyecto. nexy new luego crea el propio .venv del proyecto e instala sus paquetes allí. Cuatro indicaciones deciden el cableado:

Mensaje Efecto
¿Enrutador basado en archivos? Yes escanea src/routes/; No armamenta el enrutador modular en src/apps/
El tipo de proyecto Web agrega un diseño y recursos del cliente, API comienza sin vistas
¿Componente del cliente? agrega un marco y su Vite configuración
ORM/base de datos agrega una capa de modelo, o nada

¿No estás seguro? Responda Yes, Web y ningún componente de cliente. Puedes agregar cada uno más tarde.

2. Ejecútelo

cd my-app.venv\Scripts\activate    # Windows; on macOS and Linux: source .venv/bin/activatenexy dev

Abra http://localhost:3000. Deberías ver la página de inicio. El puerto proviene de usePort (predeterminado 3000); --port y --host lo anulan por ejecución.

3. Cambiar una página

Un archivo bajo src/routes/ es una ruta. Crear src/routes/hello.nexy:

src/rutas/hola.nexy
---title: prop[str] = "Hello"---<h1>{{ title }}</h1>

Un controlador devuelve una vista. Crear src/apps/hello_view.nexy:

src/apps/hola_view.nexy
---title: prop[str] = "Hello"---<h1>{{ title }}</h1>

Luego declara la página en src/apps/app_controller.py y agrégala al módulo:

src/apps/app_controller.py
@Controller("/hello")class HelloController:    async def get(self):        return useViews(LAYOUT, context={"children": useViews("src/apps/hello_view.nexy")})
src/apps/app_module.py
from .app_controller import AboutController, AppController, HelloController controllers = [AppController, AboutController, HelloController]

Abrir http://localhost:3000/hello. Cambie "Hello" a "Bonjour" y guarde: la página se actualiza sin recarga manual. Si el código es incorrecto, el navegador muestra el error en lugar de una página en blanco.

prop[str] declara una propiedad escrita. El marcado debajo del frontmatter es Jinja2; consulte archivos .nexy.

donde sigue

Quieres Leer
Agregue un punto final Python y envíe una compilación Tutorial
Sepa dónde pertenece cada archivo Estructura del proyecto
Entender quién construye qué Cómo funciona Nexy
Utilice React, Vue, Svelte, Solid o Preact Vistas

Editar en GitHub

Enter abre el resultado, Esc lo cierra.