How to Deploy Your Application

Deploying a Noventa application offers flexibility depending on your needs. You can choose between a full runtime deployment for interactive applications or static site generation for simpler, content-focused sites.

Deployment Options

Option 1: Noventa Runtime (Recommended for Interactive Apps)

The Noventa framework includes its own high-performance web server written in Rust. This is the recommended deployment method when your application requires:

  • User sessions and authentication
  • Database interactions
  • Form submissions and POST requests
  • Real-time interactivity
  • Dynamic content generation

Deployment Steps

To deploy your project with the runtime, copy your entire project folder to your production server.

Once the files are on the server, navigate to the root of your project directory and run the serve command:

TERMINAL
$ # Navigate to your project directory
$ cd /path/to/your/project
$ 
$ # Run the production server
$ noventa serve

The noventa serve command starts the server in an optimized production mode. In this mode, development features such as automatic reloading and detailed debug pages are disabled to ensure maximum performance and security.

Note Ensure that your server's firewall is configured to allow traffic on the port Noventa is running on (default is 8000, but can be configured in config.yaml).

Option 2: Static Site Generation (SSG)

For applications that are primarily content-focused and don't require server-side interactivity, you can generate a static version of your site. This approach is perfect for:

  • Documentation sites
  • Marketing pages
  • Blogs
  • Portfolios
  • Any site where all content is pre-generated

Generating Static Files

Use the static site generation command to build your site:

TERMINAL
$ # Generate static files to a specific output directory
$ noventa ssg --path ./dist

This command will: - Render all your pages to static HTML files - Copy static assets (CSS, images, etc.) - Generate the complete site structure in the specified output directory

Deploying Static Sites

Once generated, the static files can be deployed to any static hosting service:

  • GitHub Pages: Push the generated files to a gh-pages branch or use GitHub Actions
  • Netlify: Connect your repository and configure the build command
  • Vercel: Deploy directly from your repository
  • AWS S3 + CloudFront: For scalable static hosting
  • Traditional web hosting: Upload via FTP to any web host

When using Static Site Generation, interactive features will not work. This includes: Form submissions and POST requests, User sessions and authentication, Database queries and dynamic content, Any server-side processing. Since there's no server running, buttons that trigger actions, login forms, and dynamic content will not function. Use SSG only for static content that doesn't require user interaction.

Choosing the Right Deployment Method

  • Use Noventa Runtime if your application needs any form of interactivity, user accounts, or dynamic content
  • Use Static Site Generation for content-only sites, documentation, or marketing pages where all content is predetermined

Both methods are fully supported by Noventa, giving you the flexibility to choose the best approach for your specific use case.