TSB Website
Website available at https://tsb-website-1vl.pages.dev/
About the website
Tools & Libraries
The website is built using the Astro Framework, which allows for fast and optimized static site generation.
Challenges
Due to the Astro nature, some dynamic interactivities take some "creativity" and require native JavaScript implementations. This also ment that for the fleet component which had the highest interactivity requirements, the React module was required. However, this only prooves how flexible Astro is, allowing close to none JavaScript to be used for most of the static website and the possibility to inject more complex frameworks when needed.
Another challenge is content management. Since Astro is a static site generator, content updates require rebuilding and redeploying the site. To address this, the site is deployed on Cloudflare Pages, which automates the build and deployment process whenever changes are pushed to the connected GitHub repository. The good thing about this aproach is that the website is always up to date with the latest changes from the repository without any manual intervention. Another advantage is that the repository master branch is a source of truth, meaning that any changes made to the website can be tracked and managed through version control. Also data and logic are both separated but coupled together throught the use of JSON files and Astro content layer.
Future Improvements
- Maybe a CMS integration for easier content management would be a plug. Hoever it brings an additional layer of complexity and possible costs.
- Forms such as the contact form and recruitment form are not currently connected to a backend service therefore they are just a UI layer with no interactivity. A next step would be to connect them to some webhook platform.