A checklist for all projects that are going live
This checklist is used whenever a project is going live at https://spatie.be
Support us
We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.
1. Browserstack tests
- Desktop: test on latest versions of Chrome, IE/Edge, Firefox, Safari
- Mobile: test on latest versions of Mobile Safari, Android
2. Front end checklist
Assets
- Search sources for
http://
. Replace byhttps://
- Lint (s)css sources
- Webfonts: is the live domain configured in services like Typekit, Fonts.com etc.?
- Is the browserlist properly configured for autoprefixer and babel-preset-env?
- When using PurgeCSS: check if layout is preserved.
Scripts
- Is
yarn.lock
present? - Check JS lint errors. Remove all
console.log
lines in scripts - Check for console errors
Page weight
- Evaluate total weight of at least homepage
- Open Inspector network/timeline tab to identify heavy assets
- Check if heavy assets are cached
Audits
- Use the Chrome DevTools (in incognito mode) and perform a mobile audit (with throttling) to fix common problems.
- Repeat with a desktop audit.
3. Check content (with an open console)
- Are all strings / images present (and translated)?
- Does menu/submenu have a correct active state on every page?
- Are 404, 500 and 503 pages provided? Do they provide useful content like 'back to home', search or a navigation tree?
- Check all pages for n+1 problems
Meta
- Check page titles / descriptions
- Test Facebook sharing. Provide og-tags if needed
- Does Favicon load? Pin the tab in Safari to check pinned icon
Repeat this section for all languages
Components
- Google Maps
- API key needed/configured?
- Check info windows
- Prevent zoom out beyond 1x world
- Try clicking on markers
- Forms: fill out with wrong/right values
- Video: check with sound on
- Try subscribing to a newsletter with incorrect & correct email (use correct mail twice to get 'already subscribed' message)
- Check layout of emails
- Check structured data for news, events, products,... https://search.google.com/structured-data/testing-tool/
4. Back end checklist
- Open up
/blender
- Remove unused modules from main menu
- Configure Analytics dashboard
- Create a new admin and try to log in
- Try the password reset flow for existing user
- Try saving article / news / ...
- Verify all e-mail recipients are correct
- Scan database for urls to development domain
- Check client's logo in header
5. Server, DNS & Services
- Add redirects from old to new pages if necessary.
- Install Let's Encrypt certificate
- Check SSL certificate health https://www.ssllabs.com/ssltest/
- Check your hostfile to make sure you're looking at the live site
- Try visiting
www
domain, should redirect tonon-www
- Try out visiting
http
, should redirect tohttps
- Verify that all http status codes are ok with https://github.com/spatie/http-status-check
- Scan for mixed content with https://github.com/spatie/mixed-content-scanner-cli
- Verify that indexing is not prohibited with
x-robots-tag: none
by checkingcurl -I https://url | grep 'x-robots-tag'
. Allow robots in.env
- Remove development DNS record
- Check dns propagation with https://www.whatsmydns.net/
- Verify Tag Manager / Analytics have been correctly set up
Google Search Console
- Submit all www/non-www http/https variations
- Set up non-www https as the preferred domain
- Crawl > Fetch as Google > Submit to index to kickstart index
Server
- Are DigitalOcean backups enabled?
- Are Amazon backups enabled?
- Is the output of artisan task
backup:run
ok? - Is artisan scheduled on Forge?
- Is Horizon configured in Supervisor on Forge? Command should be
php artisan horizon
. Path should be/home/forge/my-new-site.com/current
- Is the url being monitored by Oh Dear!?
- Is the server being monitored by our server-monitor?
Github
- Remove
develop
branch or other stale branches
About Spatie
Spatie is a webdesign agency based in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.