ServiceLink is a full-stack marketplace platform built with Django, designed to connect service providers with customers. The application allows users to create professional listings, upload images, search for services, and manage their personal portfolio with real-time value calculations.
The project aims to provide a secure environment for local commerce:
- User Empowerment: Allow individuals to monetize their skills easily.
- Reliability: Use a robust backend to ensure data persistence and security.
- Clean UX: Provide a responsive interface that works on all devices.
- As a Visitor: I want to browse services and use the search bar to find specific offerings.
- As a Registered User: I want to post new services with descriptions, prices, and images.
- As an Owner: I want to edit or delete my listings to keep my information accurate.
- As a Professional: I want to see the total financial value of my active ads on my dashboard.
- Authentication: Secure Login/Register/Logout flow using Django Allauth.
- CRUD Management: Full control over service listings (Create, Read, Update, Delete).
- Image Processing: Dynamic image uploading and resizing using the Pillow library.
- Portfolio Dashboard: A private "My Ads" page for every user.
- Search Engine: Keyword-based filtering for the main service list.
I have performed extensive manual testing throughout the development lifecycle. Each test case below is linked to a visual proof located in the /documentation folder.
| Test ID | Feature | Expected Result | Visual Proof (Click to view) |
|---|---|---|---|
| t1-t2 | Admin Panel | Successfully managed services via admin backend. | View t1 / t2 |
| t3-t4 | UI Layout | Initial list converted to Bootstrap cards. | View t3 / t4 |
| t5-t6 | Navbar | Navigation links change based on session. | View t5 / t6 |
| t7 | Allauth | Functional Sign-Up form with validation. | View t7 |
| t8-t9 | Forms | Service data is correctly captured and saved. | View t8 / t9 |
| t10-t11 | Database | Multiple services display correctly with details. | View t10 / t11 |
| t12-t13 | Feedback | Success alerts appear after login/update. | View t12 / t13 |
| t14-t15 | Security | Confirm prompt appears before deletion. | View t14 / t15 |
| t16 | Search | Search bar returns results for keywords. | View t16 |
| t17-t18 | Logic | Dashboard correctly sums portfolio prices. | View t17 / t18 |
| t19-t21 | Media | Images render correctly in cards and details. | View t19 / t20 |
| t22 | Polish | Final responsive detail view with action buttons. | View t22 |
- Languages: Python, HTML5, CSS3, JavaScript.
- Framework: Django 5.x.
- Libraries: Pillow, Django-Allauth.
- Database: SQLite3.
- Code Institute: For the project framework and support.
- Code Institute: For the pedagogical framework.
- Django Documentation: For technical guidance.
-
Link-ul GitHub: https://github.com/Sori678/online-service-marketplace
-
Link-ul Live Heroku: https://online-service-sorin-c2b78d35ddee.herokuapp.com/