https://github.com/timoa/yubidive
Simple Scuba dive bookings app
https://github.com/timoa/yubidive
Last synced: 12 months ago
JSON representation
Simple Scuba dive bookings app
- Host: GitHub
- URL: https://github.com/timoa/yubidive
- Owner: timoa
- License: apache-2.0
- Created: 2024-11-17T07:49:48.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-10T16:58:36.000Z (over 1 year ago)
- Last Synced: 2025-03-10T17:51:13.396Z (over 1 year ago)
- Language: Svelte
- Homepage:
- Size: 411 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# YubiDive ๐คฟ
[](https://kit.svelte.dev/)
[](https://svelte.dev/)
[](https://tailwindcss.com/)
[](https://www.prisma.io/)
[](LICENSE)
A modern, efficient scuba diving booking management system designed for dive clubs and centers. YubiDive simplifies the process of managing boat schedules, dive bookings, and member interactions.
## โจ Features
### ๐ฅ๏ธ Boat Management
- Create and manage boat profiles with detailed information
- Track boat capacity and status (active, inactive, maintenance)
- View boat schedules and availability
### ๐
Schedule Management
- Create and manage dive schedules
- Set start and end times for dive sessions
- View upcoming and past schedules
### ๐ซ Booking System
- Easy-to-use booking interface for members
- Real-time availability checking
- Booking management for administrators
- View and manage upcoming and past bookings
### ๐ฅ User Management
- Member registration and authentication
- Role-based access control (admin/member)
- Member profile management
### ๐ Internationalization
- Multi-language support (English/French)
- Easy to extend with additional languages
### ๐
Modern UI/UX
- Clean, responsive design using TailwindCSS
- Intuitive navigation and user flows
- Consistent design language across all pages
## ๐ Tech Stack
- **Frontend**: SvelteKit 2.0, Svelte 5.0
- **Styling**: TailwindCSS 3.4
- **Database**: Prisma ORM with SQLite (Cloudflare R2 planned)
- **Deployment**: Cloudflare Pages/Vercel/Netlify (planned)
## ๐ ๏ธ Installation
1. Clone the repository:
```bash
git clone https://github.com/yourusername/yubidive.git
cd yubidive
```
2. Install dependencies:
```bash
pnpm install
```
3. Set up the database:
```bash
# Create SQLite database
pnpm prisma db push
# Seed the database with initial data
pnpm prisma db seed
```
## ๐โโ๏ธ Development
Start the development server:
```bash
# Regular start
pnpm run dev
# Start and open in browser
pnpm run dev --open
```
Build for production:
```bash
pnpm run build
```
## ๐งช Testing and Quality
```bash
# Type checking
pnpm run check
# Linting
pnpm run lint
# Format code
pnpm run format
```
## ๐ License
This project is licensed under the Apache 2.0 License - see the [LICENSE](LICENSE) file for details.
## ๐ Roadmap
- [ ] Integration with Cloudflare R2 database
- [ ] WhatsApp and Telegram bot to book dives
- [ ] Notifications
- [ ] Email notifications
- [ ] Calendar integration
- [ ] Advanced booking management features
- [ ] Track available diving spots
- [ ] Mobile app version (maybe)
## ๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.