Seamless Travel Experience β Anywhere, Anytime.
Easy Travel BD is a comprehensive travel management platform designed to make traveling across Bangladesh convenient and enjoyable. From booking bus tickets to finding the best hotels, tour guides, and travel agencies, our platform provides a seamless experience for travelers. Additionally, Easy Travel BD enables users to explore tourist spots, read blogs, and share their travel experiences.
ASP.NET Core |
C# |
Microsoft SQL Server |
Clean Architecture |
Microsoft Azure |
Meet the passionate developers behind Easy Travel BD:
| Role | Name & GitHub Profile |
|---|---|
| Team Lead | Najmul Islam Naeem |
| Developer | Irfan Mahmud |
| Developer | Abdur Rashed |
A heartfelt appreciation to Maynul Islam Sohel
| Role | Permissions / Activities |
|---|---|
| Public (Anyone) | - Search and explore buses - Explore hotels, private cars, photographers, guides, agencies - Create account |
| Registered User | - Book buses - Book hotels - Book private cars - Hire photographers - Hire tour guides - Update their profile - Show their previous history |
| Bus Manager | - Add and manage buses - Update bus information - View bus booking history |
| Private Car Manager | - Add and manage private cars - Update car information - View private car bookings |
| Hotel Manager | - Add and manage hotels - Update room availability - View hotel booking history |
| Photographer | - Create and manage profile - Manage photography bookings and schedule |
| Tour Guide | - Create and manage profile - Manage tour guide bookings and availability |
| Agency Manager | - Add and manage travel agencies - Manage agency tours and related services |
| Super Admin | - Distribute money to service provider - Create,Update,Delete Service provider and User and all other permited task |
Strictly we handed the authentication authorization for security
The homepage provides a user-friendly interface with the following sections:
-
Navbar: A responsive and dynamic navigation bar with buttons.
-
Hero Section: A sliding showcase highlighting major services
-
Body:
- Attractive cards showcasing our travel packages.
- Details of popular tourist spots in Bangladesh.
-
Contact Section: A form to contact using email
-
Footer: A neatly organized footer providing quick links and contact details.
Searchable and result of hotel.Responsive and beautiful ui.
A dedicated page for booking bus tickets. Features include:
- Ticket Search:
- Input fields for From, To, and Date.
- A search button to show available buses.
- **Bus Selection**: - View a list of available buses. - Option to select a seat (if possible).
-
Payment System (if applicable).
-
Ticket Download:
- Generate and download a ticket copy for future reference.
-
Additional Suggestion:
- Display nearby hotels at the destination area.
Easily explore and book professional tour guides:
- Browse a list of available tour guides with ratings and experience.
- Filter guides based on preferred location, language, and availability.
- View detailed guide profiles and book directly with customized timing.
Capture your moments with skilled photographers:
- Discover photographers by experience, rating, and availability. - Access social media links and sample portfolios. - Instantly calculate price based on event duration and book with ease.
Ensure secure and seamless transactions for all bookings:
- Integrated SSLCommerz for reliable payment processing.
- Supports multiple local payment methods (Nagad, Bkash, Visa, Mastercard).
- Ensures encrypted and safe checkout for users.
- Payment status and history tracked in user profile.
- Admin dashboard shows confirmed transactions and payment logs.
Secure access and personalized experience for every user:
- User-friendly registration with email and password authentication.
- Secure login using industry-standard hashing and validation.
- Role-based redirection for Admin and General Users.
- Option to reset forgotten password and verify via email.
Manage your bookings and preferences with a personalized experience:
- Update personal details including contact info and profile picture.
- View booking history across guides, photographers, hotels, and transports.
- Track current bookings and cancel or modify as needed.
Complete control and monitoring of the platform:
- Manage users, guides, photographers, agencies, hotels, and transport services.
- Approve or decline service provider applications.
- Monitor bookings, reviews, and payments in real time.
- View detailed analytics and system reports.
Our project leverages modern technologies to ensure performance, scalability, and security.
Below is a detailed overview:
- Latest & Reliable: We chose the latest .NET and Azure stack to ensure maximum security and support.
- Scalable: Azure, SQL Server, and SignalR allow handling many users and real-time data efficiently.
- Maintainable: AutoMapper, Entity Framework, and Autofac keep the system modular and maintainable.
- Security: Identity Framework, SSLCommerz, and structured logging with Serilog ensure secure user and transaction handling.
- Professional UI/UX: AdminLTE and DataTables provide a seamless, professional user experience.
- Testing-First Mindset: NUnit and Moq ensure high code quality and minimum production bugs.
Our project is structured with a strong focus on scalability, maintainability, and best practices. Below are the key architecture and design patterns we have implemented:
| Concept/Pattern | Description |
|---|---|
| Clean Architecture | We structured the solution based on Clean Architecture principles to keep business logic independent from frameworks and external technologies. It improves maintainability, testability, and scalability. |
| Repository Pattern | Applied to abstract data access logic and provide a flexible architecture that isolates database operations from the business layer. |
| Unit of Work | Ensures that multiple repository operations are coordinated and committed together, providing better transaction management and reducing redundant database calls. |
| SOLID Principles | The entire project strictly follows SOLID principles (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion) to create robust, loosely-coupled, and easily extendable code. |
| Factory Pattern | Used for creating instances where object creation is complex or requires control, promoting loose coupling and better management of object lifecycle. |
| GitFlow | A Git branching strategy that defines strict roles for branches and organizes releases, hotfixes, and feature development, improving collaboration and deployment processes. |
β
Result:
Using these design patterns ensures that our application is highly maintainable, scalable, testable, and future-proof for upcoming features and changes.
Hereβs the directory structure of the Dynamic-Dev project:
EasyTravel
β
βββ EasyTravel.Web/ # Blazor frontend project
β βββ wwwroot/ # Static files (CSS, JS, images, etc.)
β β βββ css/
β β βββ js/
β β βββ images/
β β βββ assets/
β βββ Shared/ # Shared components
β βββ Areas/ # Admin and other areas
β β βββ Admin/
β β β βββ Controllers/
β β β βββ Views/
β β β βββ Mappings/
β βββ Views/ # Razor views
β β βββ Home/
β β βββ Shared/
β βββ Data/ # Application data
β βββ EasyTravel.Web.csproj # Project file
β
βββ EasyTravel.Application/ # Application layer
β βββ Services/ # Business logic services
β β βββ Admin/
β β βββ Interfaces/
β βββ Factories/ # Factory classes
β βββ EasyTravel.Application.csproj # Project file
β
βββ EasyTravel.Domain/ # Domain layer
β βββ Entities/ # Domain entities
β βββ Services/ # Domain services
β βββ Repositories/ # Repository interfaces
β βββ EasyTravel.Domain.csproj # Project file
β
βββ EasyTravel.Infrastructure/ # Infrastructure layer
β βββ Repositories/ # Repository implementations
β βββ Data/ # Database-related files
β β βββ Migrations/
β βββ EasyTravel.Infrastructure.csproj # Project file
β
βββ EasyTravel.Test/ # Unit and integration tests
β βββ ApplicationTests/ # Tests for the application layer
β β βββ ServiceTests/
β βββ DomainTests/ # Tests for the domain layer
β βββ InfrastructureTests/ # Tests for the infrastructure layer
β βββ EasyTravel.Test.csproj # Project file
β
βββ .github/ # GitHub Actions workflows
β βββ workflows/
β β βββ main_easytravelbd.yml # CI/CD workflow for deployment
β β βββ sonarcloud.yml # Workflow for SonarCloud analysis
β
βββ EasyTravel.sln # Solution file
-
πΊοΈ Real-time guide/vehicle tracking using GPS and Maps API
Enable users to track tour guides or hired vehicles in real-time using Google Maps or OpenStreetMap integration. -
π§Ύ Integration with hotel chains for real-time availability
Partner with hotel APIs or chains to fetch live room availability, offers, and pricing for seamless booking experiences. -
π€ AI-based smart suggestions for complete travel packages
Use machine learning to recommend optimized travel plans based on user's interests, search history, location, and budget. -
π± Cross-platform mobile app using .NET MAUI or React Native
Launch fully functional mobile apps supporting both Android and iOS for broader user accessibility and convenience.
| Resource | Link |
|---|---|
| π Live Site | Visit Website |
| π GitHub | GitHub Repo |
| π³ Docker Hub | Docker Image |
Easy Travel BD aims to revolutionize the travel experience in Bangladesh by offering a one-stop platform for all travel needs. Whether you're a solo traveler, a family, or a tour group, our application is designed to make your journey smooth, secure, and memorable.
Follow the steps below to clone, set up, and run the project locally:
git clone https://github.com/Learnathon-By-Geeky-Solutions/dynamic-dev
cd dynamic-dev/projet/easy-travel-bd
Change Connection string
"ConnectionStrings": {
"DefaultConnection": "Server=YOUR_SERVER;Database=YOUR_DB Trusted_Connection=True;MultipleActiveResultSets=true"
}


















