Publish: getting your site live¶
Your site is designed, styled, and ready. Now let's get it live on the internet for visitors to see.
Prerequisites¶
Before you publish, make sure:
- Your three pages are complete:
index,about,contact - Header and footer are set up as Symbols
- All links between pages use relative paths (starting with
./) - Your site looks good on mobile, tablet, and desktop (use the device preview in the toolbar)
- If you're using a contact form, you've set up the form action in the Form element's Traits
Publishing to GitLab Pages¶
GitLab Pages is the default publishing option in Silex. It's free, fast, and includes automatic HTTPS.
In Silex:
- Click the Publish button in the top toolbar
- The Publish dialog opens
- Choose GitLab Pages as your hosting service
- If you haven't logged in yet, click Login to GitLab
- A new window opens asking you to authorize Silex
- Log in to your GitLab account (create one at gitlab.com if needed)
- Click Authorize
- Close the login window — you'll return to Silex automatically
- The Publish dialog shows your GitLab username and a green checkmark
You're now authenticated. You can publish whenever you want.
Publishing your site:
- In the Publish dialog, enter a project name for your website (e.g.,
agency-portfolio,my-site) - Optionally add a description (this appears on your GitLab project page)
- Make sure Project visibility is set to Public (so visitors can see your site)
- Click Publish
Silex uploads your files to GitLab and commits them as a Git repository. You'll see a "Publishing in progress..." message. This takes 30 seconds to 2 minutes.
Waiting for the build¶
After you publish, GitLab automatically runs a build job using build awesome (powered by Eleventy). This prepares your site for hosting.
In the Publish dialog, click "Watch CI/CD status" (or "View on GitLab") to see the build progress.
You'll be taken to your GitLab project page. Navigate to CI/CD → Pipelines to watch the build:
- Blue circle = build in progress (takes 1-3 minutes)
- Green checkmark = build succeeded, site is live
- Red X = build failed (see troubleshooting below)
Finding your live URL¶
Once the build succeeds, your site is live. The default URL is:
For example, if your GitLab username is alice and your project is agency-portfolio:
Find this URL in GitLab:
- Go to your project page
- Click Deploy → Pages (left sidebar)
- Look for "Access pages at" — that's your site URL
- Click the link to visit your live site
Visit the homepage, click the navigation links to test that pages load, and check that your site looks good on different devices.
Troubleshooting the build¶
Build failed:
- In CI/CD → Pipelines, click the failed job to see error logs
- Look for keywords like "error" or "failed"
- Common issues:
- Incorrect internal links (must start with
./) - Missing assets or images
- Form action URLs that don't exist
Fix the issue in Silex, then click Publish again to re-upload and trigger a new build.
Site won't load at the URL:
- Check that the build succeeded (green checkmark in CI/CD)
- In GitLab, go to Settings → General and verify the project is Public
- In Deploy → Pages, check that the domain is listed
- Clear your browser cache and try again
See Publish to GitLab for detailed troubleshooting.
Setting up a custom domain (optional)¶
If you own a domain (e.g., myagency.com), you can point it to your GitLab Pages site instead of using the default youruser.gitlab.io URL.
Steps:
- You'll need access to your domain's DNS settings (at your registrar — for example Le Bureau (cooperative), Gandi, or any registrar of your choice)
- Add DNS A records pointing to GitLab's IP addresses
- In your GitLab project, go to Deploy → Pages and add your domain
- Wait for DNS to propagate (5 minutes to 24 hours, typically 10-60 minutes)
- Your domain is now set up
See Custom domain for step-by-step instructions.
Making updates¶
Your site is live, but you're not done. When you make changes in Silex:
- Edit your site in the editor
- Click Publish again
- GitLab builds and deploys the latest version automatically
- Your site updates (usually within 2-3 minutes)
There's no limit to how many times you can publish. Publish as often as you make changes.
Next steps¶
Your site is now live and accessible to the world. Here are some things you might do next:
Improve SEO: Add titles, descriptions, and meta tags to each page. See SEO.
Add more content: Create more pages or add blog posts in WordPress.
Set up a custom domain: If you own a domain, point it to your GitLab Pages site. See Custom domain.
Monitor analytics: Add a tracking service (like Google Analytics) via custom code. See Custom code.
Optimize performance: Optimize images, minify CSS, or add caching headers. These are advanced topics covered in the developer documentation.
Recap¶
You've successfully built and published a professional agency website. Here's what you learned:
- Creating and structuring multiple pages
- Using Symbols for shared components (header, footer)
- Building a design system with CSS variables
- Connecting WordPress as a data source
- Binding dynamic content to components
- Publishing to GitLab Pages
- Setting up a custom domain
Congratulations! Your site is live and ready for visitors.
Related pages¶
- Publish to GitLab — detailed step-by-step guide
- Custom domain — pointing your own domain to GitLab Pages
- How publishing works — understanding the full pipeline
- Forms — handling form submissions
- SEO — improving search visibility
- Custom code — adding analytics and other scripts
You did it!¶
You just built and published a real website with open-source tools. Your code is yours, your skills are transferable, and your site is live.
Want to keep going?
- Share your site in the community chat — we'd love to see it
- Create a template from your design so others can start from it
- Vote on features you wish existed
- Report bugs you found along the way
- Subscribe to the newsletter for updates