A modern Minecraft recipe catalog built with Astro and TypeScript.
For Contributors & AI Agents: Please read @AGENTS.md before making changes. It contains comprehensive guidelines, common pitfalls, and code standards.
- 🚀 Built with Astro for optimal performance
- 📦 TypeScript for type safety
- 🎨 Modern CSS with CSS custom properties
- 📱 Responsive design
- ⚡ Zero JavaScript by default, enhanced with progressive JavaScript where needed
npm installRun the development server with hot reload:
npm run devType-check and build for production:
npm run buildTo deploy the production build under a subdirectory (such as GitHub Pages),
set the BASE_PATH environment variable before building. For example:
BASE_PATH=/craftalog/ npm run buildWhen using the provided GitHub Pages workflow, set a repository variable named
BASE_PATH so the build automatically uses the correct subdirectory.
Preview the production build locally:
npm run previewThis project is configured to deploy to GitHub Pages automatically via GitHub Actions.
The workflow runs on pushes to the main branch.
- Enable GitHub Pages in your repository settings
- Set the source to "GitHub Actions"
- (Optional) Set a repository variable named
BASE_PATHif deploying to a subdirectory
/
├── public/ # Static assets (favicon, textures, etc.)
├── src/
│ ├── components/ # Astro components
│ ├── data/ # Data files (items, recipes, etc.)
│ ├── layouts/ # Page layouts
│ ├── pages/ # File-based routing
│ └── utils/ # Utility functions
├── astro.config.mjs # Astro configuration
└── tsconfig.json # TypeScript configuration
- Framework: Astro
- Language: TypeScript
- Styling: CSS with modern features
- Deployment: GitHub Pages
- CI/CD: GitHub Actions
MIT