From b700c45b0653ef8274bb460703537fa907203a2d Mon Sep 17 00:00:00 2001 From: RTSDA Date: Sat, 16 Aug 2025 18:30:09 -0400 Subject: [PATCH] Add README and LICENSE --- LICENSE | 21 +++++++++++ README.md | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+) create mode 100644 LICENSE create mode 100644 README.md diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f41b38a --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 Rockville Tolland Seventh-day Adventist Church + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..31ae941 --- /dev/null +++ b/README.md @@ -0,0 +1,104 @@ +# 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. \ No newline at end of file