Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chanmeng666/countryside-community-swimming-club
A comprehensive web-based management system for community swimming clubs. Features member management, class scheduling, facility booking, payment processing, and reporting capabilities. Built with Flask and MySQL to streamline operations for swimming clubs of any size.
https://github.com/chanmeng666/countryside-community-swimming-club
aquatics-management booking-system bootstrap class-scheduling facility-management flask membership-management mysql python reporting-dashboard swimming-club-management web-application
Last synced: 8 days ago
JSON representation
A comprehensive web-based management system for community swimming clubs. Features member management, class scheduling, facility booking, payment processing, and reporting capabilities. Built with Flask and MySQL to streamline operations for swimming clubs of any size.
- Host: GitHub
- URL: https://github.com/chanmeng666/countryside-community-swimming-club
- Owner: ChanMeng666
- License: apache-2.0
- Created: 2024-05-29T23:11:10.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-12-07T07:03:03.000Z (27 days ago)
- Last Synced: 2024-12-07T07:26:58.544Z (27 days ago)
- Topics: aquatics-management, booking-system, bootstrap, class-scheduling, facility-management, flask, membership-management, mysql, python, reporting-dashboard, swimming-club-management, web-application
- Language: HTML
- Homepage: https://countryside-community-sw-6wqr4e1.gamma.site/
- Size: 10.9 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
🏊♂️ Swimming Club Management System (SCMS)
# Overview
SCMS is a comprehensive web-based management system built with Flask and MySQL to streamline operations for community swimming clubs. The system handles membership management, class bookings, instructor scheduling, facility management, payments, and administrative reporting - providing an all-in-one solution for swimming club operations.# ⭐ Key Features
### 👥 For Members
- Self-service membership registration and renewal
- Class and lesson booking capabilities
- Personal dashboard with booking history
- Profile management with health information
- Customizable membership plans (Monthly/Annual)
- Online payment processing### 🏅 For Instructors
- Personal schedule management
- Class attendance tracking
- Student progress monitoring
- Profile and availability management
- Direct communication with members### 👨💼 For Managers
- Comprehensive membership oversight
- Dynamic class scheduling and management
- Facility and pool lane allocation
- Financial reporting and analytics
- Staff management tools
- News and announcement system## 🛠️ Technology Stack
- **Backend:** Python Flask 3.0.2
- **Database:** MySQL 8.3.0
- **Frontend:** HTML5, CSS3, JavaScript, Bootstrap
- **Authentication:** Flask-Hashing
- **Template Engine:** Jinja2
- **Other Libraries:**
- mysql-connector-python 8.3.0
- werkzeug 3.0.1
- blinker 1.7.0
- click 8.1.7
- colorama 0.4.6
- itsdangerous 2.1.2## 📋 Prerequisites
- Python 3.8+
- MySQL Server 8.3.0+
- Git## ⚙️ Installation
1. Clone the repository
```bash
git clone https://github.com/ChanMeng666/countryside-community-swimming-club.git
cd countryside-community-swimming-club
```2. Create and activate virtual environment (Optional but recommended)
```bash
python -m venv venv
source venv/bin/activate # On Windows use: .\venv\Scripts\activate
```3. Install dependencies
```bash
pip install -r requirements.txt
```4. Configure database connection
- Create `connect.py` file in the `scmsapp` directory
- Add your MySQL credentials5. Initialize database
```bash
mysql -u your_username -p < scms.sql
```## 🚀 Running the Application
1. Start the server
```bash
python run.py
```2. Access the application at `http://localhost:5000`
## 👥 Default Login Credentials
- **Members:** member1 to member20 (Password: Test1234)
- **Instructors:** instructor1 to instructor5 (Password: Test1234)
- **Managers:** manager1 and manager2 (Password: Test1234)## 📁 Project Structure
```
swimming-club-management/
├── scmsapp/
│ ├── model/ # Database models and business logic
│ ├── route/ # URL routing and view functions
│ ├── static/ # CSS, JavaScript, and images
│ └── templates/ # HTML templates
├── requirements.txt # Project dependencies
├── run.py # Application entry point
└── scms.sql # Database schema and initial data
```## 🔑 Security Features
- Password hashing using Flask-Hashing
- Role-based access control
- Session management
- Input validation and sanitization
- Secure database operations## ⚠️ Important Notes
- Adjust MySQL Workbench settings for handling large datasets (>1000 rows)
- Disable 'Safe Updates' mode for proper SQL script execution
- Ensure proper configuration of database credentials in connect.py## 🤝 Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request## 📝 License
This project is licensed under the Apache-2.0 license - see the [Apache-2.0 license](LICENSE) file for details.
## 📧 Contact
For any queries or issues, please contact: [email protected]