Static site for Global Corporate Advisory and Management Services DWC-LLC, built with Astro and meant to be hosted on GitHub Pages at https://gcamsadvisory.com.
Copy for services lives in Markdown. Shared particulars (phone, licence numbers, DIFC wording, industry labels) are in src/data/site.ts.
npm install
npm run devBuild:
npm run build
npm run previewRequires Node 22.12 or later (Astro 7).
For a working enquiry form locally, copy .env.example to .env and set PUBLIC_WEB3FORMS_ACCESS_KEY. Restart dev / preview after changing it.
| Path | What to edit |
|---|---|
src/data/site.ts |
Legal name, UAE phone, address, email, LinkedIn, industry labels |
src/content/services/*.md |
The six services |
src/content/insights/*.md |
Articles (none on launch) |
A new Insight is one Markdown file with title, description, date, and optional draft: true.
The enquiry form posts to Web3Forms (https://api.web3forms.com/submit). The client needs PUBLIC_WEB3FORMS_ACCESS_KEY:
- Local: copy
.env.exampleto.envand paste the access key (.envis gitignored). - GitHub Pages: repository Settings → Secrets and variables → Actions →
WEB3FORMS_ACCESS_KEY. The deploy workflow passes it into the build asPUBLIC_WEB3FORMS_ACCESS_KEY.
In the Web3Forms dashboard, the form recipient must be ram@gcamsadvisory.com. Do not commit the key. If the key is missing, the form stays disabled and shows a visible note. Call, WhatsApp and email remain live.
- Create a GitHub repo the GCAMS account will own (
gcamsadvisory/websiteor transfer after first push). - In the repo: Settings → Pages → Source: GitHub Actions.
- Add the Actions secret
WEB3FORMS_ACCESS_KEY(Web3Forms access key; recipientram@gcamsadvisory.com). - Push
main(ormaster). The workflow at.github/workflows/deploy.ymlbuilds and deploysdist.
The live site is https://gcamsadvisory.com, served from /. Do not set ASTRO_BASE in the deploy workflow. A github.io project URL such as https://<user>.github.io/gcams/ would need ASTRO_BASE=/gcams only for that preview.
5. Settings → Pages → Custom domain: gcamsadvisory.com. public/CNAME contains that host. Turn on Enforce HTTPS after GitHub issues the certificate.
Canonical host: https://gcamsadvisory.com. Point apex and www as follows (GitHub Pages IPv4):
| Type | Host | Value |
|---|---|---|
| A | @ |
185.199.108.153 |
| A | @ |
185.199.109.153 |
| A | @ |
185.199.110.153 |
| A | @ |
185.199.111.153 |
| CNAME | www |
<github-org-or-user>.github.io |
Also add the IPv6 AAAA records from GitHub’s custom domain docs if you use them. Wait for DNS, then enable Enforce HTTPS in the Pages settings.
Redirect http and www to https://gcamsadvisory.com (GitHub does this once the custom domain and HTTPS are active).
- Confirm SPF, DKIM and DMARC on Namecheap Private Email for
ram@gcamsadvisory.com. - Confirm
WEB3FORMS_ACCESS_KEYis set on the GitHub repo and that the Web3Forms dashboard recipient is that mailbox. - Add LinkedIn URLs in
site.linkedInif the profile address changes. - The IBBI registration number on Credentials still needs a check against the certificate before publication. Do not add SR-795299 unless that registration document matches it.
- Home, About, and Services use conceptual brand illustrations in
public/images/(home-business-district.webp,about-workspace.webp,services-operations.webp), each 1448 by 1086. Source and licence are noted onphotographsinsrc/data/site.ts. They are decorative (alt=""). They are not pictures of GCAMS premises, staff, or a client. Do not use a personal photograph. - Add Search Console and, if wanted, privacy-conscious analytics.
Web files are in public/images/ (transparent PNG, white-background PNG, SVG wrapper, OG image) plus public/favicon.svg. Print AI/EPS remains a later designer pass.
Site contents © 2026 Global Corporate Advisory and Management Services DWC-LLC.