<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: alberts su</title>
    <description>The latest articles on DEV Community by alberts su (@alberts_su_eb614ccad48f6d).</description>
    <link>https://dev.to/alberts_su_eb614ccad48f6d</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2300242%2F20c67306-0eb5-49a1-a648-2308f53f0fbd.png</url>
      <title>DEV Community: alberts su</title>
      <link>https://dev.to/alberts_su_eb614ccad48f6d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alberts_su_eb614ccad48f6d"/>
    <language>en</language>
    <item>
      <title>Github Challenge: AI-Powered Property Price Chatbot in Under 4Hrs</title>
      <dc:creator>alberts su</dc:creator>
      <pubDate>Tue, 14 Jan 2025 14:20:06 +0000</pubDate>
      <link>https://dev.to/alberts_su_eb614ccad48f6d/nsw-property-price-ai-assisted-property-analysis-5gle</link>
      <guid>https://dev.to/alberts_su_eb614ccad48f6d/nsw-property-price-ai-assisted-property-analysis-5gle</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github"&gt;GitHub Copilot Challenge &lt;/a&gt;: New Beginnings&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;A Vue web app that incorporates Github Model (ChatGPT-4o mini) to analyze and answer questions about NSW (New South Wales, Australia) property data&lt;/p&gt;

&lt;p&gt;Home ownership is a milestone in everyone's journey. Transitioning from a renter into a home owner represents a new beginning into the next stage in life!&lt;/p&gt;

&lt;p&gt;This project was created to address the pain in buying the first property. Most often, as a first home buyer, we have no knowledge of which suburb to buy or what is a good price for a property. With the help of AI, we can ask all the questions that we might have!&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyn3l59po1veh41e32k2n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyn3l59po1veh41e32k2n.png" alt="Image description" width="800" height="313"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://albertsundjaja.github.io/nsw_property_price/" rel="noopener noreferrer"&gt;https://albertsundjaja.github.io/nsw_property_price/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Repo
&lt;/h2&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.dev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/albertsundjaja" rel="noopener noreferrer"&gt;
        albertsundjaja
      &lt;/a&gt; / &lt;a href="https://github.com/albertsundjaja/nsw_property_price" rel="noopener noreferrer"&gt;
        nsw_property_price
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A simple webapp that can help analyze NSW property prices
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;NSW Property Price&lt;/h1&gt;

&lt;/div&gt;
&lt;p&gt;This simple web app is an AI tool to help analyze NSW property price based on data provided by &lt;a href="https://valuation.property.nsw.gov.au/" rel="nofollow noopener noreferrer"&gt;NSW Valuer General&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This project make use of OpenAI's GPT-4o Mini provided by &lt;a href="https://github.com/marketplace/models" rel="noopener noreferrer"&gt;Github Models&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Project Setup&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;if you are running locally, you will need to install all the node packages as below&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm install&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Compile and Hot-Reload for Development&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm run dev&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;a sample data is provided in raw_data folder, however to generate a new one you will need to run the below command&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm run init&lt;/pre&gt;

&lt;/div&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/albertsundjaja/nsw_property_price" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;h2&gt;
  
  
  Copilot Experience
&lt;/h2&gt;

&lt;p&gt;This project made extensive use of Copilot help with autocomplete, edits, prompts and chat.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Autocomplete makes writing codes faster and easier with the suggested code as I type&lt;/li&gt;
&lt;li&gt;Edit is pretty useful to create a scaffold for a function that I can modify to suit my specific needs&lt;/li&gt;
&lt;li&gt;Prompt was used to generate the download.py initial code and provide guidance on how to host my Vue JS app in github. The data cleaning / aggregation codes were mostly AI generated!&lt;/li&gt;
&lt;li&gt;Chat is very useful for debugging. By entering the error logs, Copilot was able to suggest what went wrong and how to fix them. I only have experience with Vue 2, but through chatting with Copilot, I was able to use Vue 3 and translate my old Vue coding knowledge to use the new Composition API provided by Vue 3. I was also able to integrate Vuetify into a vanilla Vite generated code without having to consult its documentation. Truly a time saver!&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  GitHub Models
&lt;/h2&gt;

&lt;p&gt;This project make use of OpenAI's GPT-4o Mini provided by &lt;a href="https://github.com/marketplace/models" rel="noopener noreferrer"&gt;Github Models&lt;/a&gt; to analyze the NSW property prices processed data&lt;/p&gt;

&lt;p&gt;However, model limitations of only able to take 8000 tokens input would make the response to be inaccurate as not all the data can be fed into the model for context. Only top 100 suburbs are given to the model because of reason above in each prompt request&lt;/p&gt;

&lt;p&gt;Data is downloaded from &lt;a href="https://valuation.property.nsw.gov.au/embed/propertySalesInformation" rel="noopener noreferrer"&gt;NSW Valuer General&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;I have never imagined that I can make a working project in under 4 hours. AI is truly a game-changer in increasing software developers' productivity.&lt;br&gt;
There is a lot to improve in this project, AI response to user's prompt will only be as accurate as the data fed into it as such it is important to ensure accurate and complete data is given to the model.&lt;/p&gt;

&lt;p&gt;The project should help every first home buyers to take a better decision in one of their biggest investment in life. Buying the correct property which is suitable with the individual's goal and investment objective is key to achieve financial goals. No one wants to buy a value-declining house! :)&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>webdev</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
