Frontend Developer / Site Cloner (custom + Railway)

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Part Time

SALARY

350

HOURS PER WEEK

10

DATE UPDATED

Sep 13, 2026

JOB OVERVIEW

About the role

We run a portfolio of ecommerce brands. No hosted store platforms, no WordPress, no page builders — we build our own custom sites, from code, and we deploy them ourselves on Railway. We launch new ones constantly.

Your job: take a reference site we give you and rebuild it as a custom, self-hosted site — same layout, same sections, same behavior, same mobile rendering — under the new brand, deployed live on Railway, then wired to our external checkout and tracking.

You are not designing anything. You reproduce a layout exactly, in clean code, fast, and ship it live. Copy, images, product data and brand kit all come from us.

If you can take a reference site in the morning and hand back a live, mobile-perfect, tracking-verified URL by the end of the day, you will never run out of work with us.

The deadline: this is the core of the job

Every site ships live within 24 to 48 hours of kickoff. Not "usually". Every time.

24h for a site built from our existing base template (most of the work)
48h for a site that needs new sections or something we haven't built before

Kickoff means the moment we hand you the complete package: reference site, brand kit, copy, images, product data, checkout parameters, tracking IDs. The clock starts there. If something is missing from that package, you tell us within the first hour — not at hour 20.

How this is possible: you are not designing, not writing copy, not sourcing images. You reproduce a layout from a reference, on a codebase we already built, with assets we already prepared. The whole system is built for speed, and your job is to keep it that way.

What we expect when a deadline is at risk: a message from you as soon as you see it coming, with what's blocking and what you need. A late site we knew about 12 hours in advance is a problem we can manage. A late site we discover at the deadline is not.

If you need a week to build a landing page, this role is not for you and you'll be miserable here. Please don't apply.

What you will do

Build

Reproduce a reference site's front-end in clean custom code: structure, sections, spacing, typography, animations, responsive behavior
Stack: HTML + Tailwind CSS + JavaScript, or Next.js / Astro / React depending on the project
No page builders, no WordPress, no drag-and-drop. You write the code.
Build it templated and reusable — we relaunch the same base under new brands, so brand name, colors, fonts, logo, domain, product data and checkout URLs live in one config file or env vars, never hardcoded across 40 files

Deploy

Railway: repo setup, Dockerfile or build config, environment variables, custom domain, SSL, redirects
Cloudflare DNS: records, SSL mode, caching, page rules
Fix your own deployment problems — build failures, SSL errors, env issues — without us holding your hand

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0207
Total Execution Time  0.0225
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,490,240 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Frontend-Developer-Site-Cloner-custom-Railway-1729426
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0121 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0009   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1729426
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 629949
 LIMIT 1 
0.0005   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1729426
AND `misc`.`idIS NULL 
0.0006   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-09-21',ej.date_added) duration_daysDATEDIFF('2026-09-21',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-09-21',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1729426' 
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1729426 
0.0017   UPDATE employer_jobs SET hit_counts '***Sep-13-2026=1063***Sep-14-2026=274***Sep-15-2026=134***Sep-16-2026=107***Sep-17-2026=119***Sep-18-2026=80***Sep-19-2026=43***Sep-21-2026=2' WHERE job_id'1729426'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Sep-2026=1821' WHERE job_id'1729426'  
0.0006   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1729426' AND status LIKE 'sent%' ORDER BY id DESC  
0.0005   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1729426 
0.0039   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '629949'
AND `date_added` >= '2022-06-08' 
0.0007   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)