A C# MVC + MySQL freelance collaboration system that connects clients and freelancers from project posting to final review. Designed with clean separation of logic, modular classes, and practical workflow automation.
Users choose a role via image buttons. The selected role is stored in MySQL and passed to the registration page.
Clients can create projects with:
- Title
- Description
- Budget
- Deadline
Freelancers browse available projects and submit bids linked to their user ID.
Clients review bids and accept one freelancer. Status changes to Accepted.
When a bid is accepted, the project's deadline becomes fixed. When the date is reached, the system auto-updates status to Completed.
Freelancers see:
- Pending bids
- Accepted projects
- In-progress projects
- Completed projects
Accepted projects include a Mark as Completed action.
Clients see completed projects in a card-style UI (FlowLayoutPanel):
- ⭐ Star rating
- ✏️ Comment
- ✔️ Submit review
Frontend: Windows Forms (C#) Backend: C# .NET using MVC structure Database: MySQL
Structure
role.cs— pure modelclass/— business logic (project, bids, roles, deadlines)review_projects.cs— review modulebid_projects.cs— freelancer project moduleloginattempt_control.cs— login attempt handling
- Clone the repository.
- Import the SQL schema into MySQL.
- Configure the connection string in your DB handler or
App.config. - Run the project from Visual Studio.
MIT License.