A modern, fast, and maintainable website for the Saez Lab built with Astro, React, and Tailwind CSS.
- 🚀 Built with Astro
- 💅 Styled with Tailwind CSS
- 🎨 UI components from shadcn/ui
- 📱 Fully responsive design
- 📝 Content management with MDX
- 🔍 SEO optimized
- ⚡ Fast performance with static generation
src/
├── components/ # React components
├── content/ # Content files (MDX, JSON)
├── layouts/ # Layout components
├── pages/ # Astro pages
├── styles/ # Global styles
└── lib/ # Utility functions
- Node.js 18+
- pnpm (recommended) or npm
-
Clone the repository:
git clone https://github.com/saezlab/website.git cd website
-
Install dependencies:
pnpm install
-
Start the development server:
pnpm dev
-
Open http://localhost:4321 in your browser.
Team member information is stored in src/content/team/team.json
. To add or update team members, edit this file.
Publication are automatically downloaded from Pubmed.
Software tool information is stored in src/content/software/software.json
. To add or update software tools, edit this file.
Partner information is stored in src/content/partners/partners.json
. To add or update partner information, edit this file.
{
"current": [
{
"name": "string",
"role": "string",
"description": "string",
"research_interests": "string",
"professional_career": [
{
"period": "string",
"position": "string"
}
],
"education": [
{
"period": "string",
"degree": "string",
"institution": "string"
}
],
"image": "string"
}
],
"alumni": [
{
"name": "string",
"role": "string",
"description": "string",
"current_position": "string"
}
]
}
[
{
"name": "string",
"short_description": "string",
"long_description": "string",
"code_repository": "string",
"website": "string",
"publication": "string",
"image": "string",
"categories": {
"featured": "boolean",
"tool": "boolean",
"database": "boolean"
}
}
]
{
"collaborators": [
{
"name": "string",
"institution": "string"
}
]
}
To build the site for production:
pnpm build
The built site will be in the dist/
directory.
The site can be deployed to any static hosting service. For example, to deploy to GitHub Pages:
- Set up GitHub Actions workflow (see
.github/workflows/deploy.yml
) - Push to the
main
branch - The site will be automatically deployed to GitHub Pages
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request