cv.html.heex 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  7. <title>Document</title>
  8. <link
  9. rel="stylesheet"
  10. href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css"
  11. integrity="sha512NhSC1YmyruXifcj/KFRWoC561YpHpc5Jtzgvbuzx5VozKpWvQ+4nXhPdFgmx8xqexRcpAglTj9sIBWINXa8x5w=="
  12. crossorigin="anonymous"
  13. referrerpolicy="no-referrer"
  14. />
  15. <style>
  16. @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800);
  17. @charset "utf-8";
  18. @-webkit-viewport {
  19. width: device-width;
  20. }
  21. @-moz-viewport {
  22. width: device-width;
  23. }
  24. @-ms-viewport {
  25. width: device-width;
  26. }
  27. @-o-viewport {
  28. width: device-width;
  29. }
  30. @viewport {
  31. width: device-width;
  32. }
  33. html {
  34. background-color: rgb(51, 73, 96);
  35. }
  36. * {
  37. box-sizing: border-box;
  38. }
  39. h1, h2, h3, h4, h5, h6 {
  40. font-size: 1em;
  41. }
  42. ol,
  43. ul {
  44. list-style: none;
  45. padding-inline: 0;
  46. }
  47. body {
  48. width: 80;
  49. max-width: 120ch;
  50. margin-top: 2em;
  51. margin-bottom: 2em;
  52. margin-right: auto;
  53. margin-left: auto;
  54. padding: 1em;
  55. background-color: white;
  56. font-family: 'Open Sans', Arial, Tahoma;
  57. font-weight: 400;
  58. display: grid;
  59. grid-template-areas:
  60. "basics basics"
  61. "work education"
  62. "work skills"
  63. "work languages"
  64. "work _";
  65. }
  66. dl {
  67. display: grid;
  68. grid-template-columns: auto 1fr;
  69. }
  70. dt {
  71. grid-column: 1/2;
  72. }
  73. dd {
  74. grid-column: 2/3;
  75. }
  76. #basics {
  77. grid-area: basics;
  78. display: grid;
  79. justify-items: center;
  80. }
  81. #work {
  82. grid-area: work;
  83. }
  84. #basics>h1,
  85. #basics>h2 {
  86. text-transform: uppercase;
  87. }
  88. dt.work_location+dd::before {
  89. content: '🏢 ' attr(value);
  90. }
  91. dt.location::after {
  92. content: '🏠 ' attr(value);
  93. }
  94. li h1,
  95. li h2,
  96. li h3 {
  97. font-weight: 500;
  98. }
  99. #skills .tools::after {
  100. content: "Outils";
  101. }
  102. </style>
  103. </head>
  104. <body>
  105. <div id="basics">
  106. <h1><%= @basics.name %></h1>
  107. <h2><%= @basics.label %></h2>
  108. <dl>
  109. <dt class="location">Lieu</dt>
  110. <dd><%= @basics.location.city %></dd>
  111. </dl>
  112. </div>
  113. <div id="work">
  114. <h1>Expériences professionnelles</h1>
  115. <ol>
  116. <%= for work <- @work do %>
  117. <li>
  118. <.work work={work} />
  119. </li>
  120. <% end %>
  121. </ol>
  122. </div>
  123. <div id="skills">
  124. <h1>Compétences</h1>
  125. <ul>
  126. <%= for skill <- @skills do %>
  127. <li><.skill skill={skill} /></li>
  128. <% end %>
  129. </ul>
  130. </div>
  131. <div id="education">
  132. <h1>Formation</h1>
  133. <ol>
  134. <%= for educ <- @education do %>
  135. <li><.education educ={educ} /></li>
  136. <% end %>
  137. </ol>
  138. </div>
  139. <div id="languages">
  140. <h1>Langues</h1>
  141. <ul>
  142. <%= for lang <- @languages do %>
  143. <li><.language lang={lang} /></li>
  144. <% end %>
  145. </ul>
  146. </div>
  147. </body>
  148. </html>