A landing page without a build step, in one file
A landing page without a build step. One Function returns the whole page, with no bundler, no dist folder and no files uploaded beside it. What you read in src/index.js is what a visitor's browser gets.
You want a page online, not a build to look after
A small business needs one page with its name, what it does and how to get in touch. Here that page is one JavaScript file. You change a sentence, deploy, and refresh.
The whole template is public. Read it before you trust it.
Or scaffold it
$ npx wawesome init --template landing-page
$ npx wawesome deployWhat you get
A page for a made-up ceramics studio: a headline, an intro, a button, three
cards, opening hours and a footer. It’s all in src/index.js, with no imports and
the styles inline. Every path gets the same page. src/index.test.js has the
tests.
Run it
npx wawesome init --template landing-page
It offers to log you in if you aren’t. Then it asks for a Function name, home
by default, and an App slug. If you haven’t deployed yet, it offers to change
your workspace address, which locks at your first deploy. There are no keys to
enter. Then it deploys and prints the page’s address.
Name the Function root if you want the page at your App’s own address rather
than under /home.
What to change first
The words. They’re all in the site object at the top of src/index.js:
export const site = {
name: "Fernwood Ceramics",
tagline: "Hand-thrown stoneware, made to be used every day",
...
};
Add or remove a card in sections, and point cta.href at your own email
address. Then run npx wawesome deploy and refresh.
The footer has a “Built with wawesome” line. Delete it if you like. We add nothing to what your Function returns, so it won’t come back.
What it doesn’t do
There’s no form, only a mailto: link, and no stylesheet or image files beside
the code. The code runs on every visit, so each page view is one invocation. If
you’d rather write the site as HTML files that we serve from storage, see
Documents. If you need a form, start from
contact-form.
- website
- landing-page
- one-page
- small-business
- marketing
Ready in about a minute
Sign in with GitHub, deploy, and get a public HTTPS endpoint.