TravelEase is a Windows Forms application designed to simplify travel management by connecting travelers, operators, and administrators. Built with .NET Framework 4.7.2, it features a SQL Server backend (test123 database) to manage trip packages, user accounts, bookings, and more. The project is developed collaboratively using Visual Studio 2022 for form design, VS Code for C# editing with IntelliSense, SSMS for database management, and GitHub for version control.
- User Roles:
- Travelers: Browse and book trip packages, manage wishlists, and leave reviews.
- Operators: Manage trip packages, bookings, and service providers.
- Administrators: Oversee users, categories, cancellation policies, and accessibility features.
- Core Functionality:
- View and filter trip packages by travel type (e.g., adventure, cultural, leisure).
- Manage bookings, cancellations, and reviews.
- Assign service providers to trips.
- Database:
test123database on SQL Server (DESKTOP-V62LBH8\SQLEXPRESS) with tables likeTripPackage,Users,Bookings.- Initial dataset with ~10 trip packages (
backend/data/initial_dataset.sql).
- Tools:
- Visual Studio 2022 for Windows Forms design and debugging.
- VS Code with C# Dev Kit for IntelliSense-supported coding.
- SSMS for database management.
- GitHub for collaboration.
TravelEase_Organized/
├── .git/ # Git repository
├── .gitignore # Git ignore file
├── backend/ # Backend database files
│ ├── schema.sql # Database schema
│ ├── data/ # Dataset SQL scripts
│ │ ├── initial_dataset.sql
│ │ └── expanded_dataset.sql (pending)
│ └── dataset/ # Exported CSVs (ignored by .gitignore)
├── docs/ # Documentation
│ ├── setup_guide.md # Setup instructions
│ ├── README.md # Project overview
│ └── project_log.md # Development log
├── scripts/ # Utility scripts
│ └── export_csv.ps1 # Script to export CSVs
└── frontend/ # Front-end code
└── TravelEase/ # Windows Forms project
├── App.config # Configuration file
├── TravelEase.csproj # Project file
├── Forms/ # Windows Forms (e.g., LoginForm, AdminDashboard)
├── Properties/ # Resources and settings
└── Utilities/ # Utility classes (e.g., DatabaseHelper.cs)
Follow these steps to set up and run the project:
- Clone the Repository:
Replace
git clone https://github.com/yourusername/TravelEase_Organized.git cd TravelEase_Organizedyourusernamewith your GitHub username. - Set Up the Database:
- Open SSMS and connect to
DESKTOP-V62LBH8\SQLEXPRESS. - Run
backend/schema.sqlto create thetest123database. - Run
backend/data/initial_dataset.sqlto insert initial data. - See
docs/setup_guide.mdfor detailed steps.
- Open SSMS and connect to
- Set Up the Front End:
- Open
frontend/TravelEase.slnin Visual Studio 2022. - Restore NuGet packages.
- Build and run (
F5). - Edit
.csfiles in VS Code for IntelliSense support. - See
docs/setup_guide.mdfor detailed steps.
- Open
- Explore the App:
- Launch the app to see
LoginForm. - Use forms like
AdminDashboard,TravelerDashboard, andManageTripPackagesFormto interact with thetest123database.
- Launch the app to see
We welcome contributions to TravelEase! Follow these steps:
- Fork the Repository:
- Fork
TravelEase_Organizedon GitHub.
- Fork
- Clone Your Fork:
git clone https://github.com/yourusername/TravelEase_Organized.git
- Create a Feature Branch:
git checkout -b feature/your-feature-name
- Make Changes:
- Use Visual Studio 2022 for form design.
- Use VS Code for coding with IntelliSense.
- Update the database in SSMS if needed.
- Commit and Push:
git add . git commit -m "Add your feature or fix" git push origin feature/your-feature-name
- Create a Pull Request:
- Submit a pull request on GitHub to merge into
main. - Include a description of your changes and reference any issues fixed.
- Submit a pull request on GitHub to merge into
- The project was initially a traditional .NET Framework project but was converted to SDK-style to support C# Dev Kit in VS Code.
- Issues encountered and fixed:
NETSDK1022(duplicateCompileitems): Removed explicit<Compile>entries.NU1903(vulnerability inSystem.Data.SqlClient): Upgraded to v4.8.6.- Circular dependency: Deleted
TravelEase.csproj.user. NETSDK1022(duplicateEmbeddedResourceitems): Removed explicit<EmbeddedResource>entries.
- See
docs/project_log.mdfor a detailed development history.
This project is licensed under the MIT License. See the LICENSE file for details (pending creation).
For questions or collaboration, contact the team via GitHub issues or email (to be added).