1. Introduction - Magneto-Freelance/Magneto-Freelance-Front GitHub Wiki
1.Introduction
1.1 Purpose
Our purpose with this project is to create a website that improves the job search process for freelancers and helps employers find freelancers with the skills they need.
1.2 Scope
a) Product Name: Magneto Freelance.
b) The product will include login and registration features for both freelancers and employers. Freelancers will be able to showcase their portfolios and provide links to their social networks, enabling employers to contact them and display job vacancies.
c) Our objective is to develop a robust Magneto extension, ensuring that freelancers and employers feel comfortable and secure while using our product.
d) High-Level Architecture Link:https://www.canva.com/design/DAF83g7Ly9A/7qfNuBf5ecgU8vZQ1ccWGw/edit?utm_content=DAF83g7Ly9A&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton
1.3 Product Overview
1.3.1 Product perspective
a) The system will have five interfaces: the main page (the job offers page), the log-in page, the registration form, the chat interface, and the page displaying the freelancer's portfolio.
b) Users will have access to all interfaces and will interact with forms and the chat feature.
c) The hardware employed is a cloud server.
d) The front-end will be developed using NEXTJS, and the backend will be implemented with FASTAPI-PYTHON.
e) Communication will involve an integrated chat system for both employers and freelancers.
f) The database utilized is MongoDB.
g) CRUD operations will be performed with MongoDB.
h) The application will be accessible on both computers and mobile devices.
1.3.2 Product functions
The product's function is to showcase freelancers' portfolios, display job vacancies for employers, and facilitate communication through an integrated chat feature on the website between freelancers and employers.
1.3.3 User characteristics
Our objective users are individuals working as freelancers seeking job opportunities, as well as employers searching for freelance professionals.
1.3.4 Limitations
a) Our regulatory policies will require freelancers to publish a portfolio showcasing genuinely completed work. In case of fraud, their account will be banned.
b) The system must respond to and load each page in at least 2 seconds.
c) The system should integrate with LinkedIn and GitHub.
d) The system will retrieve information from the backend and load the frontend in parallel.
e) A weekly review of the progress made with the product owner will be conducted.
f) Users will be able to type and click within the application, and the application will be responsive.
g) None
h) The system must be scalable, secure, have good usability, and be fast.
i) Highly critical.
j) Two-factor authentication.
k) Users must have education or qualifications in the field they are seeking employment.
1.4 Definitions
Frontend:
Backend:
Scalable
Usability
Responsive
Two-factor authentication
Reliability