Technical assignment for the first stage / MVP
Project: Desktop application in Python for automating the publication of ads on Bazoš.sk
Technologies: Python, Playwright, PySide/PyQt, SQLite/PostgreSQL, Excel import/export
Cost of the first stage: 30,000 UAH
Deadline: 10–14 working days after providing test accounts, proxies, and product examples.
---
### 1. Goal of the first stage
Develop a minimally functional desktop version of the application for Windows that will allow:
— importing products from Excel;
— working with multiple Bazoš accounts;
— linking a separate proxy to each account;
— using a separate Playwright profile for each account;
— logging into the account Bazoš.sk;
— publishing ads on Bazoš.sk in one category — "laptops";
— uploading photos from local folders;
— saving the link to the published ad;
— displaying basic statuses and errors in the interface.
The first MVP is needed to check the complete basic cycle:
Excel → product → account/proxy/profile → publication on Bazoš.sk → photo → link → status.
---
### 2. What is included in the first MVP
#### 2.1 Desktop application for Windows
Development of a simple desktop application with GUI:
— launching the application on Windows;
— simple interface without complex analytics;
— basic sections: products, accounts, queue/process, errors/logs;
— start/stop buttons for the basic process;
— displaying the current processing status.
---
#### 2.2 Excel import
Implementation of an Excel template for products.
Approximate fields:
— product name;
— description;
— price;
— city/region;
— phone/contact;
— category;
— path to the folder with photos;
— account for publication;
— status;
— link to the published ad;
— comment/error.
The developer provides a basic Excel template. After approval, it is used for importing products into the application.
---
#### 2.3 Working with photos
— a separate local folder with photos is used for each product;
— the application takes photos from the specified path;
— photos are uploaded when creating an ad on Bazoš.sk.
---
#### 2.4 Accounts, proxies, and profiles
In the first MVP, the following is implemented:
— adding multiple Bazoš accounts;
— storing account data in a local database;
— linking proxies to accounts;
— scheme: 1 account = 1 proxy = 1 separate Playwright profile;
— a separate browser session for each account.
---
#### 2.5 Publishing ads on Bazoš.sk
Within the first MVP, publication is implemented:
— only on Bazoš.sk;
— only in one category — "laptops";
— with filling in the main fields of the ad;
— with photo uploads;
— with saving the link to the published ad;
— with updating the product status in the application.
---
#### 2.6 Statuses and logging
The MVP will have basic statuses:
— pending;
— in_progress;
— published;
— error.
There will also be basic logging:
— successful publication;
— login error;
— proxy error;
— publication error;
— photo upload error;
— situation requiring manual action.
---
#### 2.7 Manual pause during SMS confirmation
If Bazoš requests re-SMS verification of the account:
— the application does not attempt to bypass the confirmation;
— the process for this account is paused;
— the user manually completes the confirmation;
— after that, work can be resumed.
---
#### 2.8 Architecture for Bazoš.sk and Bazoš.cz
In the first MVP, full publication is done only for Bazoš.sk, but the architecture is laid out for further expansion to Bazoš.cz.
That is:
— the main logic of the application is separated from the logic of the specific site;
— selectors, URLs, categories, and fields are moved to a separate layer;
— Bazoš.cz can later be added as a separate module without rewriting the core of the application.
---
### 3. What is not included in the first MVP
The first stage does not include:
— full support for Bazoš.cz;
— publication in multiple categories;
— automatic republishing/elevating ads;
— setting the rotation interval of 1–7 days;
— sold/delete logic;
— control of the limit of 50 active ads per account.
Additionally, we fix for the first stage:
— saving browser profile/session: the application must save Playwright profiles between Windows and application restarts, so that login does not need to be performed again each time if the session on Bazoš remains active;
— saving links: links to published ads are saved locally in the database and remain accessible after restarting the application;
— queue does not lose products on error: if publication ends with an error, the product receives the status error, the error is logged, but the product itself is not deleted and can be restarted;
— manual account selection: in Excel/interface, there is a possibility to specify the account from which to publish a specific product;
— stopping/resuming the queue: the basic ability to stop and resume processing without losing the current state is included in the MVP;
— portability of the project: the application, database, profiles, and configs should not be tightly bound to my PC, server, or Windows user. The project should be portable with the correct transfer of the application/database/profiles folder and environment setup;
— transfer of materials: after the stage is completed, .exe, source code, project repository/archive, Excel template, README, and instructions for launching/building are transferred;
— bug fixing period: after the MVP is delivered, a short period is provided for fixing bugs and shortcomings that relate specifically to the agreed technical assignment of the first stage. Not new features, but specifically fixes within the MVP.
The result of the first stage: a working Windows application with GUI, Excel import, multiple accounts/proxies, separate Playwright profiles, publication on Bazoš.sk in the "laptops" category, photo uploads, link saving, basic statuses, logs, manual pause during SMS confirmation, and architecture for further expansion to Bazoš.cz.
Supplement to the technical specifications of the first stage / MVP
What is required from the client to start work:
— 2–3 test accounts on Bazoš;
— proxies for these accounts;
— several test products in the "laptops" category;
— local folders with photos for each product;
— an example of manual ad publication;
— a list of mandatory fields for Excel;
— information about the version of Windows on which the application will be used.
Acceptance criteria for the first MVP:
— the application runs on Windows;
— products are correctly imported from Excel;
— accounts and proxies are used in the application;
— separate Playwright profiles are created and saved;
— login to the Bazoš.sk account is performed;
— a test ad is published in the "laptops" category;
— photos are uploaded from the local folder;
— the link to the published ad is saved;
— the product status is updated after publication;
— a publication error does not remove the product from the processing queue.
Additionally:
— a local SQLite database is used for the first MVP;
— the source code of the project and the Git repository are handed over to the client after the completion of the stage;
— after the MVP is delivered, 5 working days are provided for fixing bugs and issues related to the agreed functionality of the first stage.
Log in
or
register,
to view the original