Deploy the static nova website folder to Vercel so users can download the installer and zips.
Local Package Manager
Install NovaDev and packages locally.
novapm gives NovaDev a Python-like installation path: install the language into a local home folder,
add launcher scripts to PATH, install packages, pack packages, and configure a registry hosted by a website.
Install
Choose the script installer or Windows setup app.
The Vercel site serves a bootstrap installer, the NovaDev language zip, a registry JSON file, and package zip files. The installer downloads the language, configures the registry, and can install every bundled package in one command. Windows users can also use `NovaDevSetup.exe` after it is built with Inno Setup.
# Step 1
# Create a folder anywhere on your computer.
# Example:
# C:\Users\\Downloads\NovaDev
# Step 2
# Download install-novadev.py from the NovaDev website.
# It should appear in your Windows Downloads folder.
# Step 3
# Copy or move install-novadev.py into the folder you created.
# Step 4
# Open PowerShell inside that folder and run:
python install-novadev.py --zip-url https://novadev-org.vercel.app/downloads/novadev.zip --install-all-packages
# Expected output
Installing package: hello-ui
Installed hello-ui 0.1.0
C:\Users\\.novadev\packages\hello-ui@0.1.0
Installing package: auth-kit
Installed auth-kit 0.1.0
C:\Users\\.novadev\packages\auth-kit@0.1.0
Installing package: dashboard-kit
Installed dashboard-kit 0.1.0
C:\Users\\.novadev\packages\dashboard-kit@0.1.0
NovaDev installed successfully!
Home:
C:\Users\\.novadev
Language:
C:\Users\\.novadev\language
Launchers:
C:\Users\\.novadev\bin
Registry:
https://novadev-org.vercel.app/downloads/registry.json
# If the "nova" command is not recognized,
# temporarily add NovaDev to your PATH:
$env:Path = "$HOME\.novadev\bin;$env:Path"
# Verify the installation
nova shell
nova run examples/hello.nova
novapm doctor
novapm search
# Optional (Permanent PATH)
# Add the following folder to your Windows User PATH:
%USERPROFILE%\.novadev\bin
# The installer automatically downloads:
# https://novadev-org.vercel.app/downloads/novadev.zip
# And automatically uses:
# https://novadev-org.vercel.app/downloads/registry.json
Commands
Everything a local package manager needs at the start.
Click a command to copy it.
downloads/
install-novadev.py
NovaDevSetup.exe
novadev.zip
registry.json
checksums.json
packages/
hello-ui.zip
auth-kit.zip
dashboard-kit.zip
~/.novadev/
bin/
nova
nova-shell
novapm
language/
nova.py
shell.py
novapm.py
novadev/
packages/
cache/
registry.json
installed.json
config.json
{
"name": "hello-ui",
"version": "0.1.0",
"description": "Example NovaDev UI helpers",
"entry": "index.nova",
"kind": "module",
"files": ["index.nova"]
}
Website Registry
How this becomes downloadable for other developers.
The installer downloads downloads/novadev.zip and copies NovaDev into ~/.novadev/language.
The installer points novapm at downloads/registry.json, which points to package zip files.
Windows Installer
NovaDevSetup.exe makes NovaDev visible in Windows.
The Windows installer places NovaDev in %LOCALAPPDATA%\NovaDev, adds the bin
folder to the user's PATH, creates Start Menu shortcuts, bundles novapm, and opens NovaDev Manager.
Runs NovaDev files and project compiler commands from any new terminal.
Installs, removes, searches, and lists NovaDev packages from the hosted registry.
A Tkinter GUI for install/update, package management, shell launch, and doctor checks.
.\installer\windows\build-installer.ps1
# Output:
# nova website/downloads/NovaDevSetup.exe