Modern, institutional website for AxisPoint LLC - Commercial Real Estate Asset Management & Investment Advisory.
Built with Astro, React, TypeScript, and Tailwind CSS.
- Astro - Static site generator with pre-rendered HTML
- React - Interactive components
- TypeScript - Type-safe development
- Tailwind CSS - Utility-first styling
- CSS Animations - Subtle, premium motion
/
├── public/
│ ├── assets/logo/ # Add logo files here
│ ├── robots.txt
│ └── favicon.svg
├── src/
│ ├── components/
│ │ ├── layout/ # Header, Footer, MobileNav
│ │ ├── ui/ # Button, Card, Input
│ │ └── sections/ # Homepage sections
│ ├── layouts/ # BaseLayout with SEO
│ ├── pages/ # All site pages
│ └── styles/ # Global CSS
└── .github/workflows/ # Deployment automation
- Node.js 20 or higher
- npm
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run previewPlace your logo files in /public/assets/logo/:
Transparent_AXP_LOGO.svg(preferred)Transparent_AXP_LOGO.png(fallback)
The contact form uses Formspree with a mailto fallback.
To enable Formspree:
- Create account at https://formspree.io
- Get your form endpoint ID
- Update
src/components/ContactForm.tsxline 13:const FORMSPREE_ENDPOINT = 'https://formspree.io/f/YOUR_FORM_ID';
The site deploys automatically to Namecheap via FTP when pushed to the main branch.
Required GitHub Secrets:
- Go to: Settings → Secrets and variables → Actions
- Add these secrets:
FTP_SERVER- Your FTP server (e.g.,ftp.yourdomain.com)FTP_USERNAME- FTP username from Namecheap cPanelFTP_PASSWORD- FTP password
Find FTP credentials in Namecheap:
- Log into cPanel
- Go to FTP Accounts
- Use main cPanel username or create dedicated deploy user
# Build the site
npm run build
# Upload contents of dist/ folder to your hosting via FTP/- Homepage with all sections/services- Investment Advisory & Asset Management details/education- Resources (placeholder)/contact- Contact form/experience- Case studies/privacy- Privacy policy/terms- Terms of service/404- 404 page
- Typography-first design
- Generous whitespace
- Subtle CSS animations
- Premium hover states
- Mobile-first responsive
- Accessibility (WCAG AA)
prefers-reduced-motionsupport
Voice:
- Direct, not clever
- Confident, not boastful
- Specific, not vague
- Calm, not urgent
Avoid:
- Marketing fluff ("unlock", "synergy", "best-in-class")
- Exclamation points
- Sales-driven copy
- Performance promises
- Unique title and description per page
- Open Graph meta tags
- Automatic sitemap generation
- Canonical URLs
- Semantic HTML
- Create file in
src/pages/ - Use BaseLayout with title and description
- Import Header and Footer components
- Build page content
- Create in appropriate directory (
ui/,layout/,sections/) - Use
.astrofor static components - Use
.tsxfor interactive React components - Import and use in pages
Modern browsers with ES6+ support:
- Chrome (last 2 versions)
- Firefox (last 2 versions)
- Safari (last 2 versions)
- Edge (last 2 versions)
- Pre-rendered static HTML
- Minimal JavaScript
- Optimized images
- Font preloading
- CSS animations (no JS libraries)
Copyright © 2025 AxisPoint LLC. All rights reserved.