StayHub is a comprehensive travel management platform built on a robust Microservices Architecture. It goes beyond traditional tour booking, operator management, and online payments by delivering breakthrough user experiences. Key features include an AI Assistant for personalized itinerary suggestions, 3D AR mapping, and a dedicated internal social network supporting real-time chat, SOS emergency alerts, and Locket-style moment sharing.
StayHub uses 9 separate databases to ensure microservice independence. To initialize your local development environment, you only need to run a single script:
DatabaseSchema.sql file located in the root directory of this repository.⚠️ Warning: The script includes commands to drop existing databases before creating new ones to ensure a clean slate. Please back up any important data before running.
.vs FolderWhen developing with Visual Studio, the IDE automatically generates a hidden .vs/ directory in your solution folder. This directory stores local user settings, open document states, window layouts, and IntelliSense cache.
You must NEVER push the .vs folder to the remote repository. If this folder is tracked by Git, it will cause severe merge conflicts every time team members pull code, bloat the repository size unnecessarily, and leak your local machine's directory paths.
If you have just created a new branch and accidentally allowed Git to track the .vs folder, please follow these exact steps before pushing your code:
Step 1: Remove the .vs folder from Git cache
Open your Terminal or Git Bash at the root directory of the project and run the following command. (Note: --cached ensures the folder is only removed from Git's tracking, it will NOT delete the actual files on your computer).
git rm -r --cached .vs
**Step 2: Commit the changes and Push Now that the .vs folder is untracked and ignored, you can safely commit this cleanup and push your branch:
git add .
git commit -m "chore: untrack .vs folder and update .gitignore"
git push origin <your-branch-name>
To maintain a clean and meaningful commit history, StayHub follows the Conventional Commits standard:
<type>: <short description>
feat: Add new featurefix: Bug fixchore: Maintenance (config, ignore files, etc.)refactor: Code restructuring (no feature change)docs: Documentation changesstyle: Formatting (no logic change)test: Add or update testsfeat: add booking API for tour service
fix: resolve payment callback issue
chore: update .gitignore and remove .vs folder
refactor: restructure booking service logic
docs: update README with database setup instructions
Keep message short and clear (≤ 72 characters)
Use present tense (e.g., "add", not "added")
Avoid vague messages like:
update codefix bugfirst commitBranch names must follow tasks defined in the project backlog:
👉 Backlog Link: https://docs.google.com/spreadsheets/d/1D6swDBGxUkrj-zVbCGWIK_zgdPEWKOH8CQ5xSg2KrnA/edit?gid=0#gid=0
<type>/<task-id>-<short-description>
feature/UC-12-booking-api
fix/UC-25-payment-bug
refactor/UC-30-clean-architecture
chore/UC-40-update-config
task-id must match the ID in backlogkebab-case (lowercase + -)main or developTSQL
97.6%
C#
2.4%
StayHub is a comprehensive travel management platform built on a robust Microservices Architecture. It goes beyond traditional tour booking, operator management, and online payments by delivering breakthrough user experiences. Key features include an AI Assistant for personalized itinerary suggestions, 3D AR mapping, and a dedicated internal social network supporting real-time chat, SOS emergency alerts, and Locket-style moment sharing.
StayHub uses 9 separate databases to ensure microservice independence. To initialize your local development environment, you only need to run a single script:
DatabaseSchema.sql file located in the root directory of this repository.⚠️ Warning: The script includes commands to drop existing databases before creating new ones to ensure a clean slate. Please back up any important data before running.
.vs FolderWhen developing with Visual Studio, the IDE automatically generates a hidden .vs/ directory in your solution folder. This directory stores local user settings, open document states, window layouts, and IntelliSense cache.
You must NEVER push the .vs folder to the remote repository. If this folder is tracked by Git, it will cause severe merge conflicts every time team members pull code, bloat the repository size unnecessarily, and leak your local machine's directory paths.
If you have just created a new branch and accidentally allowed Git to track the .vs folder, please follow these exact steps before pushing your code:
Step 1: Remove the .vs folder from Git cache
Open your Terminal or Git Bash at the root directory of the project and run the following command. (Note: --cached ensures the folder is only removed from Git's tracking, it will NOT delete the actual files on your computer).
git rm -r --cached .vs
**Step 2: Commit the changes and Push Now that the .vs folder is untracked and ignored, you can safely commit this cleanup and push your branch:
git add .
git commit -m "chore: untrack .vs folder and update .gitignore"
git push origin <your-branch-name>
To maintain a clean and meaningful commit history, StayHub follows the Conventional Commits standard:
<type>: <short description>
feat: Add new featurefix: Bug fixchore: Maintenance (config, ignore files, etc.)refactor: Code restructuring (no feature change)docs: Documentation changesstyle: Formatting (no logic change)test: Add or update testsfeat: add booking API for tour service
fix: resolve payment callback issue
chore: update .gitignore and remove .vs folder
refactor: restructure booking service logic
docs: update README with database setup instructions
Keep message short and clear (≤ 72 characters)
Use present tense (e.g., "add", not "added")
Avoid vague messages like:
update codefix bugfirst commitBranch names must follow tasks defined in the project backlog:
👉 Backlog Link: https://docs.google.com/spreadsheets/d/1D6swDBGxUkrj-zVbCGWIK_zgdPEWKOH8CQ5xSg2KrnA/edit?gid=0#gid=0
<type>/<task-id>-<short-description>
feature/UC-12-booking-api
fix/UC-25-payment-bug
refactor/UC-30-clean-architecture
chore/UC-40-update-config
task-id must match the ID in backlogkebab-case (lowercase + -)main or developTSQL
97.6%
C#
2.4%