NovaJAM is an open-source, Jamstack-based landing page template built with Next.js 15, designed for developers to quickly create modern, performant marketing sites. It takes a JSON configuration file as input and outputs a fully styled landing page with Tailwind CSS and TypeScript.
What is NovaJAM?
NovaJAM is a developer-focused landing page template that runs on Next.js 15 with the App Router and Server Actions. It provides a clean foundation for SaaS startup landing pages, with a composable layout system built from reusable section blocks. The open-source version relies on static JSON files for content, while NovaJAM Pro adds CMS integration with Contentful and Directus. The repository is maintained on GitHub under the minhwpm account and is licensed under MIT.
Key Features
- Next.js 15 framework — Uses App Router, Server Actions, and hybrid SSG/SSR for fast page generation.
- Tailwind CSS styling — Utility-first styling system for rapid UI customization.
- TypeScript language — Fully typed components and configuration for maintainability.
- Zustand state management — Lightweight global store for app state.
- JSON content configuration — Page structure, fonts, colors, and border radius are defined in
/src/lib/query/static-data/pages.jsonwithout editing components. - Composable layouts — Mix-and-match section blocks powered by SmartSection for flexible page arrangement.
- Project structure — Organized into
/app,/components,/lib, and/storedirectories for clear separation. - CMS integration (Pro) — NovaJAM Pro includes pre-built content models and sample entries for Contentful and Directus.
Who is it for?
- SaaS startup developers who want to ship a landing page quickly without building from scratch.
- Frontend developers who prefer a typed, config-driven approach to theming and page structure.
- Indie makers looking to deploy a performant marketing site on Vercel or Netlify.
- Teams planning to scale content — they can start with JSON and upgrade to NovaJAM Pro for a CMS-driven workflow.
What can you do with NovaJAM?
- Launch a SaaS landing page: Customize colorPrimary, colorSecondary, fontMain, and borderRadius in the JSON config to match your brand and publish the page.
- Rapidly prototype a startup site: Use the pre-built components and section blocks to assemble a marketing page in minutes.
- Deploy to Jamstack platforms: Push to Vercel or Netlify directly from the GitHub repository and get a live site.
- Extend with a CMS: Upgrade to NovaJAM Pro to connect Contentful or Directus and manage content dynamically.
How does NovaJAM work?
To get started, clone the repository with git clone https://github.com/minhwpm/novajam.git, run yarn install to install dependencies, then start the development server with yarn dev. The site loads at http://localhost:3000 and uses the JSON configuration file to apply theme settings and page content.
Pricing
The open-source version of NovaJAM is free and released under the MIT license. NovaJAM Pro is a paid upgrade that adds CMS-ready templates, premium components, theme token options, and private GitHub access. An early bird offer for Pro plans is available at the NovaJAM website.
FAQ
Is NovaJAM free?
Yes, the open-source version is licensed under MIT and available for free on GitHub. You can use it for commercial projects with attribution as required by the license. NovaJAM Pro is a separate paid product with additional features.
Does NovaJAM support a CMS?
The free version uses static JSON files for content, which works well for simple sites. For dynamic content, NovaJAM Pro provides CMS-ready layouts and routes for Contentful and Directus, including pre-integrated content models and sample entries.
What tech stack does NovaJAM use?
NovaJAM is built with Next.js 15 (App Router and Server Actions), Tailwind CSS for styling, TypeScript for type safety, and Zustand for state management. It also uses Yarn as the package manager.
How can I deploy NovaJAM?
Since NovaJAM is a Jamstack template, you can deploy it to Vercel or Netlify. The repository includes a Vercel deploy button that clones the repo and sets up a new project for one-click deployment.








