A modern, professional Astro.js template for logistics, manufacturing, and supply chain companies. Built with React, Tailwind CSS, and TypeScript.
- π Built with Astro - Fast, modern static site generation
- βοΈ React Components - Interactive components with React
- π¨ Tailwind CSS 4 - Modern utility-first styling
- π± Fully Responsive - Mobile-first design
- βΏ Accessible - Built with accessibility in mind
- π― SEO Optimized - Meta tags and semantic HTML
- π Smooth Animations - Powered by Motion library
- π¨ Modern UI - Beautiful gradient designs and components
- Home - Hero section, features, stats, testimonials
- Capabilities - Service offerings showcase
- Use Cases - Industry-specific solutions
- Facilities - Location and facility information
- Request Quote (RFQ) - Contact form for quotes
- Documentation - Resources and guides
- Node.js 18+ and npm
- Clone this repository:
git clone https://github.com/yourusername/astroflow.git
cd astroflow- Install dependencies:
npm install- Start the development server:
npm run dev- Open http://localhost:4321 in your browser
Update src/config/site.ts with your information:
export const SITE = {
title: 'Your Company Name', // TODO: Replace with your company name
description: 'Your company description', // TODO: Update with your description
url: 'https://yourdomain.com', // TODO: Replace with your actual domain
author: 'Your Company Name', // TODO: Replace with your company name
} as const;
export const SOCIAL_LINKS = {
linkedin: 'https://linkedin.com/company/yourcompany', // TODO: Replace with your LinkedIn
twitter: 'https://twitter.com/yourcompany', // TODO: Replace with your Twitter
facebook: 'https://facebook.com/yourcompany', // TODO: Replace with your Facebook
} as const;The RFQ form (src/components/react/RFQForm.tsx) currently logs form data to the console. To integrate with a backend:
-
Option 1: Form Service (Recommended for static sites)
- Use Formspree, Netlify Forms, or similar
- Update the
handleSubmitfunction inRFQForm.tsx
-
Option 2: Custom API
- Create an API endpoint
- Update the form submission handler
Example with Formspree:
const handleSubmit = async (e: React.FormEvent<HTMLFormElement>) => {
e.preventDefault();
const formData = new FormData(e.currentTarget);
const response = await fetch('https://formspree.io/f/YOUR_FORM_ID', {
method: 'POST',
body: formData,
headers: { 'Accept': 'application/json' }
});
if (response.ok) {
// Show success message
}
};| Command | Action |
|---|---|
npm install |
Installs dependencies |
npm run dev |
Starts local dev server at localhost:4321 |
npm run build |
Build your production site to ./dist/ |
npm run preview |
Preview your build locally, before deploying |
npm run astro ... |
Run CLI commands like astro add, astro check |
/
βββ public/
β βββ favicon.svg
βββ src/
β βββ assets/ # Images and static assets
β βββ components/ # Reusable components
β β βββ home/ # Home page components
β β βββ react/ # React interactive components
β β βββ ui/ # UI components
β βββ config/ # Configuration files
β βββ layouts/ # Page layouts
β βββ pages/ # Astro pages (routes)
β βββ styles/ # Global styles
β βββ utils/ # Utility functions
βββ astro.config.mjs # Astro configuration
βββ package.json
βββ tsconfig.json
The template uses Tailwind CSS. Customize colors in src/styles/global.css or update Tailwind config.
Replace placeholder images in src/assets/ with your own. The template includes stock photos as placeholders.
- Update text content in component files
- Modify navigation in
src/config/site.ts - Update facility information in
src/pages/facilities.astro - Customize testimonials in
src/components/home/Testimonials.astro
npm run buildThis creates a dist/ folder with your static site.
The dist/ folder can be deployed to any static hosting service:
- GitHub Pages
- Cloudflare Pages
- AWS S3 + CloudFront
- Any static hosting provider
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
If you find this template useful, please give it a star on GitHub!
For questions or support, please open an issue on GitHub.
Built with β€οΈ using Astro

