├── .vscode ├── extensions.json └── settings.json ├── CNAME ├── README.md ├── assets ├── css │ ├── base │ │ ├── base.css │ │ ├── reset.css │ │ └── var.css │ └── components │ │ ├── buttons.css │ │ ├── components.css │ │ └── topbar.css └── img │ ├── favicon.png │ ├── favicon2.png │ ├── icon__github.png │ ├── icon__menu--mobile.png │ ├── icon__twitter.png │ ├── img__logo--betrybe.png │ ├── img__logo--bgdark.png │ ├── img__logo--bglight.png │ ├── img__logo--dashbit.png │ ├── img__logo--finbits.png │ ├── img__logo--icon.png │ ├── img__logo--oficial.png │ ├── img__logo--rebase.png │ ├── img__logo--swapfinacial.jpg │ ├── img__logo--swapfinacial.png │ ├── img__logo--swapfinacial.svg │ ├── img__logo--ufmg.jpg │ ├── img__logo__b:w.png │ ├── shapes__circle--dark.svg │ ├── shapes__oval--dark.svg │ ├── shapes__rectangle--light.svg │ ├── shapes__square--dark.svg │ ├── shapes__square--light.svg │ └── shapes__square--thin.svg ├── index.html └── index.js /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["ms-vscode.live-server"] 3 | } 4 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "livePreview.defaultPreviewPath": "/index.html" 3 | } 4 | -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | pesquisecomelixir.com.br -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # pesquise-com-elixir 2 | 3 | Com objetivo de fomentar a pesquisa e adoção do Elixir conectamos universidades brasileiras 4 | a empresas que financiam e apoiam a pesquisa em tecnologia através de bolsas de mestrado e doutorado. 5 | 6 | Por que Elixir? 7 | Elixir é uma linguagem de programação dinâmica e funcional, 8 | usada para construir aplicações escaláveis desenvolvida pelo brasileiro José Valim em 2012. 9 | 10 | O Elixir roda em cima da Máquina Virtual do Erlang, conhecida pela execução de sistemas distribuídos, 11 | tolerantes a falhas e de baixa latência. 12 | -------------------------------------------------------------------------------- /assets/css/base/base.css: -------------------------------------------------------------------------------- 1 | @import url(reset.css); 2 | @import url(var.css); 3 | 4 | body { 5 | font-family: var(--family-body); 6 | font-size: var(--size-body); 7 | color: var(--purple-600); 8 | } 9 | 10 | .topbar > a { 11 | color: white; 12 | } 13 | 14 | header, 15 | .banner, 16 | #elixir { 17 | background-color: rgba(var(--purple-100), 0.15); 18 | } 19 | 20 | .nav__desktop { 21 | max-width: 1180px; 22 | margin: 0 auto; 23 | padding: 2.5rem 1rem 2.5rem 1rem; 24 | } 25 | 26 | .nav__desktop--menu, 27 | nav > ul > li > a, 28 | footer > div > ul > li > a, 29 | footer > div > div > div > p > a, 30 | footer > div > div > p > a { 31 | font-size: var(--size-menu); 32 | font-weight: var(--weight-menu); 33 | line-height: var(--height-menu); 34 | 35 | color: inherit; 36 | 37 | text-align: right; 38 | } 39 | 40 | li { 41 | display: inline-block; 42 | padding: 1rem; 43 | } 44 | 45 | nav > ul > li > a:hover, 46 | footer > div > ul > li > a:hover { 47 | font-weight: var(--weight-menu_hover); 48 | } 49 | 50 | .nav__tablet { 51 | max-height: 8.125rem; 52 | 53 | display: flex; 54 | justify-content: space-between; 55 | align-items: center; 56 | } 57 | 58 | .nav__tablet > img, 59 | .img__mobile--logo { 60 | height: 60px; 61 | padding: 2rem 1rem; 62 | } 63 | 64 | .nav__mobile { 65 | max-height: 8.125rem; 66 | } 67 | 68 | .nav__mobile--box { 69 | display: flex; 70 | justify-content: space-between; 71 | align-items: stretch; 72 | } 73 | 74 | .icon__menu { 75 | align-self: center; 76 | justify-self: center; 77 | 78 | padding: 2rem; 79 | } 80 | 81 | .icon__menu--active { 82 | filter: brightness(0) invert(1); 83 | } 84 | 85 | .nav__dropdown { 86 | background-color: var(--purple-600); 87 | width: 50%; 88 | position: absolute; 89 | right: 1000vw; 90 | } 91 | 92 | .nav__dropdown--active { 93 | right: 0; 94 | } 95 | 96 | .nav__dropdown--mobile > li { 97 | display: block; 98 | text-align: center; 99 | overflow: hidden; 100 | } 101 | 102 | .nav__dropdown--mobile > li > a { 103 | color: white; 104 | } 105 | 106 | .banner__desktop, 107 | .banner__tablet, 108 | #partners, 109 | #universities, 110 | #papers, 111 | #projects, 112 | .whyElixir, 113 | .elixir__features, 114 | #how, 115 | #requirements, 116 | .research, 117 | #faq, 118 | hr, 119 | .box__one, 120 | .box__two { 121 | max-width: 1180px; 122 | margin: 0 auto; 123 | padding: 0 1rem; 124 | } 125 | 126 | .banner__desktop, 127 | .banner__tablet { 128 | display: flex; 129 | align-items: center; 130 | justify-content: space-between; 131 | flex-wrap: wrap; 132 | 133 | padding: 1.5rem 0 5rem 0; 134 | } 135 | 136 | .img__logo { 137 | align-self: center; 138 | justify-self: center; 139 | 140 | margin: 0 auto; 141 | padding: 2rem; 142 | 143 | height: auto; 144 | max-width: 100%; 145 | } 146 | 147 | .banner__text--box { 148 | display: flex; 149 | justify-content: space-between; 150 | } 151 | 152 | .banner__text--small { 153 | align-self: end; 154 | 155 | font-size: 0.875rem; 156 | padding: 0 0 0.25rem 1rem; 157 | } 158 | 159 | .img__circle { 160 | padding: 0 3rem; 161 | max-width: 50px; 162 | } 163 | 164 | .banner__text--big { 165 | max-width: 580px; 166 | font-size: 2rem; 167 | 168 | margin: 0.5rem auto 2rem auto; 169 | padding: 0 1rem; 170 | } 171 | 172 | .img__rectangle { 173 | max-width: 60px; 174 | padding: 0 1rem; 175 | } 176 | 177 | .topbar > a, 178 | .banner__text > button > a:hover, 179 | .projects__progress--item > a:hover, 180 | .projects__progress--details > a:hover, 181 | .papers__published--item > a:hover, 182 | .papers__published--details > a:hover, 183 | .papers__all > button > a:hover, 184 | .research__field > div > p > a:hover, 185 | .faq__questions > div > p > a:hover { 186 | text-decoration: underline; 187 | } 188 | 189 | h1 { 190 | font-size: var(--size-h1); 191 | font-weight: var(--weight-h1); 192 | line-height: var(--height-h1); 193 | } 194 | 195 | h2 { 196 | font-size: var(--size-h2); 197 | font-weight: var(--weight-h2); 198 | line-height: var(--height-h2); 199 | } 200 | 201 | .partners__title, 202 | .universities__title, 203 | .projects__title, 204 | .papers__title, 205 | #elixir, 206 | #how, 207 | #faq { 208 | margin-top: 5rem; 209 | } 210 | 211 | .research { 212 | margin-top: 3rem; 213 | } 214 | 215 | .partners__logo, 216 | .universities__logo { 217 | margin-top: 5rem; 218 | 219 | display: grid; 220 | grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); 221 | gap: 4rem; 222 | align-items: center; 223 | justify-items: center; 224 | } 225 | 226 | .partners__logo > a > img, 227 | .universities__logo > a > img { 228 | max-width: 200px; 229 | max-height: 150px; 230 | padding: 1rem; 231 | } 232 | 233 | .partners__cta, 234 | .universities__cta { 235 | display: flex; 236 | align-items: center; 237 | justify-content: center; 238 | 239 | margin-top: 5rem; 240 | } 241 | 242 | hr { 243 | flex-grow: 1; 244 | 245 | opacity: 25%; 246 | } 247 | 248 | .projects__progress--list, 249 | .papers__published--list { 250 | margin-top: 1rem; 251 | } 252 | 253 | .projects__progress--item, 254 | .papers__published--item { 255 | padding: 1rem 0 1rem 0; 256 | line-height: 1.5rem; 257 | } 258 | 259 | .projects__progress--item > a, 260 | .projects__progress--details > a, 261 | .papers__published--item > a, 262 | .papers__published--details > a, 263 | .research__field > div > p > a, 264 | .requirements__items > div > p > a, 265 | .how__step > div > p > a, 266 | .faq__questions > div > p > a { 267 | font-weight: 600; 268 | color: var(--purple-600); 269 | } 270 | 271 | .projects__progress--details, 272 | .papers__published--details { 273 | padding-top: 0.25rem; 274 | } 275 | 276 | .whyElixir { 277 | display: flex; 278 | justify-content: space-between; 279 | align-items: center; 280 | flex-wrap: wrap; 281 | 282 | padding: 0 1rem; 283 | } 284 | 285 | .whyElixir__box { 286 | max-width: 36.25rem; 287 | } 288 | 289 | .whyElixir__box > h1 { 290 | margin-top: 5rem; 291 | } 292 | 293 | .whyElixir__description { 294 | margin-top: 2rem; 295 | 296 | line-height: 1.5rem; 297 | } 298 | 299 | .whyElixir__description > p { 300 | padding: 0.5rem 0; 301 | } 302 | 303 | .whyElixir__logo { 304 | margin: 2rem auto; 305 | } 306 | 307 | .elixir__features, 308 | .how__step, 309 | .requirements__items, 310 | .research__field { 311 | display: grid; 312 | grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 313 | gap: 5rem 4rem; 314 | 315 | padding: 2.5rem 0 5rem 0; 316 | } 317 | 318 | .faq__tittle { 319 | margin-top: 2rem; 320 | } 321 | 322 | .faq__questions { 323 | display: flex; 324 | flex-direction: column; 325 | gap: 2rem; 326 | padding: 2.5rem 0 5rem 0; 327 | } 328 | 329 | div[class^="elixir__features--"] > p, 330 | div[class^="how__step--"] > p, 331 | div[class^="requirements__items--"] > p, 332 | div[class^="research__field--"] > p { 333 | margin-top: 1rem; 334 | 335 | line-height: 1.5rem; 336 | } 337 | 338 | .research__field--6 { 339 | display: grid; 340 | } 341 | 342 | .img__oval { 343 | align-self: center; 344 | padding: 1rem; 345 | } 346 | 347 | .img__square { 348 | align-self: center; 349 | justify-self: end; 350 | padding: 1rem; 351 | } 352 | 353 | div[class^="faq__questions--"] > p { 354 | margin-top: 0.5rem; 355 | 356 | line-height: 1.5rem; 357 | } 358 | 359 | footer { 360 | background-color: var(--purple-600); 361 | color: white; 362 | 363 | padding-bottom: 5rem; 364 | } 365 | 366 | .box__one { 367 | display: flex; 368 | justify-content: space-between; 369 | gap: 3rem; 370 | } 371 | 372 | .box__text { 373 | max-width: 23.75rem; 374 | padding: 2rem 0; 375 | 376 | line-height: 1.5rem; 377 | } 378 | 379 | .box__img { 380 | margin-top: 5rem; 381 | } 382 | 383 | .nav__footer { 384 | margin-top: 5.5rem; 385 | 386 | display: flex; 387 | flex-wrap: wrap; 388 | justify-content: end; 389 | align-content: flex-start; 390 | } 391 | 392 | .nav__top { 393 | display: inline-block; 394 | min-width: 60px; 395 | padding: 1rem 0 1rem 1rem; 396 | line-height: 1.5rem; 397 | } 398 | 399 | .box__two > p { 400 | padding: 1rem 0; 401 | } 402 | 403 | .box__two > div > p { 404 | padding: 1rem; 405 | } 406 | 407 | .box__socialmedia { 408 | text-align: center; 409 | } 410 | 411 | .box__socialmedia > img { 412 | padding: 0 0.25rem; 413 | } 414 | 415 | .box__socialmedia > img > p { 416 | padding: 0.5rem; 417 | } 418 | 419 | .box__socialmedia > p > a { 420 | font-size: var(--size-body); 421 | color: rgb(214, 173, 255); 422 | } 423 | 424 | .box__socialmedia > p > a:hover { 425 | font-weight: var(--weight-menu_hover); 426 | } 427 | 428 | @media (min-width: 1056px) { 429 | /* Menu de Navegação */ 430 | nav.nav__mobile { 431 | display: none; 432 | } 433 | nav.nav__tablet { 434 | display: none; 435 | } 436 | 437 | /* Banner do Site */ 438 | div.banner__tablet { 439 | display: none; 440 | } 441 | } 442 | 443 | @media (max-width: 1055px) { 444 | /* Menu de Navegação */ 445 | nav.nav__desktop { 446 | display: none; 447 | } 448 | nav.nav__mobile { 449 | display: none; 450 | } 451 | 452 | /* Banner do Site */ 453 | div.banner__desktop { 454 | display: none; 455 | } 456 | div.banner__tablet { 457 | justify-content: center; 458 | } 459 | } 460 | 461 | @media (max-width: 717px) { 462 | /* Menu de Navegação */ 463 | nav.nav__tablet { 464 | display: none; 465 | } 466 | 467 | nav.nav__mobile { 468 | display: block; 469 | } 470 | 471 | div.nav__mobile--box { 472 | display: flex; 473 | } 474 | 475 | /* Linhas nos botões*/ 476 | .partners__cta > hr { 477 | display: none; 478 | } 479 | .universities__cta > hr { 480 | display: none; 481 | } 482 | } 483 | 484 | @media (max-width: 791px) { 485 | /* sessão por que Elixir*/ 486 | .whyElixir__box--mobile { 487 | margin-top: 5rem; 488 | display: flex; 489 | align-items: center; 490 | justify-content: space-between; 491 | } 492 | 493 | .whyElixir__box--mobile > img { 494 | padding-left: 1rem; 495 | width: 100px; 496 | height: 100%; 497 | } 498 | .whyElixir__box > h1, 499 | .whyElixir__logo { 500 | display: none; 501 | } 502 | } 503 | 504 | @media (min-width: 792px) { 505 | /* remove logo mobile */ 506 | .whyElixir__box--mobile { 507 | display: none; 508 | } 509 | } 510 | 511 | @media (max-width: 655px) { 512 | /* remove as figuras decorativas na sessão pq elixir */ 513 | .research__field--6 { 514 | display: none; 515 | } 516 | } 517 | 518 | @media (max-width: 495px) { 519 | /* remove os   em universidades */ 520 | div.universities__logo > span { 521 | display: none; 522 | } 523 | } 524 | 525 | @media (max-width: 604px) { 526 | /* remove nav do footer e coloca TOPO */ 527 | .nav__footer { 528 | display: none; 529 | } 530 | 531 | .box__one { 532 | display: block; 533 | } 534 | 535 | .box__one--mobile { 536 | display: flex; 537 | justify-content: space-between; 538 | align-items: flex-end; 539 | } 540 | 541 | .box__img { 542 | width: 150px; 543 | height: auto; 544 | } 545 | } 546 | 547 | @media (min-width: 605px) { 548 | /* remove TOPO do nav__footer */ 549 | .nav__top { 550 | display: none; 551 | } 552 | } 553 | -------------------------------------------------------------------------------- /assets/css/base/reset.css: -------------------------------------------------------------------------------- 1 | /* http://meyerweb.com/eric/tools/css/reset/ 2 | v2.0 | 20110126 3 | License: none (public domain) 4 | */ 5 | 6 | html, 7 | body, 8 | div, 9 | span, 10 | applet, 11 | object, 12 | iframe, 13 | h1, 14 | h2, 15 | h3, 16 | h4, 17 | h5, 18 | h6, 19 | p, 20 | blockquote, 21 | pre, 22 | a, 23 | abbr, 24 | acronym, 25 | address, 26 | big, 27 | cite, 28 | code, 29 | del, 30 | dfn, 31 | em, 32 | img, 33 | ins, 34 | kbd, 35 | q, 36 | s, 37 | samp, 38 | small, 39 | strike, 40 | strong, 41 | sub, 42 | sup, 43 | tt, 44 | var, 45 | b, 46 | u, 47 | i, 48 | center, 49 | dl, 50 | dt, 51 | dd, 52 | ol, 53 | ul, 54 | li, 55 | fieldset, 56 | form, 57 | label, 58 | legend, 59 | table, 60 | caption, 61 | tbody, 62 | tfoot, 63 | thead, 64 | tr, 65 | th, 66 | td, 67 | article, 68 | aside, 69 | canvas, 70 | details, 71 | embed, 72 | figure, 73 | figcaption, 74 | footer, 75 | header, 76 | hgroup, 77 | menu, 78 | nav, 79 | output, 80 | ruby, 81 | section, 82 | summary, 83 | time, 84 | mark, 85 | audio, 86 | video { 87 | margin: 0; 88 | padding: 0; 89 | border: 0; 90 | font-size: 100%; 91 | font: inherit; 92 | vertical-align: baseline; 93 | } 94 | /* HTML5 display-role reset for older browsers */ 95 | article, 96 | aside, 97 | details, 98 | figcaption, 99 | figure, 100 | footer, 101 | header, 102 | hgroup, 103 | menu, 104 | nav, 105 | section { 106 | display: block; 107 | } 108 | body { 109 | line-height: 1; 110 | } 111 | ol, 112 | ul { 113 | list-style: none; 114 | } 115 | a { 116 | text-decoration: none; 117 | } 118 | blockquote, 119 | q { 120 | quotes: none; 121 | } 122 | blockquote:before, 123 | blockquote:after, 124 | q:before, 125 | q:after { 126 | content: ""; 127 | content: none; 128 | } 129 | table { 130 | border-collapse: collapse; 131 | border-spacing: 0; 132 | } 133 | -------------------------------------------------------------------------------- /assets/css/base/var.css: -------------------------------------------------------------------------------- 1 | :root { 2 | /* colors */ 3 | --purple-main: #9933ff; 4 | --white-main: #fff; 5 | --black-main: #000; 6 | 7 | --purple-100: 214, 173, 255; 8 | --purple-200: #c285ff; 9 | --purple-300: #ad5cff; 10 | --purple-400: #7a29cc; 11 | --purple-500: #5c1f99; 12 | --purple-600: #3d1466; 13 | 14 | /* family-font */ 15 | --family-body: "Source Sans Pro", sans-serif; 16 | 17 | /* font-size */ 18 | --size-body: 1rem; 19 | --size-topbar: 1rem; 20 | --size-button: 1.25rem; 21 | --size-h1: 2.25rem; 22 | --size-h2: 1.25rem; 23 | --size-menu: 1.125rem; 24 | 25 | /* font-weight */ 26 | --weight-body: 400; 27 | --weight-topbar: 400; 28 | --weight-button: 600; 29 | --weight-h1: 400; 30 | --weight-h2: 600; 31 | --weight-menu: 400; 32 | --weight-menu_hover: 600; 33 | 34 | /* line-height */ 35 | --height-body: 1.5rem; 36 | --height-topbar: 1.5rem; 37 | --height-h1: 2.5rem; 38 | --height-h2: 1.75rem; 39 | } 40 | -------------------------------------------------------------------------------- /assets/css/components/buttons.css: -------------------------------------------------------------------------------- 1 | .button { 2 | background-color: var(--purple-main); 3 | 4 | text-align: center; 5 | font-family: inherit; 6 | font-weight: 600; 7 | font-size: var(--family-size); 8 | color: white; 9 | 10 | padding: 1rem 6rem; 11 | 12 | border: none; 13 | 14 | cursor: pointer; 15 | } 16 | 17 | .button--nav { 18 | background-color: transparent; 19 | border: none; 20 | } 21 | 22 | .button--nav--active { 23 | background-color: var(--purple-600); 24 | border: var(--purple-600); 25 | color: white; 26 | } 27 | 28 | .button--outlined { 29 | background-color: unset; 30 | 31 | color: var(--purple-main); 32 | 33 | border: 4px solid var(--purple-main); 34 | 35 | padding: 1rem 7rem; 36 | } 37 | 38 | .button--none { 39 | background-color: unset; 40 | 41 | color: var(--purple-main); 42 | 43 | padding: 1rem 0rem; 44 | } 45 | 46 | .button--none:hover { 47 | text-decoration: underline; 48 | } 49 | 50 | .button--darkText { 51 | background-color: unset; 52 | 53 | color: var(--purple-600); 54 | 55 | padding: 1rem 4rem; 56 | } 57 | 58 | .button--darkText:hover { 59 | text-decoration: underline; 60 | } 61 | 62 | .button__whyElixir { 63 | padding: 0.25rem 0; 64 | } 65 | 66 | @media (max-width: 505px) { 67 | /* reduz padding dos botão cta */ 68 | div.universities__cta > .button, 69 | .button--outilined, 70 | div.partners__cta > .button, 71 | .button--outilined { 72 | padding: 1rem 3rem; 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /assets/css/components/components.css: -------------------------------------------------------------------------------- 1 | @import url(topbar.css); 2 | @import url(buttons.css); 3 | -------------------------------------------------------------------------------- /assets/css/components/topbar.css: -------------------------------------------------------------------------------- 1 | .topbar { 2 | background-color: var(--purple-600); 3 | 4 | font-family: var(--family-body); 5 | font-size: var(--size-topbar); 6 | font-weight: var(--weight-topbar); 7 | 8 | color: var(--white-main); 9 | 10 | line-height: var(--height-topbar); 11 | text-align: center; 12 | 13 | padding: 12px; 14 | } 15 | -------------------------------------------------------------------------------- /assets/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/favicon.png -------------------------------------------------------------------------------- /assets/img/favicon2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/favicon2.png -------------------------------------------------------------------------------- /assets/img/icon__github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/icon__github.png -------------------------------------------------------------------------------- /assets/img/icon__menu--mobile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/icon__menu--mobile.png -------------------------------------------------------------------------------- /assets/img/icon__twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/icon__twitter.png -------------------------------------------------------------------------------- /assets/img/img__logo--betrybe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--betrybe.png -------------------------------------------------------------------------------- /assets/img/img__logo--bgdark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--bgdark.png -------------------------------------------------------------------------------- /assets/img/img__logo--bglight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--bglight.png -------------------------------------------------------------------------------- /assets/img/img__logo--dashbit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--dashbit.png -------------------------------------------------------------------------------- /assets/img/img__logo--finbits.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--finbits.png -------------------------------------------------------------------------------- /assets/img/img__logo--icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--icon.png -------------------------------------------------------------------------------- /assets/img/img__logo--oficial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--oficial.png -------------------------------------------------------------------------------- /assets/img/img__logo--rebase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--rebase.png -------------------------------------------------------------------------------- /assets/img/img__logo--swapfinacial.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--swapfinacial.jpg -------------------------------------------------------------------------------- /assets/img/img__logo--swapfinacial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--swapfinacial.png -------------------------------------------------------------------------------- /assets/img/img__logo--swapfinacial.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /assets/img/img__logo--ufmg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo--ufmg.jpg -------------------------------------------------------------------------------- /assets/img/img__logo__b:w.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/paulo-valim/pesquise-com-elixir/41c76da292666b81eccf2c09fa93156ec3f4b35a/assets/img/img__logo__b:w.png -------------------------------------------------------------------------------- /assets/img/shapes__circle--dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/img/shapes__oval--dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/img/shapes__rectangle--light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/img/shapes__square--dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/img/shapes__square--light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/img/shapes__square--thin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Pesquise com Elixir 8 | 9 | 10 | 11 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 25 | 26 |
27 | 28 | 37 | 38 | 39 | 52 | 53 | 54 | 79 |
80 | 81 | 82 | 83 |
84 | 141 | 142 | 143 | 144 |
145 |
146 |

Empresas apoiadoras

147 |
148 | 174 |
175 |
176 | 183 |
184 |
185 |
186 | 187 | 188 | 189 |
190 |
191 |

Universidades participantes

192 |
193 | 204 |
205 |
206 | 213 |
214 |
215 |
216 | 217 | 218 | 219 |
220 |
221 |

Projetos em andamento

222 |
223 |
224 |
    225 |
  1. 226 | 1. 227 | Um backend eBPF para a linguagem de programação Elixir. 232 | Escrevendo um compilador e uma biblioteca de suporte para traduzir 233 | programas Elixir em código eBPF de baixo nível que será executado 234 | no Kernel do Linux. 235 | [repositório] 240 | [LaC/DCC/UFMG]. 243 |
  2. 244 |
245 |
246 |
247 | 248 | 249 | 250 |
251 |
252 |

Projetos concluídos

253 |
254 |
255 |
    256 |
  1. 257 | 1. 258 | Catálogo de code smells para Elixir. 263 | Prospeção, documentação e validação com a comunidade de um 264 | catálogo de code smells mais comuns e relevantes em sistemas 265 | Elixir. 266 | [repositório] 271 | [ASERG/DCC/UFMG]. 274 |
  2. 275 |
276 |
277 |
278 | 279 | 280 | 281 |
282 |
283 |

Publicações

284 |
285 |
286 |
    287 |
  1. 288 | 1. 289 | Code Smells in Elixir: Early Results from a Grey Literature 293 | Review, International Conference on Program Comprehension (ICPC), 2022. 295 | [slides] 300 | [video] 301 | [podcast (pt-BR)] 306 |

    307 | Lucas Vegi e Marco Tulio Valente, do 308 | ASERG/DCC/UFMG. 311 |

    312 |
  2. 313 | 314 |
  3. 315 | 2. 316 | Understanding code smells in Elixir functional language, Empirical Software Engineering, 2023. 321 | [Link] 326 | [Tweet] 331 |

    332 | Lucas Vegi e Marco Tulio Valente, do 333 | ASERG/DCC/UFMG. 336 |

    337 |
  4. 338 |
339 |
340 |
341 | 342 | 343 | 344 |
345 |
346 |
347 |

Por que Elixir?

348 |
349 |

Por que Elixir?

350 | Logo Elixir 351 |
352 |
353 |

354 | Elixir é uma linguagem de programação dinâmica e funcional, 355 | usada para construir aplicações escaláveis desenvolvida pelo 356 | brasileiro José Valim em 2012. 357 |

358 |

359 | O Elixir roda em cima da Máquina Virtual do Erlang, conhecida 360 | pela execução de sistemas distribuídos, tolerantes a falhas e de 361 | baixa latência. 362 |

363 |
364 | 371 |
372 | 375 |
376 |
377 |

Áreas de Interesse

378 |
379 |
380 |

Computação numérica e aprendizado de máquina

381 |

382 | A comunidade Elixir começou em 2021 um esforço para trazer 383 | abstrações de 384 | computação numérica 389 | para o ecossistema, incluindo execução em GPUs. Temos interesse 390 | em pesquisa em redes neurais com 391 | Axon 394 | e aprendizado de máquina como um todo. 395 |

396 |
397 |
398 |

Ensino e cadernos computacionais (notebooks)

399 |

400 | Temos interesse em tornar o Elixir, uma linguagem funcional, 401 | concorrente, e distribuída, mais acessível para o ensino e 402 | documentação. Uma iniciativa recente nessa área é o 403 | Livebook, que 404 | deixa o aprendizado com o Elixir mais acessível e moderno 405 | através de cadernos computacionais. 406 |

407 |
408 |
409 |

Sistema concorrentes e distribuídos

410 |

411 | O Elixir roda em cima da máquina virtual do Erlang, desenhada 412 | para a construção de sistemas concorrentes e distribuídos. 413 | Estudo de algoritmos distribuídos, métodos formais, tolerância a 414 | falhas, CRDTs, e mais são áreas de interesse. 415 |

416 |
417 |
418 |

Compiladores e tipagem

419 |

420 | Código Elixir compila para o formato .beam, que o 421 | formato de código da Erlang VM. Quando carregado, o código é 422 | compilado just-in time para código de máquina. Exemplos de áreas 423 | de pesquisa incluem aplicações de otimizações a nível de SSA, 424 | tipagem, alocação de registro, e durante a emissão de código de 425 | máquina. 426 |

427 |
428 |
429 |

A sua sugestão!

430 |

431 | O nosso maior interesse é em fomentar a pesquisa, independente 432 | da área de interesse. As áreas acima são baseadas em atividades 433 | já existentes, mas outras áreas e sugestão são bem-vindas, como 434 | Engenharia de software, Computação paralela, Processamento de 435 | dados, e mais! 436 |

437 |
438 |
439 | figura decorativa 444 | figura decorativa 449 |
450 |
451 |
452 |
453 | 454 | 455 | 456 |
457 |

Como funciona?

458 |
459 |
460 |

Aplicação

461 |

462 | O Orientador ou Pesquisador responsável por coordenar bolsas de 463 | mestrado e doutorado enviam o seu projeto de pesquisa através do 464 | preenchimento 465 | deste formulário. 468 |

469 |
470 |
471 |

Avaliação

472 |

473 | Se o projeto atender os 474 | Requistos do Programa, nós fazemos a 475 | conexão entre a Universidade e a Empresa que financiará as bolsas 476 | de mestrado e/ou doutorado. 477 |

478 |
479 |
480 |

Aprovação

481 |

482 | A empresa envia o valor referente a 1 (um) ano de Pesquisa para o 483 | Instituto e/ou Universidade responsável. O Orientador divulga a 484 | bolsa em sua Universidade e junto ao seu orientando desenvolve a 485 | pesquisa. 486 |

487 |
488 |
489 |
490 | 491 | 492 | 493 |
494 |

Requisitos do Programa

495 |
496 |
497 |

Pesquisa em tecnologia

498 |

499 | As bolsas de mestrado e doutorado devem ser destinadas a área de 500 | tecnologia. Confira as áreas de interesse. 501 |

502 |
503 |
504 |

Elixir

505 |

506 | O código desenvolvido durante a pesquisa deve ser, em sua maioria, 507 | escrito em Elixir. Ou a pesquisa deve ter o ecosistema do Elixir e 508 | a Máquina Virtual do Erlang como foco. 509 |

510 |
511 |
512 |

Open-Source

513 |

514 | O código desenvolvido durante a pesquisa deve ser disponibilizado 515 | em licenças de código aberto, de forma a contribuir para o 516 | fortalecimento da comunidade. 517 |

518 |
519 |
520 |
521 |
522 | 523 | 524 | 525 |
526 |

FAQ

527 |
528 |
529 |

Como a minha Empresa pode fazer parte do projeto?

530 |

531 | Para a sua empresa fazer parte do projeto, basta preencher o 532 | formulário 533 | clicando aqui 536 | e entraremos em contato com mais detalhes. 537 |

538 |
539 |
540 |

Como a minha Universidade pode fazer parte do projeto?

541 |

542 | Para a sua universidade fazer parte do projeto, basta preencher o 543 | formulário 544 | clicando aqui 547 | e entraremos em contato com mais detalhes. 548 |

549 |
550 |
551 |

552 | Qual é o valor e a duração do financiamento da bolsa de Mestrado 553 | e/ou Doutorado? 554 |

555 |

556 | O valor da bolsa é regulamentado pelas próprias Universidades / 557 | Fundações de Pesquisa, na faixa de R$1600-R$2300 mensais, 558 | dependendo da localização e do tipo de bolsa. 559 |

560 |

561 | A duração de uma bolsa é de 1 (um) ano e pode ser renovada através 562 | do mesmo processo. 563 |

564 |
565 |
566 |

O que é esperado dos Pesquisadores ao receber uma bolsa?

567 |

568 | É esperado que você desenvolva sua pesquisa em Tecnologia (em suas 569 | diversas áreas) usando a linguagem de programação Elixir e que ao 570 | final sua pesquisa seja disponibilizada em licenças de código 571 | aberto. 572 |

573 |
574 |
575 |

Como é feito o repasse da bolsa de pesquisa?

576 |

577 | O valor referente a 1(um) ano de pesquisa, será enviado pela 578 | empresa patrocinadora a Universidade e/ou Fundação de Pesquisa que 579 | por sua vez será responsável pela seleção e oferta da bolsa aos 580 | estudantes da Instituição. 581 |

582 |
583 |
584 |

Sou estudante, posso aplicar a uma bolsa individual?

585 |

586 | Não. Todo o processo é feito entre a Empresa e a Universidade e/ou 587 | Instituto de Pesquisa. Se esse for o seu caso, converse com o seu 588 | orientador e peça-o para fazer a aplicação do Projeto de Pesquisa 589 | em nosso site. 590 |

591 |
592 |
593 |
594 |
595 | 596 | 597 | 598 | 637 | 638 | 639 | 640 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const buttonMenu = document.querySelector(".button--nav"); 2 | const dropdownMenu = document.querySelector(".nav__dropdown"); 3 | const colorMenu = document.querySelector(".icon__menu"); 4 | 5 | buttonMenu.addEventListener("click", () => { 6 | dropdownMenu.classList.toggle("nav__dropdown--active"); 7 | buttonMenu.classList.toggle("button--nav--active"); 8 | colorMenu.classList.toggle("icon__menu--active"); 9 | }); 10 | --------------------------------------------------------------------------------