{"id":247,"date":"2025-09-09T10:36:07","date_gmt":"2025-09-08T22:36:07","guid":{"rendered":"https:\/\/andrewdevelops.com\/?p=247"},"modified":"2025-09-09T10:39:17","modified_gmt":"2025-09-08T22:39:17","slug":"trimble-student-project","status":"publish","type":"post","link":"https:\/\/andrewdevelops.com\/index.php\/2025\/09\/09\/trimble-student-project\/","title":{"rendered":"Trimble Student Project"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">About<\/h3>\n\n\n\n<p>During my last semester of studies completing my Bachelors Degree, I had to complete a student project. This industry project was completed with Trimble.<\/p>\n\n\n\n<p>Trimble are a international industrial technology company based in Colorado America, but have been operating in Christchurch New Zealand since acquiring Datacom Software Research Ltd in 1991. Trimble has a core focus on connecting the Physical and Digital Worlds through software and data capture.<\/p>\n\n\n\n<div data-wp-interactive=\"core\/file\" class=\"wp-block-file\"><object data-wp-bind--hidden=\"!state.hasPdfPreview\" hidden class=\"wp-block-file__embed\" data=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/WILP-Poster-Andrew-Grant.pdf\" type=\"application\/pdf\" style=\"width:100%;height:500px\" aria-label=\"Embed of WILP Poster Andrew Grant.\"><\/object><a id=\"wp-block-file--media-1dfe77df-1c74-4876-bd42-8260e62c0bbc\" href=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/WILP-Poster-Andrew-Grant.pdf\">WILP Poster Andrew Grant<\/a><a href=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/WILP-Poster-Andrew-Grant.pdf\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-1dfe77df-1c74-4876-bd42-8260e62c0bbc\">Download<\/a><\/div>\n\n\n\n<p>This project was called Trimble Site Viewer. It was a full stack development project that looked at capturing images with a 360-degree camera and a high precision GPS device. This enabled me to create spherical street-view images that would allow for the user to pan, scroll, and zoom in on a sphere. These spheres also have a lot of the capture meta-data associated to it, this allowed for the image to be placed onto a map with precise co-ordinates that translated into the real capture location.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"TSV Demo\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/-oEXfaByfmY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>The project had a use case for worksite documentation. Allowing for construction, demolition, or recovery workers to rapidly collect images that surveyors, engineers, or stakeholders could view instantly. This solution also has a timeline feature where the images could be rolled back for viewing the projects progress over time.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"504\" data-id=\"254\" src=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056-1024x504.png\" alt=\"\" class=\"wp-image-254\" srcset=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056-1024x504.png 1024w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056-300x148.png 300w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056-768x378.png 768w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056-1536x756.png 1536w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143056.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"504\" data-id=\"255\" src=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141-1024x504.png\" alt=\"\" class=\"wp-image-255\" srcset=\"https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141-1024x504.png 1024w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141-300x148.png 300w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141-768x378.png 768w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141-1536x756.png 1536w, https:\/\/andrewdevelops.com\/wp-content\/uploads\/2025\/09\/Screenshot-2025-06-11-143141.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>This used a Vite installation of React and utilised states and cache to pass objects and variables to various classes. This was largely written in TypeScript (TSX) for components, along-side HTML and CSS for the page templates. There were various libraries used in this project, a lot of which were internal to Trimble. This was deployed to AWS S3 bucket as a proof of concept.<\/p>\n\n\n\n<p>This project was managed through the Scrumban Methodology and utilised Atlassian&#8217;s Jira platform to manage sprints, bugs, tasks, and project backlog. I used BitBucket for source control as it links in nicely to Jira. I used Test Driven Development for testing the solution in its development phase.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>About During my last semester of studies completing my Bachelors Degree, I had to complete a student project. This industry project was completed with Trimble. Trimble are a international industrial technology company based in Colorado America, but have been operating in Christchurch New Zealand since acquiring Datacom Software Research Ltd in 1991. Trimble has a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":254,"comment_status":"closed","ping_status":"open","sticky":false,"template":"single-with-sidebar","format":"standard","meta":{"footnotes":""},"categories":[44,9,43,17,42,41,35,15],"tags":[45,21,48,46],"class_list":["post-247","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile","category-app-development","category-css","category-full-stack","category-html","category-typescript","category-vite","category-web-app","tag-agile","tag-full-stack","tag-typescript","tag-web-application"],"_links":{"self":[{"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/posts\/247","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/comments?post=247"}],"version-history":[{"count":2,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/posts\/247\/revisions"}],"predecessor-version":[{"id":257,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/posts\/247\/revisions\/257"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/media\/254"}],"wp:attachment":[{"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/media?parent=247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/categories?post=247"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/andrewdevelops.com\/index.php\/wp-json\/wp\/v2\/tags?post=247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}