JDA international property — project brief

Where the project stands, what we need from you, and what services we'll be using.

Where we are

A quick snapshot of progress. The architecture is locked, the database is designed, and the search system is mapped out across four parts. We're ready to start coding once a few inputs from JDA are in.

This is a short-term snapshot — what's happening right now and what's queued up next. New phases will be added below as the project moves forward, so this view will keep updating throughout the build.
  1. Done

    10 items

    Foundation work that's locked in and won't change without a good reason.

    • Tech stack and architecture chosen
    • Database structure designed
    • Search system designed (4 parts)
    • Location data plan for 13 countries
    • Image storage and delivery plan
    • Email sending plan
    • Admin login and invitation flow
    • Background job system designed
    • Project independence strategy
    • Backup strategy (daily + weekly)
  2. In progress

    2 items

    Active work, partly waiting on answers from the Questions tab.

    • Build timeline and milestones
    • Wireframes for the main pages
  3. Coming next

    4 items

    Queued up to start once the inputs in the Questions tab are confirmed.

    • First wireframe round (homepage, search, property detail)
    • Account setup once project email is confirmed
    • Code repository setup
    • Initial database setup and location data import

Open questions

Things we need answers on to start the build. Each one has a recommendation we can run with if it works for you.

3 Critical 2 Assets
Five questions. Critical means it blocks day-one work. Asset means we need files or content from the client. Most have a recommendation — a yes is enough to move forward. Anything else we need from you will be asked closer to when we actually need it, so this list stays short.

1. Geographic scope of Bali, Florida, Dubai Critical

Is "Bali" just Bali province or all of Indonesia? Florida just the state or all of USA? Dubai just the emirate or all of UAE?

Recommendation. Treat them as just Bali, just Florida, just Dubai. That matches how buyers actually search and matches the major property portals. Easier to expand later than to narrow down.

2. Currency display Critical

Show prices in USD only, or let users toggle between USD and the local currency (THB, EUR, AED, etc.)? If toggle, what's the default on first visit?

Recommendation. USD by default with a toggle to local currency. Foreign buyers think in USD but local context still matters. Two prices stored per property (local + USD), nothing more complex than that.

3. Project email Critical

We need a single email address to register services under (DigitalOcean, Cloudflare, GitHub, etc.). Something like admin@jda.com is ideal — survives staff changes, no single-person dependency. Do you have one ready, or can you set one up?

Recommendation. Send the email and we'll use it to create only the services that need to be separate from day one — anything that would be painful to migrate later (hosting, DNS, code repository, sending email domain). For lower-risk services (error tracking, monitoring, AI), we'll reuse Nestopa's existing accounts during the build to save setup time, and swap them to JDA at handover. Full breakdown is in the Services tab.

4. Site tone reference Asset

Any property sites whose feel or tone should be matched (or avoided)? Just send links — we'll use them as reference, not copy.

5. Brand assets Asset

For the wireframes and final design, we need the brand to be locked in. Specifically:

  • Logo — vector format (SVG or AI file). At least one horizontal version, one stacked, and a square or icon-only version for favicons and social cards. Light and dark variants if available.
  • Brand colors — hex codes for primary, secondary, accent, and any neutral grays. Two or three colors is enough.
  • Typography — heading font and body font names. Google Fonts or similar is fine. If a paid font is required, send the license file.
  • Tagline or hero copy — one-sentence positioning if there's a preferred wording. Otherwise we'll draft something.
  • Photography style — any sample images or mood board showing the kind of property photos you want featured (luxury minimalist, warm lifestyle, dramatic architectural, etc.).
  • Existing brand guidelines — if any document exists (PDF, Figma, Notion), send it.

Recommendation. Send what exists, even if it's incomplete. Anything missing we'll fill in with neutral modern defaults for the wireframes, then swap in the real brand once it arrives.

Critical Blocks day-one work Asset Need files or content from client

Services we'll use

Every service the project depends on, grouped by whether it needs to be set up under JDA from day one or whether we'll temporarily use Nestopa's existing accounts during the build.

This arrangement matches the onboarding terms in the contract. Services that are critical to set up under JDA early (anything painful to migrate later) are handled on day one. Services the contract allows to be provided through Nestopa during the build (AI, error tracking) stay on Nestopa accounts until launch, then switch to JDA-owned accounts. For any new account set up under JDA, we'll use a free plan wherever one exists — there are no hidden costs beyond what's already in the contract.

Set up under JDA from day one

Day 1

These services accumulate state, history, or reputation that cannot easily be moved later. JDA creates each account, dev gets admin access during the build, dev access is removed at handover. All start on free plans where available.

Service What it does Plan and notes
DigitalOcean Hosts the website, database, and search engine on a private server in Singapore No free tier for hosting. Smallest viable size at the start, scales up only if traffic demands it.
Cloudflare DNS, security firewall, image storage, fast content delivery Free plan covers everything we need at launch. No upgrade unless traffic grows significantly.
Domain registrar Holds the JDA domain name and points it to the website Per the contract, the domain is JDA's responsibility to register and maintain. Cloudflare Registrar is recommended (at-cost pricing, no markup).
GitHub organization Stores the source code of the website Free plan. Private repositories and unlimited collaborators included at no cost.
Resend Delivers transactional emails (enquiry confirmations, system alerts) Free plan covers 3,000 emails/month, plenty for the build phase and early launch. Set up under JDA from the start because Nestopa doesn't use this service.
Mapbox Powers the interactive maps on the property search page and property details Free plan covers 50,000 map loads/month, enough for year one. Set up under JDA from the start because Nestopa doesn't use this service.

Provided through Nestopa during the build, switched to JDA after launch

Onboarding

Per the contract's onboarding terms, Nestopa provides these services through its own accounts during the build phase. After launch, JDA creates its own accounts and we swap a single API key per service — no migration, no downtime, no data loss.

Service What it does Why this works
OpenAI Powers the AI search bar and the AI property description generator The contract specifies AI services are provided through Nestopa accounts during onboarding, then transitioned to JDA after delivery. Only an API key connects the website to OpenAI — swap takes seconds.
Sentry Tracks website errors so we can fix problems quickly Used through Nestopa's existing account during the build. Error history is not critical to migrate — creating a fresh JDA Sentry project at handover takes minutes.
This is not the full list. A few smaller services will be added during the build (uptime monitoring, an email sending domain, a few others). Each one will be flagged before we add it, with a short note on what it does and which side it sits on. Nothing will be set up under JDA's name without telling you first, and free plans will always be the default starting point.

Day 1 Set up under JDA from day one Onboarding Provided by Nestopa during build, switched at handover