# RTSDA Website The official website for Rockville Tolland Seventh-day Adventist Church, built with Astro and powered by Rust bindings. ## Features - **Modern Astro Framework** - Fast, component-based architecture - **Event Management** - Submit and manage church events with recurring types - **Live Streaming** - Watch services live with HLS.js support - **Mobile App Integration** - iOS and Android app download links - **Admin Panel** - Manage events, bulletins, and church content - **Three Angels' Message** - Dedicated sections for Adventist theology - **Rust-Powered Backend** - High-performance API bindings via `church-core` ## Architecture ``` astro-church-website/ # Frontend Astro application ├── src/ │ ├── pages/ # Astro pages and API routes │ ├── components/ # Reusable UI components │ └── layouts/ # Page layouts └── public/ # Static assets church-core/ # Rust library for API bindings ├── src/ │ ├── client/ # API client implementations │ ├── models/ # Data structures │ └── uniffi_wrapper.rs # FFI bindings └── Cargo.toml ``` ## Development ### Prerequisites - Node.js 18+ and npm - Rust 1.70+ - Cargo ### Setup 1. **Install dependencies:** ```bash cd astro-church-website npm install ``` 2. **Build Rust bindings:** ```bash npm run build:native ``` 3. **Start development server:** ```bash npm run dev ``` ### Building for Production 1. **Build native bindings:** ```bash npm run build:native ``` 2. **Build Astro site:** ```bash npm run build ``` 3. **Deploy to web server:** ```bash cp -r dist/* /var/www/rtsda-website/ ``` ## Recent Fixes - **SecondThirdSaturday Recurring Type** - Added support for `"2nd/3rd Saturday Monthly"` events - **Event Display Issues** - Fixed events page showing "No Events Scheduled" - **iOS App Compatibility** - Resolved recurring type parsing errors - **Mobile App Downloads** - Added iOS App Store and Android APK download buttons - **Session Management** - Improved admin panel authentication handling ## API Integration The site integrates with the church API at `https://api.rockvilletollandsda.church` for: - Events and recurring schedules - Sermon archives and live streams - Church bulletins and announcements - Contact form submissions - Admin authentication ## Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Test thoroughly 5. Submit a pull request ## License See LICENSE file for details.