This is a modern reimplementation of the salsa.dev website using Astro 5.7, following the latest best practices.
- Built with Astro 5.7
- Responsive design using Tailwind CSS
- Smooth & subtle micro-interactions
- Optimized images with Astro's built-in image optimization
- Modern SEO practices
- Accessibility-friendly components
- Fast page transitions with View Transitions API
/
├── public/ # Static assets like images and favicons
├── src/
│ ├── assets/ # Images processed by Astro
│ ├── components/ # Reusable UI components
│ ├── layouts/ # Page layouts
│ ├── pages/ # Page components and routes
│ ├── scripts/ # Client-side JavaScript
│ └── styles/ # Global CSS and utility styles
├── .gitignore
├── astro.config.mjs # Astro configuration
├── package.json # Project dependencies
├── tailwind.config.mjs # Tailwind CSS configuration
└── tsconfig.json # TypeScript configuration
- Node.js (v18.14.1 or higher)
- npm or yarn or pnpm
- Clone the repository:
git clone https://github.com/ctrimm/astro-payroll-solution-theme.git
cd astro-payroll-solution-theme- Install dependencies:
npm install
# or
yarn install
# or
pnpm install- Run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev- Open your browser and navigate to
http://localhost:4321
To build the site for production, run:
npm run build
# or
yarn build
# or
pnpm buildThe build output will be in the dist/ directory.
To preview the production build locally:
npm run preview
# or
yarn preview
# or
pnpm previewThe project uses Tailwind CSS for styling. You can customize the styles by modifying:
tailwind.config.mjs- For theme configurationsrc/styles/global.css- For global styles and custom utility classes
Update the content of the site by modifying the components in the src/components/ directory and the pages in the src/pages/ directory.
- Place static images that don't need processing in the
public/directory - Place images that need optimization in the
src/assets/directory
To add a new page, create a new .astro file in the src/pages/ directory. The file path will determine the route.
For example:
src/pages/blog.astrowill be accessible at/blogsrc/pages/blog/[slug].astrowill create dynamic routes for blog posts
The site uses a combination of:
- CSS animations defined in
src/styles/global.css - Intersection Observer for triggering animations on scroll, implemented in
src/scripts/animations.js
This Astro site can be deployed to any static hosting service like:
- Netlify
- Vercel
- GitHub Pages
- Cloudflare Pages
- AWS S3 + CloudFront
Follow the respective platform's documentation for deployment instructions.
This project is open source and available under the MIT License.
