index.html 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <!-- <link rel="icon" type="image/svg+xml" href="/vite.svg" /> -->
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  7. <title>Aneurin Barker Snook</title>
  8. <link rel="preconnect" href="https://fonts.googleapis.com">
  9. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  10. <link href="https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap" rel="stylesheet">
  11. </head>
  12. <body>
  13. <main>
  14. <section id="top">
  15. <header>
  16. <h1>
  17. <span>Aneurin</span>
  18. <span>Barker Snook</span>
  19. </h1>
  20. </header>
  21. <p class="description">Software engineer extraordinaire</p>
  22. </section>
  23. <section id="services">
  24. <header>
  25. <h2>Services</h2>
  26. </header>
  27. <p>
  28. I specialise in full-stack software development, and I also offer a vast breadth of skills
  29. and knowledge in many aspects of business and operations.
  30. </p>
  31. <ul>
  32. <li>Software architecture and implementation</li>
  33. <li>Software integrations and API design</li>
  34. <li>Infrastructure, methodology and documentation</li>
  35. <li>Web UI/UX design and implementation</li>
  36. <li>Code review, debugging, and profiling</li>
  37. <li>Security audits</li>
  38. <li>Legacy platform maintenance and migration</li>
  39. <li>Requirements gathering, stakeholder engagement, and R&D</li>
  40. <li>Technical leadership and mentoring</li>
  41. <li>Consulting</li>
  42. </ul>
  43. <p>
  44. I am always open to new challenges. <a href="#contact">Send me a message</a> to let me know what I can help you with.
  45. </p>
  46. </section>
  47. <section id="skills" x-data="skills">
  48. <header>
  49. <h2>Skills</h2>
  50. </header>
  51. <p>
  52. Are you looking for expertise in a specific domain? This list provides an overview of pretty much everything I know.
  53. If you have any questions, or something you need isn't on the list, <a href="#contact">get in touch</a> and I'd be happy to talk about it.
  54. </p>
  55. <nav id="skills-tags" class="tags">
  56. <template x-for="tag in tags" :key="tag">
  57. <a x-bind:class="tagClass(tag)" x-on:click="setCurrentTag" x-text="tag" x-bind:href="`?tag=${tag}`" x-bind:data-tag="tag"></a>
  58. </template>
  59. </nav>
  60. <ul id="skills-list">
  61. <template x-for="skill in visibleSkills">
  62. <li>
  63. <header>
  64. <h3 x-text="skill.name"></h3>
  65. </header>
  66. <p class="description" x-text="skill.description"></p>
  67. <nav class="tags">
  68. <template x-for="tag in skill.tags" :key="tag">
  69. <a x-bind:class="tagClass(tag)" x-on:click="setCurrentTag" x-text="tag" x-bind:href="`?tag=${tag}#skills`" x-bind:data-tag="tag"></a>
  70. </template>
  71. </nav>
  72. </li>
  73. </template>
  74. </ul>
  75. </section>
  76. <section id="pricing">
  77. <header>
  78. <h2>Pricing</h2>
  79. </header>
  80. <p>
  81. I offer two standard rates on a contract or ad-hoc basis:
  82. </p>
  83. <ul>
  84. <li>£300 per day (7.5 hours) in increments of half a day</li>
  85. <li>£45 per hour in increments of one hour</li>
  86. </ul>
  87. <p>
  88. You can choose one of these according to your needs when booking me for work.
  89. I may also be able to offer fixed pricing for a complete project, subject to a discovery phase to define your requirements.
  90. This may be chargeable depending on the time needed. In some cases,
  91. I can also offer an SLA on retainer to ensure my availability to you.
  92. </p>
  93. <p>
  94. If you are a charitable organisation, I would love to work with you and can offer a reduced rate to suit your budgetary
  95. requirements. <a href="#contact">Get in touch</a> to discuss what you need from me.
  96. </p>
  97. </section>
  98. <section id="availability">
  99. <header>
  100. <h2>Availability</h2>
  101. </header>
  102. <p>
  103. I am currently offering <span class="cta">limited availability</span> to work.
  104. </p>
  105. <p>
  106. I have a fully-equipped private office and favour remote working.
  107. I am able to join captioned video calls or discuss your needs by email or instant messaging.
  108. </p>
  109. <p>
  110. if you would like to see me in person, I am based in Nottingham (UK) and willing to travel, within reason, for meetings or hybrid working.
  111. </p>
  112. </section>
  113. <section id="contact">
  114. <header>
  115. <h2>Contact</h2>
  116. </header>
  117. <p x-data="contact">
  118. The best way to reach me is by email.
  119. Send a message to <a x-bind:href="`mailto:${email}`" x-text="email"></a> summarising what you're looking for—or just to say hello!
  120. I look forward to hearing from you.
  121. </p>
  122. <p>
  123. You can aso find me on these platforms:
  124. </p>
  125. <ul>
  126. <li>GitHub <a href="https://github.com/annybs/" target="_blank">github.com/annybs</a>
  127. <li>LinkedIn <a href="https://www.linkedin.com/in/aneurinbs/" target="_blank">linkedin.com/in/aneurinbs</a>
  128. </ul>
  129. </section>
  130. </main>
  131. <div x-data="color" id="color">
  132. <button x-on:click="rotateColorScheme">
  133. <template x-if="currentScheme === 'auto'">
  134. <!-- clock @ https://heroicons.com/mini -->
  135. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
  136. <path fill-rule="evenodd" d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm.75-13a.75.75 0 0 0-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 0 0 0-1.5h-3.25V5Z" clip-rule="evenodd" />
  137. </svg>
  138. </template>
  139. <template x-if="currentScheme === 'light'">
  140. <!-- sun @ https://heroicons.com/mini -->
  141. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
  142. <path d="M10 2a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-1.5 0v-1.5A.75.75 0 0 1 10 2ZM10 15a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-1.5 0v-1.5A.75.75 0 0 1 10 15ZM10 7a3 3 0 1 0 0 6 3 3 0 0 0 0-6ZM15.657 5.404a.75.75 0 1 0-1.06-1.06l-1.061 1.06a.75.75 0 0 0 1.06 1.06l1.06-1.06ZM6.464 14.596a.75.75 0 1 0-1.06-1.06l-1.06 1.06a.75.75 0 0 0 1.06 1.06l1.06-1.06ZM18 10a.75.75 0 0 1-.75.75h-1.5a.75.75 0 0 1 0-1.5h1.5A.75.75 0 0 1 18 10ZM5 10a.75.75 0 0 1-.75.75h-1.5a.75.75 0 0 1 0-1.5h1.5A.75.75 0 0 1 5 10ZM14.596 15.657a.75.75 0 0 0 1.06-1.06l-1.06-1.061a.75.75 0 1 0-1.06 1.06l1.06 1.06ZM5.404 6.464a.75.75 0 0 0 1.06-1.06l-1.06-1.06a.75.75 0 1 0-1.061 1.06l1.06 1.06Z" />
  143. </svg>
  144. </template>
  145. <template x-if="currentScheme === 'dark'">
  146. <!-- moon @ https://heroicons.com/mini -->
  147. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
  148. <path fill-rule="evenodd" d="M7.455 2.004a.75.75 0 0 1 .26.77 7 7 0 0 0 9.958 7.967.75.75 0 0 1 1.067.853A8.5 8.5 0 1 1 6.647 1.921a.75.75 0 0 1 .808.083Z" clip-rule="evenodd" />
  149. </svg>
  150. </template>
  151. </button>
  152. </div>
  153. <div x-data="analytics">
  154. <template x-if="scriptUrl && websiteId">
  155. <script defer x-bind:src="scriptUrl" x-bind:data-website-id="websiteId"></script>
  156. </template>
  157. </div>
  158. <script type="module" src="/src/main.ts"></script>
  159. </body>
  160. </html>