Full-stack rozwój
Potrzebny jest programista full-stack, który jest dostępny do pracy i nie chce od razu wzbogacić się na tym projekcie.
To jest moja strona testowa:
readyhome.ge
prototyp, który chcę stworzyć (nie mam na myśli designu). W stopce w języku rosyjskim, wypełnij ankietę i przejdź do konfiguratora.
Oto opis strony:
Użytkownik:
Wypełnia parametry obiektu.
Wybiera styl wnętrza.
Konfiguruje materiały i elementy wykończenia w pomieszczeniach.
Otrzymuje wstępną kosztorys remontu i systemów inżynieryjnych.
Platforma powinna wizualnie przypominać nowoczesny konfigurator/konstruktor z logiką sklepu internetowego.
1. Krokowy konfigurator
Konfigurator składa się z 5 etapów:
Parametry obiektu
Wybór stylu
Konfiguracja wnętrza
Systemy inżynieryjne
Wynik i końcowy koszt
Na wszystkich etapach wyświetlane jest:
aktualny koszt remontu
podstawowy koszt
koszt materiałów
inżynieria
dodatkowe opcje
łączna kwota
2. Etap „Wybór stylu”
Użytkownik wybiera gotowy styl wnętrza.
Przykłady:
Skandynawski
Loft
Neoklasyczny
Dla każdego stylu:
zdjęcie
nazwa
krótkie opisanie
Style powinny być zarządzane z panelu administracyjnego.
3. Etap „Konfiguracja wnętrza”
Główny ekran platformy.
Logika
Użytkownik wybiera pomieszczenie:
salon
sypialnia
kuchnia
łazienka
studio
Po wyborze pomieszczenia otwiera się konfigurator materiałów i elementów.
4. Witryna materiałów
Po prawej stronie wyświetlana jest witryna towarów i materiałów.
Dla każdego towaru:
zdjęcie
nazwa
marka
producent
wielkość
kolor
cena
Po kliknięciu towar powiększa się w popupie.
Towary są wyświetlane według kategorii:
ściany
podłoga
sufit
oświetlenie
drzwi
listwy przypodłogowe
sanitarne
grzejniki
włączniki itd.
Dla każdego typu pomieszczenia swój zestaw kategorii.
5. Logika wyboru
Użytkownik może:
wybrać materiał
zmienić materiał
wyłączyć poszczególne elementy
dodać dodatkowe opcje
Przy zmianie materiałów koszt przelicza się automatycznie.
6. Systemy inżynieryjne
Osobny etap z:
podstawowym pakietem inżynieryjnym
dodatkowymi opcjami inżynieryjnymi
Przykłady:
ogrzewanie podłogowe
klimatyzacja
monitoring wideo
ochrona przed przeciekami
inteligentny dom
Część opcji wchodzi w podstawowy koszt.
7. Ekran końcowy
Wyświetlane jest:
całkowity koszt
rozbicie kosztu
wybrany styl
parametry obiektu
lista materiałów
systemy inżynieryjne
dodatkowe opcje
Również:
przycisk zostawienia zgłoszenia
przycisk zapisz obliczenia
możliwość wysłania do menedżera
8. Panel administracyjny
Potrzebna jest możliwość zarządzania:
stylami
towarami
kategoriami
cenami
współczynnikami kalkulacji
pakietami inżynieryjnymi
dodatkowymi opcjami
Wszystkie podstawowe wartości powinny być edytowane bez udziału programisty.
Dla takiego konfiguratora baza danych powinna być budowana nie jak zwykła strona, ale jak struktura e-commerce + kalkulator parametryczny.
W przeciwnym razie przy dodawaniu materiałów, formuł i stylów system szybko się zepsuje.
Główną zasadą jest:
podzielić system na 5 niezależnych modułów
1. projekty użytkowników
2. katalog materiałów
3. konfiguracja wnętrza
4. pakiety inżynieryjne
5. kalkulacja
---
1. Ogólna architektura bazy
Poprawny schemat powinien wyglądać tak:
USERS
PROJECTS
PROJECT_ROOMS
PROJECT_BATHROOMS
STYLES
STYLE_ROOMS
STYLE_DEFAULT_MATERIALS
PRODUCTS
PRODUCT_CATEGORIES
PRODUCT_ATTRIBUTES
PROJECT_SELECTED_PRODUCTS
ENGINEERING_PACKAGES
ENGINEERING_OPTIONS
PROJECT_ENGINEERING
PRICE_RULES
PRICE_COEFFICIENTS
To jest architektura modułowa.
---
2. Tabela USERS
Użytkownicy systemu.
users
-----
id
nazwa
telefon
created_at
Użytkownik może mieć kilka projektów.
---
3. Tabela PROJECTS
Podstawowa encja.
projects
--------
id
user_id
property_type (mieszkanie / dom)
frame_type (biały / czarny)
total_area
balcony_area
balcony_tiles
gas_available
kitchen_type
rooms_count
bathrooms_count
base_price_S
status (szkic / obliczony / zamówiony)
created_at
To jest rdzeń projektu.
---
4. Tabela PROJECT_ROOMS
Pokoje są tworzone dynamicznie.
project_rooms
-------------
id
project_id
room_type
(salon
sypialnia
studio
kuchnia
łazienka
balkon)
area
Przykład:
Salon — 44 m²
Sypialnia — 16 m²
Kuchnia — 24 m²
---
5. Tabela STYLES
Trzy podstawowe style.
styles
------
id
nazwa
opis
preview_image
Przykład:
1 Skandynawski
2 Loft
3 Neoklasyczny
---
6. Tabela STYLE_DEFAULT_MATERIALS
Materiały domyślne dla stylu.
style_default_materials
-----------------------
id
style_id
room_type
category_id
product_id
Przykład:
Skandynawski
pokój: sypialnia
podłoga: laminat dębowy
To pozwala automatycznie wypełniać konfigurator.
---
7. Tabela PRODUCT_CATEGORIES
Kategorie materiałów.
product_categories
------------------
id
nazwa
room_scope
Przykład:
Ściany
Ściana akcentowa
Podłoga
Drzwi
Oświetlenie
Włączniki
Grzejniki
Listwy przypodłogowe
Kornisze
---
8. Tabela PRODUCTS
Wszystkie towary z hipermarketu.
products
--------
id
category_id
nazwa
marka
producent
cena
jednostka
(m2
sztuka)
zdjęcie
opis
Przykład:
Laminat dębowy
$18
m2
---
9. Tabela PRODUCT_ATTRIBUTES
Charakterystyki towaru.
product_attributes
------------------
id
product_id
attribute_name
attribute_value
Przykład:
kolor
wielkość
grubość
---
10. Tabela PROJECT_SELECTED_PRODUCTS
Produkty wybrane przez użytkownika.
project_selected_products
-------------------------
id
project_id
room_id
category_id
product_id
ilość
calculated_price
Na przykład:
projekt 12
pokój sypialnia
podłoga laminat
cena = 620$
---
11. Tabela ENGINEERING_PACKAGES
Podstawowa inżynieria.
engineering_packages
--------------------
id
nazwa
included
cena
Przykład:
Okablowanie elektryczne
included
Ochrona przed przeciekami
included
---
12. Tabela ENGINEERING_OPTIONS
Dodatkowe opcje.
engineering_options
-------------------
id
nazwa
cena
jednostka
(sztuka / projekt)
Przykład:
instalacja klimatyzacji
$220
---
13. Tabela PROJECT_ENGINEERING
Co wybrał użytkownik.
project_engineering
-------------------
id
project_id
engineering_option_id
ilość
cena
---
14. Tabela PRICE_RULES
Formuły kalkulacji.
price_rules
-----------
id
rule_name
room_type
category_id
formula
Przykład:
floor_laminate
(area * (price + 2))
---
15. Tabela PRICE_COEFFICIENTS
Stałe P.
price_coefficients
------------------
id
nazwa
wartość
Przykład:
balkon_tile = 75
laminate_underlay = 2
tile_glue = 10
tile_glue_heated = 21
---
16. Tabela BASE_PRICE_S
Podstawowe ceny.
base_prices
-----------
id
area_min
area_max
price_S
Przykład:
20-30 = S1
30-40 = S2
40-55 = S3
---
17. Jak działa kalkulator
Algorytm:
1 użytkownik wprowadza powierzchnię
2 system wybiera S
3 dodaje współczynniki P
4 dodaje wybrane materiały
5 dodaje opcje inżynieryjne
---
18. Dlaczego ta architektura jest poprawna
Rozwiązuje trzy problemy.
1. łatwo dodawać materiały
Bez zmiany kodu.
---
2. łatwo zmieniać formuły
Przez panel administracyjny.
---
3. łatwo dodawać nowe style
---
19. Jak wygląda powiązanie tabel
users
↓
projects
↓
rooms
↓
selected_products
↓
products
↓
categories
I osobno
engineering
---
20. Najważniejsza rekomendacja
Nie przechowywać formuł w kodzie.
Przechowywać w tabeli:
price_rules
W przeciwnym razie po roku system stanie się niezarządzalny.
Rekomendowany stos technologiczny projektu (można akceptowalne alternatywy):
Frontend:
React
Next.js
TypeScript
Tailwind CSS
---------
Backend:
NestJS (Node.js)
TypeScript
---------
Baza danych:
PostgreSQL
----------
Przechowywanie obrazów materiałów:
Amazon S3 lub Cloudflare R2
----------
Panel administracyjny:
React + gotowa wewnętrzna CMS lub
Strapi (jeśli potrzebny szybki start)
-----------
Autoryzacja
JWT
------------
Hosting:
VPS (Hetzner) lub
DigitalOcean
-
full-stack разработчик, который свободен для дел и не захочет сразу разбогатеть на этом проекте - 👍👍👍
-
Огооо, лютоо!
-
Какой срок реализации проекта?
-
Aktualne zlecenia dla freelancerów w kategorii Javascript & Typescript
Wykonanie szablonu komponentu React/Tailwind do druku formularza A4Potrzebna jest poprawa projektu UI/UX oraz geometrii jednego komponentu React (szablon karty klinicznej do druku w PDF) Cała funkcjonalność, tablice danych i logika są już napisane i działają — potrzebne są tylko kosmetyczne zmiany, poprawne odstępy i pozycjonowanie elementów… Układ HTML i CSS, Javascript & Typescript ∙ 6 godzin 2 minuty temu ∙ 43 oferty |
Szukam doświadczonego programisty Full Stack do stworzenia usługi SaaS dla sklepów internetowych.Pomysł usługi: Klient przesyła link do swojego pliku produktowego (XML lub CSV). Usługa automatycznie pobiera produkty, pobiera ich zdjęcia i tworzy nowe reklamy na podstawie gotowych szablonów: cena, zniżka, logo, banery promocyjne itp. Usługa powinna również zawierać prosty… Javascript & Typescript, Programowanie stron internetowych ∙ 1 dzień 3 godziny temu ∙ 74 oferty |
Rozwój sceny WebGL/Three.js z generowaniem i eksportem 3D (snapshot) z animowanego shaderaOpis obiektu: Projekt przedstawia designerski stół, wykonany w formie realistycznego, głębokiego wiru (centralna wirówka, która płynnie przechodzi z szerokiego poziomego blatu w cienką, elegancką nogę). Istota zadania: Wymagany jest programista WebGL / Creative Coding do… Javascript & Typescript, Programowanie stron internetowych ∙ 1 dzień 23 godziny temu ∙ 29 ofert |
Wsparcie i rozwój strony internetowej firmy sprzątającej
75 PLN
Szukam programisty / webmastera do długoterminowego wsparcia i rozwoju strony internetowej firmy sprzątającej. Strona: https://donely.ca O projekcie DoneLy Home Services — firma świadcząca usługi sprzątania w Kanadzie, która aktywnie się rozwija i rozszerza zasięg działalności.… Javascript & Typescript, Programowanie stron internetowych ∙ 4 dni 1 godzina temu ∙ 63 oferty |
Opracowanie strony internetowej według specyfikacji na FramerTrzeba zrobić stronę według tych parametrów, które są w specyfikacji https://docs.google.com/document/d/1ODO2C9Krb4AaMiJz9wfbNzWlAyA2FwCCHL8r0biajUY/edit?usp=sharing Podajcie rzeczywistą stawkę na podstawie tego projektu Układ HTML i CSS, Javascript & Typescript ∙ 5 dni 2 godziny temu ∙ 28 ofert |