├── .gitignore ├── CNAME ├── README.md ├── gulpfile.js ├── package-lock.json ├── package.json └── src ├── content ├── about.md ├── call.js ├── footer.js ├── keynotes │ ├── carol-willing.md │ ├── debora-azevedo.md │ ├── felipemorais.md │ ├── laisvarejao.md │ ├── lorenamesa.md │ └── luciano-ramalho.md └── sponsors.js ├── grade ├── calendario.js ├── core.min.css ├── core.min.js ├── daygrid.min.css ├── daygrid.min.js ├── fuso.js ├── google-calendar.js ├── index.html ├── list-colors.css ├── list.min.css ├── list.min.js ├── logo.png ├── pt-br.min.js ├── style.css ├── timegrid.min.css └── timegrid.min.js ├── images ├── banner-site.jpeg ├── cactus.svg ├── ccrp.svg ├── cloud_background.svg ├── cloud_background_2.svg ├── dinosaur.svg ├── download-on-appstore.svg ├── entities │ ├── GitHub_Logo.png │ ├── PSF-Logo-Narrow-Shapes.svg │ ├── apyb.png │ ├── estacio.png │ ├── grupozap.png │ ├── labcodes.png │ ├── loadsmart-logo-horizontal.png │ ├── logo-evolux.svg │ ├── logo-idtrust.png │ ├── logo_globo_com.svg │ ├── olist.png │ ├── placeholder.png │ ├── stoodi.png │ ├── usp.png │ └── whatsgood.png ├── facebook.svg ├── fotos │ ├── alexandre_villares.jpeg │ ├── alexis_jawtuschenko.jpeg │ ├── amanda_savluchinske.jpeg │ ├── anicely_santos.jpeg │ ├── arthur_fortes.jpeg │ ├── barbara_barbosa_claudino.jpeg │ ├── bernardo_fontes.jpeg │ ├── betina_costa.jpeg │ ├── bruno_evangelista.jpeg │ ├── bruno_franca.jpeg │ ├── camilla_martins.jpeg │ ├── daniele_tavares.jpeg │ ├── danielle_monteiro.jpeg │ ├── david_cosac.jpeg │ ├── diego_guimaraes.jpeg │ ├── eder_martins.jpeg │ ├── emanuel_lima.jpeg │ ├── felipe_fernandes.jpeg │ ├── felipe_videira.jpeg │ ├── fernando_masanori.jpeg │ ├── filipe_ximenes.jpeg │ ├── flavio_juvenal.jpeg │ ├── gabriel_bellon.jpeg │ ├── giana_de_almeida.jpeg │ ├── grupo_de_estudos_em_data_science.jpeg │ ├── guilherme_garnier.jpeg │ ├── gustavo_carvalho.jpeg │ ├── henrique_bastos.jpeg │ ├── ingrid_sena.jpeg │ ├── jessica_bonson.jpeg │ ├── joao_daher.jpeg │ ├── juliana_karoline.jpeg │ ├── juliany_raiol.jpeg │ ├── katia_nakamura.jpeg │ ├── leonardo_belluzzi.jpeg │ ├── leonardo_rochael.jpeg │ ├── lidiane_monteiro.jpeg │ ├── maria_fernanda.jpeg │ ├── mariana_albuquerque.jpeg │ ├── matheus_hernandes.jpeg │ ├── melissa_weber.jpeg │ ├── nelson_nolasco.jpeg │ ├── patricia_guisordi.jpeg │ ├── paulo_santana.jpeg │ ├── pietra_freitas.jpeg │ ├── pyladies_brasil.jpeg │ ├── pyladies_manaus.jpeg │ ├── rafael_calixto.jpeg │ ├── rafael_henrique.jpeg │ ├── rebeca_sarai.jpeg │ ├── renne_rocha.jpeg │ ├── rodrigo_mendonca.jpeg │ ├── ryllari_santana.jpeg │ ├── sam_agnew.jpeg │ ├── thais_almeida.jpeg │ ├── tyrone_damasceno.jpeg │ ├── william_oliveira.jpeg │ └── yan_orestes.jpeg ├── google-play-badge.png ├── hayline.svg ├── instagram.svg ├── keynotes │ ├── carol-willing.jpg │ ├── debora-azevedo.jpg │ ├── felipemorais.jpg │ ├── laisvarejao.jpg │ ├── lorenamesa.jpg │ └── luciano-ramalho.jpg ├── linkedin.svg ├── logo_branco.png ├── logo_colorido.png ├── logo_python_2019.png ├── logo_python_2019_white.png ├── main_logo_ribeirao.png ├── py-logo-white.png ├── pylogo-2019-colored.svg ├── pylogo.svg ├── python_brasil_logo.png ├── python_brasil_logo_white.png └── twitter.svg ├── pdfs ├── cdc │ ├── cdc-protocolo-relatar-incidentes.pdf │ └── cdc-protocolo-time-de-resposta.pdf ├── plano_de_patrocinio.pdf └── sponsorship_plan.pdf ├── sass ├── appbanner.sass ├── colors.sass ├── main.sass └── style.sass ├── scripts └── index.js ├── submissao-de-palestras └── index.html └── templates ├── index.hbs ├── partials ├── .main.hbs.swp ├── about.hbs ├── footer.hbs ├── keynotes.hbs ├── lineup.hbs ├── main.hbs ├── prefooter.hbs ├── pylogo.hbs ├── sponsors.hbs ├── svgs │ ├── facebook.hbs │ ├── github.hbs │ ├── instagram.hbs │ ├── linkedin.hbs │ ├── pylogo.hbs │ └── twitter.hbs └── tutorials.hbs └── programacao.hbs /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | dist 4 | 5 | # OS X 6 | .DS_Store 7 | -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | 2020.pythonbrasil.org.br 2 | br.pycon.org 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # pythonbrasil-2020 2 | Site da Python Brasil 2020 3 | 4 | 5 | ## Rodando localmente 6 | Pré-requisitos: 7 | - Node v11 8 | 9 | # Instalando dependências 10 | $ npm install 11 | 12 | # Gera o site na pasta dist/ 13 | $ npm run build 14 | 15 | # Serve o site na porta 8080 16 | $ npm run serve 17 | ``` 18 | -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | const gulpStatic = require('gulp-static-gen'); 2 | const gulp = require('gulp'); 3 | const fs = require('fs'); 4 | const path = require('path'); 5 | const set = require('lodash.set'); 6 | 7 | const { Converter } = require('showdown'); 8 | 9 | const data = {}; 10 | 11 | const loadData = (folderPath, objectPaths = []) => { 12 | const finalPath = path.resolve(__dirname, folderPath) 13 | const files = fs.readdirSync(finalPath); 14 | 15 | files.forEach((file) => { 16 | if (file.indexOf('.') === -1) { 17 | loadData(`${folderPath}/${file}`, [file]); 18 | return; 19 | } 20 | 21 | if (file.indexOf('.js') !== -1) { 22 | let paths = [...objectPaths, file.replace('.js', '')] 23 | set(data, paths, require(`${process.cwd()}/${folderPath}/${file}`)); 24 | } else { 25 | const conv = new Converter({ metadata: true, tables: true, openLinksInNewWindow: true }); 26 | let paths = [...objectPaths, file.replace('.md', '')] 27 | 28 | set(data, paths, { 29 | html: conv.makeHtml(fs.readFileSync( 30 | path.resolve(finalPath, file), 'utf-8' 31 | )), 32 | meta: conv.getMetadata(), 33 | }); 34 | } 35 | }); 36 | } 37 | 38 | loadData('src/content') 39 | 40 | gulp.task('content', () => { 41 | loadData('src/content') 42 | }); 43 | 44 | gulpStatic({ 45 | customWatchers: [ 46 | { files: './src/content/**/*', tasks: ['content', 'handlebars'] } 47 | ], 48 | move: [{ 49 | input: './CNAME', 50 | output: './dist' 51 | }, 52 | { 53 | input: './src/pdfs/**/*', 54 | output: './dist/assets/pdfs/' 55 | }, 56 | { 57 | input: './src/pdfs/cdc/**/*', 58 | output: './dist/' 59 | }, 60 | { 61 | input: './src/submissao-de-palestras', 62 | output: './dist/' 63 | }, 64 | { 65 | input: './src/grade/**/*', 66 | output: './dist/grade/' 67 | } 68 | ], 69 | css: { 70 | input: './src/sass/style.sass', 71 | output: './dist/assets/css', 72 | watch: './src/sass/**/*', 73 | }, 74 | hbs: { 75 | batch: ['./src/templates/partials'], 76 | watch: './src/templates/**/*', 77 | multiple: [{ 78 | data: data, 79 | input: './src/templates/index.hbs', 80 | output: { 81 | dir: './dist', 82 | name: 'index.html', 83 | } 84 | }] 85 | }, 86 | img: { 87 | input: './src/images/**/*', 88 | output: './dist/assets/images', 89 | config: { 90 | interlaced: true, 91 | progressive: true, 92 | optimizationLevel: 5, 93 | svgoPlugins: [{ removeViewBox: true }] 94 | } 95 | }, 96 | scripts: { 97 | input: './src/scripts/index.js', 98 | output: './dist/assets/scripts/', 99 | watch: './src/scripts/**/*', 100 | } 101 | }); 102 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pybr", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "serve": "gulp serve", 8 | "build": "gulp build" 9 | }, 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "gulp": "^3.X", 14 | "gulp-static-gen": "^1.0.2", 15 | "lodash.set": "^4.3.2", 16 | "prettier": "^1.18.2", 17 | "showdown": "^1.9.0", 18 | "tar": ">=2.2.2" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/content/about.md: -------------------------------------------------------------------------------- 1 | # O Evento 2 | 3 | A Python Brasil 2020 é a maior conferência sobre linguagem de programação Python do Brasil e da América Latina. 4 | 5 | Feita pela comunidade para a comunidade, tem o objetivo de difundir a linguagem, disseminar conhecimento, promover a troca de experiências e manter a comunidade crescendo igualmente em público e impacto social. 6 | 7 | Este ano, em caráter de exceção devido à pandemia de covid-19, a Python Brasil será realizada remotamente, organizada por um time distribuído no Brasil e no mundo, a fim de prosseguir com o seu objetivo de disseminar conhecimento e aproximar pessoas. 8 | 9 | Serão sete dias de imersão, onde participantes poderão contribuir para projetos de software livre, participar de treinamentos e adquirir novos conhecimentos com outras pessoas da comunidade. 10 | 11 | Seguindo o lema Pessoas > Tecnologia, gostamos de conhecer quem participa de nosso evento, por isso existem questões sobre como as pessoas se veem em nosso formulário de inscrições. Esses dados servirão como estatísticas sobre nosso público e também orientarão futuras aprimorações em nossas políticas de diversidade. Esperamos que você se sinta confortável em colaborar com nossa pesquisa. 12 | 13 | Todas as pessoas que participam da Python Brasil devem concordar em seguir as orientações especificadas no [Código de Conduta](https://python.org.br/cdc/). 14 | 15 | Se tiver qualquer dúvida não hesite em entrar em contato pelo e-mail [eventos@python.org.br](mailto:eventos@python.org.br). 16 | -------------------------------------------------------------------------------- /src/content/call.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | text: 'A maior conferência de Python da América Latina', 3 | button: { 4 | link: '/foo', 5 | text: 'Quero patrocinar', 6 | } 7 | } -------------------------------------------------------------------------------- /src/content/footer.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | nav: [ 3 | { 4 | title: 'Sobre', 5 | items: [ 6 | // { text: 'Keynotes', link: '#section-keynote' }, 7 | { text: 'Evento', link: '#section-about' }, 8 | // { text: 'Programação', link: '#' }, 9 | { 10 | text: 'Código de Conduta', 11 | link: 'https://python.org.br/cdc/', 12 | } 13 | ] 14 | }, 15 | { 16 | title: 'Patrocínio', 17 | items: [ 18 | { 19 | text: 'Quero Patrocinar', 20 | link: '/assets/pdfs/plano_de_patrocinio.pdf', 21 | target: "_blank" 22 | }, 23 | { 24 | text: 'I want to be a sponsor', 25 | link: '/assets/pdfs/sponsorship_plan.pdf', 26 | }, 27 | // { text: 'Patrocinadores', link: '#section-sponsors' }, 28 | ] 29 | }, 30 | ], 31 | social: { 32 | facebook: { link: 'https://www.facebook.com/pythonbrasil/', logo: '/images/facebook.svg' }, 33 | twitter: { link: 'https://twitter.com/pythonbrasil', logo: '/images/twitter.svg' }, 34 | instagram: { link: 'https://www.instagram.com/pythonbrasil/', logo: '/images/instagram.svg' }, 35 | apybr: { link: 'https://python.org.br/', logo: '/images/pylogo.svg' } 36 | }, 37 | buyTicketLink: 'https://www.eventbrite.com.br/e/python-brasil-2020-tickets-117927633727' 38 | } 39 | -------------------------------------------------------------------------------- /src/content/keynotes/carol-willing.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: carol-willing.jpg 3 | github: https://github.com/willingc 4 | linkedin: https://www.linkedin.com/in/carolwilling/ 5 | publish: True 6 | --- 7 | 8 | ### Carol Willing 9 | #### Diretora da PSF e Projeto Jupyter, desenvolvedora core do CPython e JupyterHub 10 | 11 | Carol Naslund Willing atua no Conselho Diretor do Projeto Jupyter e trabalha como Core Developer no JupyterHub e mybinder.org. Ela também atua como coeditora do “The Journal of Open Source Education” (JOSE) e é coautora de um livro open source, o “Teaching and Learning with Jupyter”. 12 | 13 | Ela é membro do primeiro Conselho Diretor do Python e faz parte da equipe principal de desenvolvimento do CPython. Ela também é ex-diretora da Python Software Foundation e atual Fellow Member. Em 2019, recebeu o Prêmio Frank Willison por suas contribuições técnicas e para com a comunidade Python. Fortemente comprometida com a divulgação da comunidade, Carol coorganiza o PyLadies San Diego e o San Diego Python User Group. 14 | 15 | Carol tem mestrado em Gestão pelo MIT e Bacharel em Engenharia Elétrica pela Duke University. 16 | 17 | -------------------------------------------------------------------------------- /src/content/keynotes/debora-azevedo.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: debora-azevedo.jpg 3 | twitter: https://twitter.com/pydebb/ 4 | linkedin: https://www.linkedin.com/in/debora-azevedo-1919b996/ 5 | publish: true 6 | --- 7 | 8 | ### Débora Azevedo 9 | #### Professora na Secretaria Estadual de Educação e Cultura do Rio Grande do Norte 10 | 11 | Débora é professora na rede estadual de ensino no Rio Grande do Norte, e atualmente aluna do Mestrado em Inovação com Tecnologias Educacionais no Instituto Metrópole Digital (UFRN). Com uma formação mista, graduação em Letras - Inglês e bacharelado em TI ainda no meio do caminho, é cofundadora do PyLadies Brasil, estando em sua formação inicial até agora, além de organizadora do Django Girls Natal, sua cidade. Ano passado organizou a primeira PyLadiesBR Conf, primeira conferência do Brasil de PyLadies para PyLadies, e tem atuado ultimamente na comunidade de mulheres Python a nível nacional. Acredita que é com a educação que conseguiremos mudar alguma coisa, em nós, na comunidade, no país. Fã de Harry Potter e de literatura policial, pode chamá-la para conversar sobre isso ou sobre algum livro da Agatha Christie. 12 | 13 | -------------------------------------------------------------------------------- /src/content/keynotes/felipemorais.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: felipemorais.jpg 3 | linkedin: https://www.linkedin.com/in/felipe-de-morais 4 | twitter: https://www.twitter.com/felipedemorais_ 5 | publish: true 6 | --- 7 | 8 | ### Felipe de Morais 9 | #### Comunidade AfroPython 10 | 11 | Felipe de Morais é um Desenvolvedor de Software envolvido há alguns anos com a comunidade Python. Entre as contribuições mais relevantes para a Comunidade estão o AfroPython, iniciativa para empoderar pessoas negras através da tecnologia e colaborações em projetos abertos como a Operação Serenata de Amor. Tudo que ele faz são manifestações de seus 2 valores mais básicos: Ajudar pessoas e aprender com e de pessoas incríveis. 12 | -------------------------------------------------------------------------------- /src/content/keynotes/laisvarejao.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: laisvarejao.jpg 3 | github: https://www.github.com/laisvarejao 4 | twitter: https://www.twitter.com/laisvarejao 5 | publish: true 6 | --- 7 | 8 | ### Laís Varejão 9 | #### Desenvolvedora Full-Stack e Gerente de Projetos @ Vinta Software 10 | 11 | É desenvolvedora full-stack e gerente de projetos na Vinta Software. PyLady e organizadora do Django Girls Recife, vislumbra um futuro com mais mulheres na computação. Alumna do Recurse Center, um retiro para programadores em Nova York. É engenheira de software por formação, tem 7 anos de experiência no mercado e atualmente lidera uma equipe de desenvolvimento onde aplica metodologias ágeis. 12 | -------------------------------------------------------------------------------- /src/content/keynotes/lorenamesa.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: lorenamesa.jpg 3 | github: https://www.github.com/lorenanicole 4 | twitter: https://www.twitter.com/loooorenanicole 5 | publish: true 6 | --- 7 | 8 | ### Lorena Mesa 9 | #### Engenheira de Dados @ Github 10 | 11 | Cientista política que virou programadora, Lorena Mesa é engenheira de dados na equipe de sistemas de inteligência de software do GitHub, diretora da Python Software Foundation e coorganizadora do PyLadies Chicago. 12 | Durante o seu período na campanha "Obama for America" e, em seguida, na pesquisa de pós-graduação, Lorena teve que aprender como transformar dados confusos e incompletos em análises inteligíveis, como por exemplo a previsão do comportamento dos eleitores latinos. Foi esse histórico em pesquisa e matemática aplicada que levou Lorena a seguir uma carreira em engenharia e ciência de dados. 13 | Uma parte ativista, uma parte fanática por Star Wars e outra Trekkie, Lorena segue o lema "live long and prosper". 14 | -------------------------------------------------------------------------------- /src/content/keynotes/luciano-ramalho.md: -------------------------------------------------------------------------------- 1 | --- 2 | photo: luciano-ramalho.jpg 3 | github: https://www.github.com/ramalho 4 | twitter: https://www.twitter.com/ramalhoorg 5 | publish: true 6 | --- 7 | 8 | ### Luciano Ramalho 9 | #### Autor do livro Python Fluente e Consultor Principal na ThoughtWorks Brasil 10 | 11 | Depois de 17 anos programando em Python, Ramalho publicou o livro Fluent Python (O'Reilly, 2015), lançado em 9 idiomas, inclusive PT-BR (Python Fluente, Novatec, 2015). Foi o primeiro presidente da Associação Python Brasil, e co-fundador do Garoa Hacker Clube. É fellow da Python Software Foundation e consultor principal na ThoughtWorks Brasil. 12 | -------------------------------------------------------------------------------- /src/content/sponsors.js: -------------------------------------------------------------------------------- 1 | const Entity = (name, photo, link) => ({ 2 | name, link, 3 | photo: `/assets/images/entities/${photo}` 4 | }); 5 | 6 | module.exports = { 7 | sponsors: { 8 | title: 'Patrocinadores', 9 | categories: [ 10 | { 11 | type: 'diamante', 12 | items: [ 13 | Entity('GitHub', 'GitHub_Logo.png', 'https://github.com'), 14 | ], 15 | }, 16 | { 17 | type: 'platina', 18 | items: [ 19 | Entity('PSF', 'PSF-Logo-Narrow-Shapes.svg', 'https://www.python.org/psf'), 20 | Entity('GrupoZAP', 'grupozap.png', 'https://www.grupozap.com'), 21 | ], 22 | }, 23 | { 24 | type: 'ouro', 25 | items: [ 26 | Entity('Loadsmart', 'loadsmart-logo-horizontal.png', 'https://www.loadsmart.com'), 27 | Entity('olist', 'olist.png', 'https://olist.com'), 28 | Entity('Stoodi', 'stoodi.png', 'https://www.stoodi.com.br/'), 29 | Entity('Globo.com', 'logo_globo_com.svg', 'https://www.globo.com/'), 30 | ], 31 | }, 32 | { 33 | type: 'prata', 34 | items: [ 35 | Entity('Evolux', 'logo-evolux.svg', 'https://www.evolux.net.br'), 36 | Entity('Lab Codes', 'labcodes.png', 'https://labcodes.com.br/'), 37 | Entity('WhatsGood', 'whatsgood.png', 'https://whatsgood.com.br'), 38 | ], 39 | }, 40 | { 41 | type: 'bronze', 42 | items: [ 43 | Entity('iDtrust', 'logo-idtrust.png', 'https://www.idtrust.com.br'), 44 | ], 45 | }, 46 | ] 47 | }, 48 | partners: [ 49 | { 50 | title: 'Parceiros', 51 | items: [ 52 | Entity('associação python brasil', 'apyb.png', 'https://python.org.br/'), 53 | Entity('USP', 'usp.png', 'https://www5.usp.br/'), 54 | Entity('Estácio de Sá', 'estacio.png', 'http://portal.estacio.br') 55 | ] 56 | } 57 | ], 58 | organization: [ 59 | Entity('FizzFuzz', 'placeholder.png', '/sponsor-test'), 60 | ] 61 | } 62 | -------------------------------------------------------------------------------- /src/grade/calendario.js: -------------------------------------------------------------------------------- 1 | function open_details() { 2 | document.getElementById("full-detail").style.display = "block"; 3 | } 4 | 5 | /* Close when someone clicks on the "x" symbol inside the overlay */ 6 | function close_details() { 7 | document.getElementById("full-detail").style.display = "none"; 8 | } 9 | 10 | function toggle_label(nodeId, value, display, link) { 11 | var node = document.getElementById(nodeId); 12 | if (value) { 13 | node.innerHTML = value; 14 | node.style.display = display; 15 | } else { 16 | node.style.display = "none"; 17 | } 18 | if (link){ 19 | node.href = link; 20 | } 21 | } 22 | 23 | document.addEventListener('DOMContentLoaded', function() { 24 | var calendarEl = document.getElementById('calendar'); 25 | 26 | var calendar = new FullCalendar.Calendar(calendarEl, { 27 | plugins: [ 28 | 'googleCalendar', 29 | 'list', 30 | 'timeGrid' 31 | ], 32 | height: 'auto', 33 | 34 | // // Python Brasil first day 35 | defaultDate: '2020-11-02', 36 | defaultView: 'segunda', 37 | timeZone: 'America/Sao_Paulo', 38 | locale: 'pt-br', 39 | 40 | allDaySlot: false, 41 | minTime: "08:00:00", 42 | maxTime: "20:00:00", 43 | nowIndicator: true, 44 | 45 | header: { 46 | left: 'title', 47 | right: 'segunda,terca,quarta,quinta,sexta sabado,domingo' 48 | }, 49 | 50 | views: { 51 | segunda: { 52 | type: 'list', 53 | buttonText: 'Seg', 54 | visibleRange: { 55 | start: '2020-11-02', 56 | end: '2020-11-02' 57 | } 58 | }, 59 | terca: { 60 | type: 'list', 61 | buttonText: 'Ter', 62 | visibleRange: { 63 | start: '2020-11-03', 64 | end: '2020-11-03' 65 | } 66 | }, 67 | quarta: { 68 | type: 'list', 69 | buttonText: 'Qua', 70 | visibleRange: { 71 | start: '2020-11-04', 72 | end: '2020-11-04' 73 | } 74 | }, 75 | quinta: { 76 | type: 'list', 77 | buttonText: 'Qui', 78 | visibleRange: { 79 | start: '2020-11-05', 80 | end: '2020-11-05' 81 | } 82 | }, 83 | sexta: { 84 | type: 'list', 85 | buttonText: 'Sex', 86 | visibleRange: { 87 | start: '2020-11-06', 88 | end: '2020-11-06' 89 | } 90 | }, 91 | sabado: { 92 | type: 'list', 93 | buttonText: 'Sab', 94 | visibleRange: { 95 | start: '2020-11-07', 96 | end: '2020-11-07' 97 | } 98 | }, 99 | domingo: { 100 | type: 'list', 101 | buttonText: 'Dom', 102 | visibleRange: { 103 | start: '2020-11-08', 104 | end: '2020-11-08' 105 | } 106 | } 107 | }, 108 | 109 | 110 | eventClick: function(info) { 111 | info.jsEvent.preventDefault(); 112 | 113 | var title = info.event.title; 114 | var author = info.event._def.extendedProps.private.author; 115 | var location = info.event._def.extendedProps.location; 116 | var description = info.event._def.extendedProps.description || ""; 117 | description = description.replace(/\\n\\n/g, "
"); 118 | description = description.replace(/\\n/g, " "); 119 | var youtube_link = info.event._def.extendedProps.private.youtube_channel; 120 | var discord_link = info.event._def.extendedProps.private.discord_channel; 121 | 122 | document.getElementById("overlay-description").innerHTML = description; 123 | document.getElementById("overlay-title").innerHTML = title; 124 | toggle_label("overlay-author", author, "inline"); 125 | toggle_label("overlay-room", location, "inline"); 126 | 127 | if(youtube_link){ 128 | toggle_label("overlay-youtube", "Assista no YouTube", "inline", youtube_link); 129 | }else{ 130 | toggle_label("overlay-youtube", '', "inline"); 131 | } 132 | 133 | if(discord_link){ 134 | toggle_label("overlay-discord", "Participe e envie perguntas pelo Discord", "inline", discord_link); 135 | }else{ 136 | toggle_label("overlay-discord", '', "inline"); 137 | } 138 | 139 | open_details(); 140 | }, 141 | 142 | eventRender: function(info) { 143 | console.log('info', info); 144 | var meta = document.createElement("div"); 145 | meta.className = "meta"; 146 | 147 | var type = info.event._def.extendedProps.private.type; 148 | 149 | // Palestrante 150 | var author = info.event._def.extendedProps.private.author; 151 | if (author) { 152 | var authorNode = document.createElement("div"); 153 | if (type == "keynote") { 154 | authorNode.className = "speaker speaker-keynote"; 155 | } else { 156 | authorNode.className = "speaker"; 157 | } 158 | 159 | authorNode.appendChild( 160 | document.createTextNode(author) 161 | ) 162 | meta.appendChild(authorNode); 163 | } 164 | // Sala 165 | var location = info.event._def.extendedProps.location 166 | if (location) { 167 | var discord_channel = info.event._def.extendedProps.private.discord_channel; 168 | if (discord_channel) { 169 | var href = document.createElement("a"); 170 | href.className = "discord"; 171 | href.href = discord_channel; 172 | href.appendChild( 173 | document.createTextNode(location) 174 | ); 175 | } else { 176 | var href = document.createTextNode(location) 177 | } 178 | 179 | var locationNode = document.createElement("div"); 180 | locationNode.className = "room"; 181 | locationNode.classList.add(location.replace(" ", "").toLowerCase()); 182 | locationNode.appendChild(href); 183 | meta.appendChild(locationNode); 184 | } 185 | 186 | // Youtube 187 | var youtube_channel = info.event._def.extendedProps.private.youtube_channel; 188 | if (youtube_channel) { 189 | var href = document.createElement("a"); 190 | href.className = "youtube"; 191 | href.href = youtube_channel; 192 | href.appendChild( 193 | document.createTextNode("live") 194 | ); 195 | var youtubeNode = document.createElement("div"); 196 | youtubeNode.appendChild(href); 197 | 198 | meta.appendChild(youtubeNode); 199 | } 200 | 201 | 202 | if (type == "keynote") { 203 | info.el.classList.add("keynote-entry"); 204 | } 205 | 206 | info.el.lastChild.appendChild(meta); 207 | }, 208 | // Google Calendar settings 209 | googleCalendarApiKey: 'AIzaSyAIn8DyZFtthupLozgwIX3NUURFMWEIPb4', 210 | eventSources: [{ 211 | googleCalendarId: 'cis4uq8vegrfbjjn1qi9hvau1k@group.calendar.google.com' 212 | }] 213 | }); 214 | 215 | calendar.render(); 216 | var bfuso = document.getElementById('bfuso'); 217 | if(verifica_fuso()){ 218 | bfuso.style.display = "inline"; 219 | } 220 | else{ 221 | bfuso.style.display = "none"; 222 | } 223 | }); 224 | -------------------------------------------------------------------------------- /src/grade/core.min.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.fc-button:not(:disabled),.fc-event.fc-draggable,.fc-event[href],.fc-popover .fc-header .fc-close,a.fc-more,a[data-goto]{cursor:pointer}.fc-bg,.fc-row .fc-bgevent-skeleton,.fc-row .fc-highlight-skeleton{bottom:0}.fc{direction:ltr;text-align:left}.fc-rtl{text-align:right}body .fc{font-size:1em}.fc-highlight{background:#bce8f1;opacity:.3}.fc-bgevent{background:#8fdf82;opacity:.3}.fc-nonbusiness{background:#d7d7d7}.fc-popover{position:absolute;box-shadow:0 2px 6px rgba(0,0,0,.15)}.fc-popover .fc-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:2px 4px}.fc-rtl .fc-popover .fc-header{flex-direction:row-reverse}.fc-popover .fc-header .fc-title{margin:0 2px}.fc-popover .fc-header .fc-close{opacity:.65;font-size:1.1em}.fc-divider{border-style:solid;border-width:1px}hr.fc-divider{height:0;margin:0;padding:0 0 2px;border-width:1px 0}.fc-bg table,.fc-row .fc-bgevent-skeleton table,.fc-row .fc-highlight-skeleton table{height:100%}.fc-bg,.fc-bgevent-skeleton,.fc-highlight-skeleton,.fc-mirror-skeleton{position:absolute;top:0;left:0;right:0}.fc table{width:100%;box-sizing:border-box;table-layout:fixed;border-collapse:collapse;border-spacing:0;font-size:1em}.fc th{text-align:center}.fc td,.fc th{border-style:solid;border-width:1px;padding:0;vertical-align:top}.fc td.fc-today{border-style:double}a[data-goto]:hover{text-decoration:underline}.fc .fc-row{border-style:solid;border-width:0}.fc-row table{border-left:0 hidden transparent;border-right:0 hidden transparent;border-bottom:0 hidden transparent}.fc-row:first-child table{border-top:0 hidden transparent}.fc-row{position:relative}.fc-row .fc-bg{z-index:1}.fc-row .fc-bgevent-skeleton td,.fc-row .fc-highlight-skeleton td{border-color:transparent}.fc-row .fc-bgevent-skeleton{z-index:2}.fc-row .fc-highlight-skeleton{z-index:3}.fc-row .fc-content-skeleton{position:relative;z-index:4;padding-bottom:2px}.fc-row .fc-mirror-skeleton{z-index:5}.fc .fc-row .fc-content-skeleton table,.fc .fc-row .fc-content-skeleton td,.fc .fc-row .fc-mirror-skeleton td{background:0 0;border-color:transparent}.fc-row .fc-content-skeleton td,.fc-row .fc-mirror-skeleton td{border-bottom:0}.fc-row .fc-content-skeleton tbody td,.fc-row .fc-mirror-skeleton tbody td{border-top:0}.fc-scroller{-webkit-overflow-scrolling:touch}.fc-scroller>.fc-day-grid,.fc-scroller>.fc-time-grid{position:relative;width:100%}.fc-event{position:relative;display:block;font-size:.85em;line-height:1.4;border-radius:3px;border:1px solid #3788d8}.fc-event,.fc-event-dot{background-color:#3788d8}.fc-event,.fc-event:hover{color:#fff;text-decoration:none}.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc-event .fc-content{position:relative;z-index:2}.fc-event .fc-resizer{position:absolute;z-index:4;display:none}.fc-event.fc-allow-mouse-resize .fc-resizer,.fc-event.fc-selected .fc-resizer{display:block}.fc-event.fc-selected .fc-resizer:before{content:"";position:absolute;z-index:9999;top:50%;left:50%;width:40px;height:40px;margin-left:-20px;margin-top:-20px}.fc-event.fc-selected{z-index:9999!important;box-shadow:0 2px 5px rgba(0,0,0,.2)}.fc-event.fc-selected:after{content:"";position:absolute;z-index:1;top:-1px;right:-1px;bottom:-1px;left:-1px;background:#000;opacity:.25}.fc-event.fc-dragging.fc-selected{box-shadow:0 2px 7px rgba(0,0,0,.3)}.fc-event.fc-dragging:not(.fc-selected){opacity:.75}.fc-h-event.fc-selected:before{content:"";position:absolute;z-index:3;top:-10px;bottom:-10px;left:0;right:0}.fc-ltr .fc-h-event.fc-not-start,.fc-rtl .fc-h-event.fc-not-end{margin-left:0;border-left-width:0;padding-left:1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-ltr .fc-h-event.fc-not-end,.fc-rtl .fc-h-event.fc-not-start{margin-right:0;border-right-width:0;padding-right:1px;border-top-right-radius:0;border-bottom-right-radius:0}.fc-ltr .fc-h-event .fc-start-resizer,.fc-rtl .fc-h-event .fc-end-resizer{cursor:w-resize;left:-1px}.fc-ltr .fc-h-event .fc-end-resizer,.fc-rtl .fc-h-event .fc-start-resizer{cursor:e-resize;right:-1px}.fc-h-event.fc-allow-mouse-resize .fc-resizer{width:7px;top:-1px;bottom:-1px}.fc-h-event.fc-selected .fc-resizer{border-radius:4px;border-width:1px;width:6px;height:6px;border-style:solid;border-color:inherit;background:#fff;top:50%;margin-top:-4px}.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,.fc-rtl .fc-h-event.fc-selected .fc-end-resizer{margin-left:-4px}.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,.fc-rtl .fc-h-event.fc-selected .fc-start-resizer{margin-right:-4px}.fc-day-grid-event{margin:1px 2px 0;padding:0 1px}tr:first-child>td>.fc-day-grid-event{margin-top:2px}.fc-mirror-skeleton tr:first-child>td>.fc-day-grid-event{margin-top:0}.fc-day-grid-event .fc-content{white-space:nowrap;overflow:hidden}.fc-day-grid-event .fc-time{font-weight:700}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer{margin-left:-2px}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer{margin-right:-2px}a.fc-more{margin:1px 3px;font-size:.85em;text-decoration:none}a.fc-more:hover{text-decoration:underline}.fc-limited{display:none}.fc-button,.fc-icon{display:inline-block;font-weight:400;text-align:center}.fc-day-grid .fc-row{z-index:1}.fc-more-popover{z-index:2;width:220px}.fc-more-popover .fc-event-container{padding:10px}.fc-now-indicator{position:absolute;border:0 solid red}.fc-unselectable{-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.fc-unthemed .fc-content,.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-list-view,.fc-unthemed .fc-popover,.fc-unthemed .fc-row,.fc-unthemed tbody,.fc-unthemed td,.fc-unthemed th,.fc-unthemed thead{border-color:#ddd}.fc-unthemed .fc-popover{background-color:#fff}.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-popover .fc-header{background:#eee}.fc-unthemed td.fc-today{background:#fcf8e3}.fc-unthemed .fc-disabled-day{background:#d7d7d7;opacity:.3}@font-face{font-family:fcicons;src:url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBfAAAAC8AAAAYGNtYXAXVtKNAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5ZgYydxIAAAF4AAAFNGhlYWQUJ7cIAAAGrAAAADZoaGVhB20DzAAABuQAAAAkaG10eCIABhQAAAcIAAAALGxvY2ED4AU6AAAHNAAAABhtYXhwAA8AjAAAB0wAAAAgbmFtZXsr690AAAdsAAABhnBvc3QAAwAAAAAI9AAAACAAAwPAAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpBgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6Qb//f//AAAAAAAg6QD//f//AAH/4xcEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAWIAjQKeAskAEwAAJSc3NjQnJiIHAQYUFwEWMjc2NCcCnuLiDQ0MJAz/AA0NAQAMJAwNDcni4gwjDQwM/wANIwz/AA0NDCMNAAAAAQFiAI0CngLJABMAACUBNjQnASYiBwYUHwEHBhQXFjI3AZ4BAA0N/wAMJAwNDeLiDQ0MJAyNAQAMIw0BAAwMDSMM4uINIwwNDQAAAAIA4gC3Ax4CngATACcAACUnNzY0JyYiDwEGFB8BFjI3NjQnISc3NjQnJiIPAQYUHwEWMjc2NCcB87e3DQ0MIw3VDQ3VDSMMDQ0BK7e3DQ0MJAzVDQ3VDCQMDQ3zuLcMJAwNDdUNIwzWDAwNIwy4twwkDA0N1Q0jDNYMDA0jDAAAAgDiALcDHgKeABMAJwAAJTc2NC8BJiIHBhQfAQcGFBcWMjchNzY0LwEmIgcGFB8BBwYUFxYyNwJJ1Q0N1Q0jDA0Nt7cNDQwjDf7V1Q0N1QwkDA0Nt7cNDQwkDLfWDCMN1Q0NDCQMt7gMIw0MDNYMIw3VDQ0MJAy3uAwjDQwMAAADAFUAAAOrA1UAMwBoAHcAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMhMjY1NCYjISIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAAVYRGRkR/qoRGRkRA1UFBAUOCQkVDAsZDf2rDRkLDBUJCA4FBQUFBQUOCQgVDAsZDQJVDRkLDBUJCQ4FBAVVAgECBQMCBwQECAX9qwQJAwQHAwMFAQICAgIBBQMDBwQDCQQCVQUIBAQHAgMFAgEC/oAZEhEZGRESGQAAAAADAFUAAAOrA1UAMwBoAIkAABMiBgcOAQcOAQcOARURFBYXHgEXHgEXHgEzITI2Nz4BNz4BNz4BNRE0JicuAScuAScuASMFITIWFx4BFx4BFx4BFREUBgcOAQcOAQcOASMhIiYnLgEnLgEnLgE1ETQ2Nz4BNz4BNz4BMxMzFRQWMzI2PQEzMjY1NCYrATU0JiMiBh0BIyIGFRQWM9UNGAwLFQkJDgUFBQUFBQ4JCRULDBgNAlYNGAwLFQkJDgUFBQUFBQ4JCRULDBgN/aoCVgQIBAQHAwMFAQIBAQIBBQMDBwQECAT9qgQIBAQHAwMFAQIBAQIBBQMDBwQECASAgBkSEhmAERkZEYAZEhIZgBEZGREDVQUEBQ4JCRUMCxkN/asNGQsMFQkIDgUFBQUFBQ4JCBUMCxkNAlUNGQsMFQkJDgUEBVUCAQIFAwIHBAQIBf2rBAkDBAcDAwUBAgICAgEFAwMHBAMJBAJVBQgEBAcCAwUCAQL+gIASGRkSgBkSERmAEhkZEoAZERIZAAABAOIAjQMeAskAIAAAExcHBhQXFjI/ARcWMjc2NC8BNzY0JyYiDwEnJiIHBhQX4uLiDQ0MJAzi4gwkDA0N4uINDQwkDOLiDCQMDQ0CjeLiDSMMDQ3h4Q0NDCMN4uIMIw0MDOLiDAwNIwwAAAABAAAAAQAAa5n0y18PPPUACwQAAAAAANivOVsAAAAA2K85WwAAAAADqwNVAAAACAACAAAAAAAAAAEAAAPA/8AAAAQAAAAAAAOrAAEAAAAAAAAAAAAAAAAAAAALBAAAAAAAAAAAAAAAAgAAAAQAAWIEAAFiBAAA4gQAAOIEAABVBAAAVQQAAOIAAAAAAAoAFAAeAEQAagCqAOoBngJkApoAAQAAAAsAigADAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAA4ArgABAAAAAAABAAcAAAABAAAAAAACAAcAYAABAAAAAAADAAcANgABAAAAAAAEAAcAdQABAAAAAAAFAAsAFQABAAAAAAAGAAcASwABAAAAAAAKABoAigADAAEECQABAA4ABwADAAEECQACAA4AZwADAAEECQADAA4APQADAAEECQAEAA4AfAADAAEECQAFABYAIAADAAEECQAGAA4AUgADAAEECQAKADQApGZjaWNvbnMAZgBjAGkAYwBvAG4Ac1ZlcnNpb24gMS4wAFYAZQByAHMAaQBvAG4AIAAxAC4AMGZjaWNvbnMAZgBjAGkAYwBvAG4Ac2ZjaWNvbnMAZgBjAGkAYwBvAG4Ac1JlZ3VsYXIAUgBlAGcAdQBsAGEAcmZjaWNvbnMAZgBjAGkAYwBvAG4Ac0ZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=") format("truetype");font-weight:400;font-style:normal}.fc-icon{font-family:fcicons!important;speak:none;font-style:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:1em;height:1em}.fc-icon-chevron-left:before{content:""}.fc-icon-chevron-right:before{content:""}.fc-icon-chevrons-left:before{content:""}.fc-icon-chevrons-right:before{content:""}.fc-icon-minus-square:before{content:""}.fc-icon-plus-square:before{content:""}.fc-icon-x:before{content:""}.fc-button{overflow:visible;text-transform:none;margin:0;font-family:inherit}.fc-button::-moz-focus-inner{padding:0;border-style:none}.fc-button{-webkit-appearance:button;color:#212529;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.4em .65em;font-size:1em;line-height:1.5;border-radius:.25em}.fc-button:hover{color:#212529;text-decoration:none}.fc-button:focus{outline:0;-webkit-box-shadow:0 0 0 .2rem rgba(44,62,80,.25);box-shadow:0 0 0 .2rem rgba(44,62,80,.25)}.fc-button:disabled{opacity:.65}.fc-button-primary{color:#fff;background-color:#2C3E50;border-color:#2C3E50}.fc-button-primary:hover{color:#fff;background-color:#1e2b37;border-color:#1a252f}.fc-button-primary:focus{-webkit-box-shadow:0 0 0 .2rem rgba(76,91,106,.5);box-shadow:0 0 0 .2rem rgba(76,91,106,.5)}.fc-button-primary:disabled{color:#fff;background-color:#2C3E50;border-color:#2C3E50}.fc-button-primary:not(:disabled).fc-button-active,.fc-button-primary:not(:disabled):active{color:#fff;background-color:#1a252f;border-color:#151e27}.fc-button-primary:not(:disabled).fc-button-active:focus,.fc-button-primary:not(:disabled):active:focus{-webkit-box-shadow:0 0 0 .2rem rgba(76,91,106,.5);box-shadow:0 0 0 .2rem rgba(76,91,106,.5)}.fc-button .fc-icon{vertical-align:middle;font-size:1.5em}.fc-button-group{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.fc-button-group>.fc-button{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.fc-button-group>.fc-button.fc-button-active,.fc-button-group>.fc-button:active,.fc-button-group>.fc-button:focus,.fc-button-group>.fc-button:hover{z-index:1}.fc-button-group>.fc-button:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-button-group>.fc-button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.fc-unthemed .fc-popover{border-width:1px;border-style:solid}.fc-unthemed .fc-list-item:hover td{background-color:#f5f5f5}.fc-toolbar{display:flex;justify-content:space-between;align-items:center}.fc-toolbar.fc-header-toolbar{margin-bottom:1.5em}.fc-toolbar.fc-footer-toolbar{margin-top:1.5em}.fc-toolbar>*>:not(:first-child){margin-left:.75em}.fc-toolbar h2{font-size:1.75em;margin:0}.fc-view-container{position:relative}.fc-view-container *,.fc-view-container :after,.fc-view-container :before{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.fc-view,.fc-view>table{position:relative;z-index:1}@media print{.fc-bg,.fc-bgevent-container,.fc-bgevent-skeleton,.fc-business-container,.fc-event .fc-resizer,.fc-highlight-container,.fc-highlight-skeleton,.fc-mirror-container,.fc-mirror-skeleton{display:none}.fc tbody .fc-row,.fc-time-grid{min-height:0!important}.fc-time-grid .fc-event.fc-not-end:after,.fc-time-grid .fc-event.fc-not-start:before{content:"..."}.fc{max-width:100%!important}.fc-event{background:#fff!important;color:#000!important;page-break-inside:avoid}.fc hr,.fc tbody,.fc td,.fc th,.fc thead,.fc-row{border-color:#ccc!important;background:#fff!important}.fc tbody .fc-row{height:auto!important}.fc tbody .fc-row .fc-content-skeleton{position:static;padding-bottom:0!important}.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td{padding-bottom:1em}.fc tbody .fc-row .fc-content-skeleton table{height:1em}.fc-more,.fc-more-cell{display:none!important}.fc tr.fc-limited{display:table-row!important}.fc td.fc-limited{display:table-cell!important}.fc-popover,.fc-timeGrid-view .fc-axis{display:none}.fc-slats,.fc-time-grid hr{display:none!important}.fc button,.fc-button-group,.fc-time-grid .fc-event .fc-time span{display:none}.fc-time-grid .fc-content-skeleton{position:static}.fc-time-grid .fc-content-skeleton table{height:4em}.fc-time-grid .fc-event-container{margin:0!important}.fc-time-grid .fc-event{position:static!important;margin:3px 2px!important}.fc-time-grid .fc-event.fc-not-end{border-bottom-width:1px!important}.fc-time-grid .fc-event.fc-not-start{border-top-width:1px!important}.fc-time-grid .fc-event .fc-time{white-space:normal!important}.fc-time-grid .fc-event .fc-time:after{content:attr(data-full)}.fc-day-grid-container,.fc-scroller,.fc-time-grid-container{overflow:visible!important;height:auto!important}.fc-row{border:0!important;margin:0!important}} -------------------------------------------------------------------------------- /src/grade/daygrid.min.css: -------------------------------------------------------------------------------- 1 | .fc-dayGridDay-view .fc-content-skeleton,.fc-dayGridWeek-view .fc-content-skeleton{padding-bottom:1em}.fc-dayGrid-view .fc-body .fc-row{min-height:4em}.fc-row.fc-rigid{overflow:hidden}.fc-row.fc-rigid .fc-content-skeleton{position:absolute;top:0;left:0;right:0}.fc-day-top.fc-other-month{opacity:.3}.fc-dayGrid-view .fc-day-number,.fc-dayGrid-view .fc-week-number{padding:2px}.fc-dayGrid-view th.fc-day-number,.fc-dayGrid-view th.fc-week-number{padding:0 2px}.fc-ltr .fc-dayGrid-view .fc-day-top .fc-day-number{float:right}.fc-rtl .fc-dayGrid-view .fc-day-top .fc-day-number{float:left}.fc-ltr .fc-dayGrid-view .fc-day-top .fc-week-number{float:left;border-radius:0 0 3px}.fc-rtl .fc-dayGrid-view .fc-day-top .fc-week-number{float:right;border-radius:0 0 0 3px}.fc-dayGrid-view .fc-day-top .fc-week-number{min-width:1.5em;text-align:center;background-color:#f2f2f2;color:grey}.fc-dayGrid-view td.fc-week-number{text-align:center}.fc-dayGrid-view td.fc-week-number>*{display:inline-block;min-width:1.25em} -------------------------------------------------------------------------------- /src/grade/fuso.js: -------------------------------------------------------------------------------- 1 | 2 | function time_to_date(dia, hora){ 3 | var h = hora.split(":"); 4 | var h1 = h[0].padStart(2, '0'); 5 | var h2 = h[1].padStart(2, '0'); 6 | var nd = `${dia.getFullYear()}-${dia.getMonth()+1}-0${dia.getDate()}T${h1}:${h2}:00-03:00`; 7 | return new Date(nd).toLocaleTimeString([],{ hour: '2-digit', minute: '2-digit' }) 8 | } 9 | 10 | function atualiza_horarios(){ 11 | var s_dia = document.getElementsByClassName("fc-list-heading")[0].getAttribute('data-date'); 12 | var vdia = s_dia.split("-") 13 | var dia = new Date(vdia[0], parseInt(vdia[1])-1, vdia[2]) 14 | var itens = document.getElementsByClassName("fc-list-item-time") 15 | var i; 16 | 17 | for(i=0; i 2 | 3 | 4 | 5 | 6 | Python Brasil 2020 - Programação 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 |
22 |
23 | 24 | 31 | 32 |
33 | 34 | × 35 | 36 | 37 |
38 |

39 |

40 |

41 |

Python Brasil 2020 - Programação.

42 |

43 |

44 |
45 |
46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /src/grade/list-colors.css: -------------------------------------------------------------------------------- 1 | .fc-segunda-view .fc-list-item:nth-child(n+4):not(.keynote-entry) { background-color: lightyellow; } 2 | .fc-segunda-view .fc-list-item:nth-child(n+8):not(.keynote-entry) { background-color: lightblue; } 3 | .fc-segunda-view .fc-list-item:nth-child(n+12):not(.keynote-entry) { background-color: lightyellow; } 4 | .fc-segunda-view .fc-list-item:nth-child(n+16):not(.keynote-entry) { background-color: lightblue; } 5 | .fc-segunda-view .fc-list-item:nth-child(n+20):not(.keynote-entry) { background-color: lightyellow; } 6 | .fc-segunda-view .fc-list-item:nth-child(n+24):not(.keynote-entry) { background-color: lightblue; } 7 | 8 | .fc-terca-view .fc-list-item:nth-child(n+3):not(.keynote-entry) { background-color: lightyellow; } 9 | .fc-terca-view .fc-list-item:nth-child(n+7):not(.keynote-entry) { background-color: lightblue; } 10 | .fc-terca-view .fc-list-item:nth-child(n+11):not(.keynote-entry) { background-color: lightyellow; } 11 | .fc-terca-view .fc-list-item:nth-child(n+15):not(.keynote-entry) { background-color: lightblue; } 12 | .fc-terca-view .fc-list-item:nth-child(n+19):not(.keynote-entry) { background-color: lightyellow; } 13 | .fc-terca-view .fc-list-item:nth-child(n+23):not(.keynote-entry) { background-color: lightblue; } 14 | 15 | .fc-quarta-view .fc-list-item:nth-child(n+3):not(.keynote-entry) { background-color: lightyellow; } 16 | .fc-quarta-view .fc-list-item:nth-child(n+7):not(.keynote-entry) { background-color: lightblue; } 17 | .fc-quarta-view .fc-list-item:nth-child(n+11):not(.keynote-entry) { background-color: lightyellow; } 18 | .fc-quarta-view .fc-list-item:nth-child(n+15):not(.keynote-entry) { background-color: lightblue; } 19 | .fc-quarta-view .fc-list-item:nth-child(n+19):not(.keynote-entry) { background-color: lightyellow; } 20 | .fc-quarta-view .fc-list-item:nth-child(n+23):not(.keynote-entry) { background-color: lightblue; } 21 | 22 | .fc-quinta-view .fc-list-item:nth-child(n+3):not(.keynote-entry) { background-color: lightyellow; } 23 | .fc-quinta-view .fc-list-item:nth-child(n+7):not(.keynote-entry) { background-color: lightblue; } 24 | .fc-quinta-view .fc-list-item:nth-child(n+11):not(.keynote-entry) { background-color: lightyellow; } 25 | .fc-quinta-view .fc-list-item:nth-child(n+15):not(.keynote-entry) { background-color: lightblue; } 26 | .fc-quinta-view .fc-list-item:nth-child(n+19):not(.keynote-entry) { background-color: lightyellow; } 27 | .fc-quinta-view .fc-list-item:nth-child(n+23):not(.keynote-entry) { background-color: lightblue; } 28 | 29 | .fc-sexta-view .fc-list-item:nth-child(n+3):not(.keynote-entry) { background-color: lightyellow; } 30 | .fc-sexta-view .fc-list-item:nth-child(n+7):not(.keynote-entry) { background-color: lightblue; } 31 | .fc-sexta-view .fc-list-item:nth-child(n+11):not(.keynote-entry) { background-color: lightyellow; } 32 | .fc-sexta-view .fc-list-item:nth-child(n+15):not(.keynote-entry) { background-color: lightblue; } 33 | .fc-sexta-view .fc-list-item:nth-child(n+19):not(.keynote-entry) { background-color: lightyellow; } 34 | .fc-sexta-view .fc-list-item:nth-child(n+23):not(.keynote-entry) { background-color: lightblue; } 35 | 36 | .fc-sabado-view .fc-list-item:nth-child(n+1):not(.keynote-entry) { background-color: lightyellow; } 37 | .fc-sabado-view .fc-list-item:nth-child(n+4):not(.keynote-entry) { background-color: lightblue; } 38 | .fc-sabado-view .fc-list-item:nth-child(n+12):not(.keynote-entry) { background-color: lightyellow; } 39 | 40 | .fc-domingo-view .fc-list-item:nth-child(n+3):not(.keynote-entry) { background-color: lightyellow; } 41 | .fc-domingo-view .fc-list-item:nth-child(n+12):not(.keynote-entry) { background-color: lightblue; } 42 | -------------------------------------------------------------------------------- /src/grade/list.min.css: -------------------------------------------------------------------------------- 1 | .fc-event-dot{display:inline-block;width:10px;height:10px;border-radius:5px}.fc-rtl .fc-list-view{direction:rtl}.fc-list-view{border-width:1px;border-style:solid}.fc .fc-list-table{table-layout:auto}.fc-list-table td{border-width:1px 0 0;padding:8px 14px}.fc-list-table tr:first-child td{border-top-width:0}.fc-list-heading{border-bottom-width:1px}.fc-list-heading td{font-weight:700}.fc-ltr .fc-list-heading-main{float:left}.fc-ltr .fc-list-heading-alt,.fc-rtl .fc-list-heading-main{float:right}.fc-rtl .fc-list-heading-alt{float:left}.fc-list-item.fc-has-url{cursor:pointer}.fc-list-item-marker,.fc-list-item-time{white-space:nowrap;width:1px}.fc-ltr .fc-list-item-marker{padding-right:0}.fc-rtl .fc-list-item-marker{padding-left:0}.fc-list-item-title a{text-decoration:none;color:inherit}.fc-list-item-title a[href]:hover{text-decoration:underline}.fc-list-empty-wrap2{position:absolute;top:0;left:0;right:0;bottom:0}.fc-list-empty-wrap1{width:100%;height:100%;display:table}.fc-list-empty{display:table-cell;vertical-align:middle;text-align:center}.fc-unthemed .fc-list-empty{background-color:#eee} -------------------------------------------------------------------------------- /src/grade/list.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | FullCalendar List View Plugin v4.3.0 3 | Docs & License: https://fullcalendar.io/ 4 | (c) 2019 Adam Shaw 5 | */ 6 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@fullcalendar/core")):"function"==typeof define&&define.amd?define(["exports","@fullcalendar/core"],t):t((e=e||self).FullCalendarList={},e.FullCalendar)}(this,function(e,t){"use strict";var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function r(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var s=function(e){function n(t){var n=e.call(this,t.context)||this;return n.listView=t,n}return r(n,e),n.prototype.attachSegs=function(e){e.length?this.listView.renderSegList(e):this.listView.renderEmptyMessage()},n.prototype.detachSegs=function(){},n.prototype.renderSegHtml=function(e){var n,r=this.context,s=r.view,a=r.theme,i=e.eventRange,o=i.def,l=i.instance,d=i.ui,c=o.url,p=["fc-list-item"].concat(d.classNames),h=d.backgroundColor;return n=o.allDay?t.getAllDayHtml(s):t.isMultiDayRange(i.range)?e.isStart?t.htmlEscape(this._getTimeText(l.range.start,e.end,!1)):e.isEnd?t.htmlEscape(this._getTimeText(e.start,l.range.end,!1)):t.getAllDayHtml(s):t.htmlEscape(this.getTimeText(i)),c&&p.push("fc-has-url"),''+(this.displayEventTime?''+(n||"")+"":"")+'"+t.htmlEscape(o.title||"")+""},n.prototype.computeEventTimeFormat=function(){return{hour:"numeric",minute:"2-digit",meridiem:"short"}},n}(t.FgEventRenderer),a=function(e){function n(n,r,a,o){var l=e.call(this,n,r,a,o)||this;l.computeDateVars=t.memoize(i),l.eventStoreToSegs=t.memoize(l._eventStoreToSegs);var d=l.eventRenderer=new s(l);l.renderContent=t.memoizeRendering(d.renderSegs.bind(d),d.unrender.bind(d)),l.el.classList.add("fc-list-view");for(var c=0,p=(l.theme.getClass("listView")||"").split(" ");c
'+t.htmlEscape(this.opt("noEventsMessage"))+"
"},n.prototype.renderSegList=function(e){var n,r,s,a=this.groupSegsByDay(e),i=t.htmlToElement('
'),o=i.querySelector("tbody");for(n=0;n'+(r?t.buildGotoAnchorHtml(this,e,{class:"fc-list-heading-main"},t.htmlEscape(n.format(e,r))):"")+(s?t.buildGotoAnchorHtml(this,e,{class:"fc-list-heading-alt"},t.htmlEscape(n.format(e,s))):"")+"")},n}(t.View);function i(e){for(var n=t.startOfDay(e.renderRange.start),r=e.renderRange.end,s=[],a=[];na, 29 | footer>a:visited { 30 | color: white; 31 | font-size: 16px; 32 | text-decoration: underline; 33 | } 34 | 35 | .footer-title { 36 | font-size: 20px; 37 | margin: 0 20px; 38 | text-decoration: none; 39 | } 40 | 41 | .footer-title :visited { 42 | color: white; 43 | } 44 | 45 | .space { 46 | flex-grow: 1; 47 | } 48 | 49 | .python-logo { 50 | width: 30px; 51 | height: 30px; 52 | } 53 | 54 | .made-with { 55 | text-align: right; 56 | font-size: 12px; 57 | font-family: 'Roboto Mono', monospace; 58 | } 59 | 60 | .made-with a, 61 | .made-with a:active { 62 | text-decoration: underline; 63 | color: white; 64 | } 65 | 66 | .made-with a:hover { 67 | text-decoration: none; 68 | } 69 | 70 | .made-with span { 71 | color: #f56b6b; 72 | } 73 | 74 | .fc-list-item-title { 75 | display: flex; 76 | flex-direction: row; 77 | justify-content: space-between; 78 | } 79 | 80 | .meta { 81 | font-family: "Lucida Console", Monaco, monospace; 82 | font-size: 14px; 83 | display: flex; 84 | justify-content: space-between; 85 | } 86 | 87 | .speaker { 88 | color: #3a3a3a; 89 | background: #f4f4f4; 90 | padding: 2px 6px; 91 | border-radius: 4px; 92 | } 93 | .speaker-keynote { 94 | background: #FF7F7F; 95 | color: #462984; 96 | } 97 | 98 | .room { 99 | padding: 2px 6px; 100 | margin-left: 20px; 101 | border-radius: 4px; 102 | color: rgb(116, 255, 190); 103 | background: #3C59F0; 104 | } 105 | 106 | .room a { 107 | margin-left: 0; 108 | } 109 | 110 | .pep0 { 111 | color: rgb(116, 255, 190); 112 | background: #3C59F0; 113 | } 114 | 115 | .pep8 { 116 | color: #FF7F7F; 117 | background: #462984; 118 | } 119 | 120 | .pep20 { 121 | color: #2e2912; 122 | background: #fff56f; 123 | } 124 | 125 | .pep20 { 126 | color: #2e2912; 127 | background: #fff56f; 128 | } 129 | 130 | .pep404 { 131 | color: #132b16; 132 | background: #6fff87; 133 | } 134 | 135 | .youtube { 136 | color: rgb(0, 0, 0); 137 | background: #cfcfcf; 138 | padding: 2px 6px; 139 | margin-left: 20px; 140 | border-radius: 4px; 141 | } 142 | 143 | .overlay { 144 | /* Height & width depends on how you want to reveal the overlay (see JS below) */ 145 | height: 100%; 146 | width: 100%; 147 | display: none; 148 | position: fixed; 149 | /* Stay in place */ 150 | z-index: 1; 151 | /* Sit on top */ 152 | left: 0; 153 | top: 0; 154 | background-color: rgb(255, 255, 255); 155 | /* Black fallback color */ 156 | /* background-color: rgba(255, 255, 255, 0.9); */ 157 | /* Black w/opacity */ 158 | overflow-x: hidden; 159 | /* Disable horizontal scroll */ 160 | transition: 0.5s; 161 | /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */ 162 | } 163 | 164 | #overlay-title { 165 | padding-right: 35px; 166 | } 167 | 168 | .overlay-content { 169 | margin: auto; 170 | width: 80%; 171 | } 172 | 173 | .overlay .close-full-detail { 174 | position: absolute; 175 | top: 20px; 176 | right: 45px; 177 | font-size: 60px; 178 | } 179 | 180 | #overlay-author, 181 | #overlay-room { 182 | padding: 4px 8px; 183 | } 184 | 185 | @media only screen and (max-width: 600px) { 186 | .fc-list-item { 187 | display: flex; 188 | flex-direction: column; 189 | } 190 | .fc-list-item-marker { 191 | display: none; 192 | } 193 | .fc-list-item-time, 194 | .fc-list-item-title { 195 | border-width: 0; 196 | } 197 | .fc-list-item-title { 198 | flex-direction: column; 199 | } 200 | .fc-list-item td:last-child { 201 | border-bottom-width: 1px !important; 202 | } 203 | .fc-list-table td { 204 | border-width: 0; 205 | } 206 | .meta { 207 | margin-top: 10px; 208 | } 209 | .speaker { 210 | margin-right: 0; 211 | } 212 | } 213 | 214 | .keynote-entry { 215 | background: #fff0f0; 216 | } 217 | 218 | .keynote-entry a { 219 | font-weight: bolder; 220 | } 221 | 222 | 223 | .cfuso { 224 | background-color: #008CBA; 225 | border: none; 226 | color: white; 227 | padding: 10px 12px; 228 | text-align: center; 229 | text-decoration: none; 230 | display: inline-block; 231 | font-size: 16px; 232 | border-radius: 8px; 233 | } -------------------------------------------------------------------------------- /src/grade/timegrid.min.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";.fc-timeGrid-view .fc-day-grid{position:relative;z-index:2}.fc-timeGrid-view .fc-day-grid .fc-row{min-height:3em}.fc-timeGrid-view .fc-day-grid .fc-row .fc-content-skeleton{padding-bottom:1em}.fc .fc-axis{vertical-align:middle;padding:0 4px;white-space:nowrap}.fc-ltr .fc-axis{text-align:right}.fc-rtl .fc-axis{text-align:left}.fc-time-grid,.fc-time-grid-container{position:relative;z-index:1}.fc-time-grid{min-height:100%}.fc-time-grid table{border:0 hidden transparent}.fc-time-grid>.fc-bg{z-index:1}.fc-time-grid .fc-slats,.fc-time-grid>hr{position:relative;z-index:2}.fc-time-grid .fc-content-col{position:relative}.fc-time-grid .fc-content-skeleton{position:absolute;z-index:3;top:0;left:0;right:0}.fc-time-grid .fc-business-container{position:relative;z-index:1}.fc-time-grid .fc-bgevent-container{position:relative;z-index:2}.fc-time-grid .fc-highlight-container{z-index:3;position:relative}.fc-time-grid .fc-event-container{position:relative;z-index:4}.fc-time-grid .fc-now-indicator-line{z-index:5}.fc-time-grid .fc-mirror-container{position:relative;z-index:6}.fc-time-grid .fc-slats td{height:1.5em;border-bottom:0}.fc-time-grid .fc-slats .fc-minor td{border-top-style:dotted}.fc-time-grid .fc-highlight{position:absolute;left:0;right:0}.fc-ltr .fc-time-grid .fc-event-container{margin:0 2.5% 0 2px}.fc-rtl .fc-time-grid .fc-event-container{margin:0 2px 0 2.5%}.fc-time-grid .fc-bgevent,.fc-time-grid .fc-event{position:absolute;z-index:1}.fc-time-grid .fc-bgevent{left:0;right:0}.fc-time-grid-event{margin-bottom:1px}.fc-time-grid-event-inset{-webkit-box-shadow:0 0 0 1px #fff;box-shadow:0 0 0 1px #fff}.fc-time-grid-event.fc-not-start{border-top-width:0;padding-top:1px;border-top-left-radius:0;border-top-right-radius:0}.fc-time-grid-event.fc-not-end{border-bottom-width:0;padding-bottom:1px;border-bottom-left-radius:0;border-bottom-right-radius:0}.fc-time-grid-event .fc-content{overflow:hidden;max-height:100%}.fc-time-grid-event .fc-time,.fc-time-grid-event .fc-title{padding:0 1px}.fc-time-grid-event .fc-time{font-size:.85em;white-space:nowrap}.fc-time-grid-event.fc-short .fc-content{white-space:nowrap}.fc-time-grid-event.fc-short .fc-time,.fc-time-grid-event.fc-short .fc-title{display:inline-block;vertical-align:top}.fc-time-grid-event.fc-short .fc-time span{display:none}.fc-time-grid-event.fc-short .fc-time:before{content:attr(data-start)}.fc-time-grid-event.fc-short .fc-time:after{content:" - "}.fc-time-grid-event.fc-short .fc-title{font-size:.85em;padding:0}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer{left:0;right:0;bottom:0;height:8px;overflow:hidden;line-height:8px;font-size:11px;font-family:monospace;text-align:center;cursor:s-resize}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after{content:"="}.fc-time-grid-event.fc-selected .fc-resizer{border-radius:5px;border-width:1px;width:8px;height:8px;border-style:solid;border-color:inherit;background:#fff;left:50%;margin-left:-5px;bottom:-5px}.fc-time-grid .fc-now-indicator-line{border-top-width:1px;left:0;right:0}.fc-time-grid .fc-now-indicator-arrow{margin-top:-5px}.fc-ltr .fc-time-grid .fc-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent}.fc-rtl .fc-time-grid .fc-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent} -------------------------------------------------------------------------------- /src/images/banner-site.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/banner-site.jpeg -------------------------------------------------------------------------------- /src/images/cactus.svg: -------------------------------------------------------------------------------- 1 | 0007-desert-plant-cactus -------------------------------------------------------------------------------- /src/images/ccrp.svg: -------------------------------------------------------------------------------- 1 | 009-CCRP -------------------------------------------------------------------------------- /src/images/dinosaur.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/images/download-on-appstore.svg: -------------------------------------------------------------------------------- 1 | 2 | Download_on_the_App_Store_Badge_PTBR_RGB_blk_4SVG_source_092917 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /src/images/entities/GitHub_Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/GitHub_Logo.png -------------------------------------------------------------------------------- /src/images/entities/PSF-Logo-Narrow-Shapes.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 147 | 148 | 149 | 150 | 151 | -------------------------------------------------------------------------------- /src/images/entities/apyb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/apyb.png -------------------------------------------------------------------------------- /src/images/entities/estacio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/estacio.png -------------------------------------------------------------------------------- /src/images/entities/grupozap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/grupozap.png -------------------------------------------------------------------------------- /src/images/entities/labcodes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/labcodes.png -------------------------------------------------------------------------------- /src/images/entities/loadsmart-logo-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/loadsmart-logo-horizontal.png -------------------------------------------------------------------------------- /src/images/entities/logo-evolux.svg: -------------------------------------------------------------------------------- 1 | logo-evolux -------------------------------------------------------------------------------- /src/images/entities/logo-idtrust.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/logo-idtrust.png -------------------------------------------------------------------------------- /src/images/entities/logo_globo_com.svg: -------------------------------------------------------------------------------- 1 | 2 | image/svg+xml -------------------------------------------------------------------------------- /src/images/entities/olist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/olist.png -------------------------------------------------------------------------------- /src/images/entities/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/placeholder.png -------------------------------------------------------------------------------- /src/images/entities/stoodi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/stoodi.png -------------------------------------------------------------------------------- /src/images/entities/usp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/usp.png -------------------------------------------------------------------------------- /src/images/entities/whatsgood.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/entities/whatsgood.png -------------------------------------------------------------------------------- /src/images/facebook.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/images/fotos/alexandre_villares.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/alexandre_villares.jpeg -------------------------------------------------------------------------------- /src/images/fotos/alexis_jawtuschenko.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/alexis_jawtuschenko.jpeg -------------------------------------------------------------------------------- /src/images/fotos/amanda_savluchinske.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/amanda_savluchinske.jpeg -------------------------------------------------------------------------------- /src/images/fotos/anicely_santos.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/anicely_santos.jpeg -------------------------------------------------------------------------------- /src/images/fotos/arthur_fortes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/arthur_fortes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/barbara_barbosa_claudino.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/barbara_barbosa_claudino.jpeg -------------------------------------------------------------------------------- /src/images/fotos/bernardo_fontes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/bernardo_fontes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/betina_costa.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/betina_costa.jpeg -------------------------------------------------------------------------------- /src/images/fotos/bruno_evangelista.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/bruno_evangelista.jpeg -------------------------------------------------------------------------------- /src/images/fotos/bruno_franca.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/bruno_franca.jpeg -------------------------------------------------------------------------------- /src/images/fotos/camilla_martins.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/camilla_martins.jpeg -------------------------------------------------------------------------------- /src/images/fotos/daniele_tavares.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/daniele_tavares.jpeg -------------------------------------------------------------------------------- /src/images/fotos/danielle_monteiro.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/danielle_monteiro.jpeg -------------------------------------------------------------------------------- /src/images/fotos/david_cosac.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/david_cosac.jpeg -------------------------------------------------------------------------------- /src/images/fotos/diego_guimaraes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/diego_guimaraes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/eder_martins.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/eder_martins.jpeg -------------------------------------------------------------------------------- /src/images/fotos/emanuel_lima.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/emanuel_lima.jpeg -------------------------------------------------------------------------------- /src/images/fotos/felipe_fernandes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/felipe_fernandes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/felipe_videira.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/felipe_videira.jpeg -------------------------------------------------------------------------------- /src/images/fotos/fernando_masanori.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/fernando_masanori.jpeg -------------------------------------------------------------------------------- /src/images/fotos/filipe_ximenes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/filipe_ximenes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/flavio_juvenal.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/flavio_juvenal.jpeg -------------------------------------------------------------------------------- /src/images/fotos/gabriel_bellon.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/gabriel_bellon.jpeg -------------------------------------------------------------------------------- /src/images/fotos/giana_de_almeida.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/giana_de_almeida.jpeg -------------------------------------------------------------------------------- /src/images/fotos/grupo_de_estudos_em_data_science.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/grupo_de_estudos_em_data_science.jpeg -------------------------------------------------------------------------------- /src/images/fotos/guilherme_garnier.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/guilherme_garnier.jpeg -------------------------------------------------------------------------------- /src/images/fotos/gustavo_carvalho.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/gustavo_carvalho.jpeg -------------------------------------------------------------------------------- /src/images/fotos/henrique_bastos.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/henrique_bastos.jpeg -------------------------------------------------------------------------------- /src/images/fotos/ingrid_sena.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/ingrid_sena.jpeg -------------------------------------------------------------------------------- /src/images/fotos/jessica_bonson.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/jessica_bonson.jpeg -------------------------------------------------------------------------------- /src/images/fotos/joao_daher.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/joao_daher.jpeg -------------------------------------------------------------------------------- /src/images/fotos/juliana_karoline.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/juliana_karoline.jpeg -------------------------------------------------------------------------------- /src/images/fotos/juliany_raiol.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/juliany_raiol.jpeg -------------------------------------------------------------------------------- /src/images/fotos/katia_nakamura.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/katia_nakamura.jpeg -------------------------------------------------------------------------------- /src/images/fotos/leonardo_belluzzi.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/leonardo_belluzzi.jpeg -------------------------------------------------------------------------------- /src/images/fotos/leonardo_rochael.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/leonardo_rochael.jpeg -------------------------------------------------------------------------------- /src/images/fotos/lidiane_monteiro.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/lidiane_monteiro.jpeg -------------------------------------------------------------------------------- /src/images/fotos/maria_fernanda.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/maria_fernanda.jpeg -------------------------------------------------------------------------------- /src/images/fotos/mariana_albuquerque.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/mariana_albuquerque.jpeg -------------------------------------------------------------------------------- /src/images/fotos/matheus_hernandes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/matheus_hernandes.jpeg -------------------------------------------------------------------------------- /src/images/fotos/melissa_weber.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/melissa_weber.jpeg -------------------------------------------------------------------------------- /src/images/fotos/nelson_nolasco.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/nelson_nolasco.jpeg -------------------------------------------------------------------------------- /src/images/fotos/patricia_guisordi.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/patricia_guisordi.jpeg -------------------------------------------------------------------------------- /src/images/fotos/paulo_santana.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/paulo_santana.jpeg -------------------------------------------------------------------------------- /src/images/fotos/pietra_freitas.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/pietra_freitas.jpeg -------------------------------------------------------------------------------- /src/images/fotos/pyladies_brasil.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/pyladies_brasil.jpeg -------------------------------------------------------------------------------- /src/images/fotos/pyladies_manaus.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/pyladies_manaus.jpeg -------------------------------------------------------------------------------- /src/images/fotos/rafael_calixto.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/rafael_calixto.jpeg -------------------------------------------------------------------------------- /src/images/fotos/rafael_henrique.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/rafael_henrique.jpeg -------------------------------------------------------------------------------- /src/images/fotos/rebeca_sarai.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/rebeca_sarai.jpeg -------------------------------------------------------------------------------- /src/images/fotos/renne_rocha.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/renne_rocha.jpeg -------------------------------------------------------------------------------- /src/images/fotos/rodrigo_mendonca.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/rodrigo_mendonca.jpeg -------------------------------------------------------------------------------- /src/images/fotos/ryllari_santana.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/ryllari_santana.jpeg -------------------------------------------------------------------------------- /src/images/fotos/sam_agnew.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/sam_agnew.jpeg -------------------------------------------------------------------------------- /src/images/fotos/thais_almeida.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/thais_almeida.jpeg -------------------------------------------------------------------------------- /src/images/fotos/tyrone_damasceno.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/tyrone_damasceno.jpeg -------------------------------------------------------------------------------- /src/images/fotos/william_oliveira.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/william_oliveira.jpeg -------------------------------------------------------------------------------- /src/images/fotos/yan_orestes.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/fotos/yan_orestes.jpeg -------------------------------------------------------------------------------- /src/images/google-play-badge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/google-play-badge.png -------------------------------------------------------------------------------- /src/images/hayline.svg: -------------------------------------------------------------------------------- 1 | 008-hayline-icon -------------------------------------------------------------------------------- /src/images/instagram.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/images/keynotes/carol-willing.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/carol-willing.jpg -------------------------------------------------------------------------------- /src/images/keynotes/debora-azevedo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/debora-azevedo.jpg -------------------------------------------------------------------------------- /src/images/keynotes/felipemorais.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/felipemorais.jpg -------------------------------------------------------------------------------- /src/images/keynotes/laisvarejao.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/laisvarejao.jpg -------------------------------------------------------------------------------- /src/images/keynotes/lorenamesa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/lorenamesa.jpg -------------------------------------------------------------------------------- /src/images/keynotes/luciano-ramalho.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/keynotes/luciano-ramalho.jpg -------------------------------------------------------------------------------- /src/images/linkedin.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/images/logo_branco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/logo_branco.png -------------------------------------------------------------------------------- /src/images/logo_colorido.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/logo_colorido.png -------------------------------------------------------------------------------- /src/images/logo_python_2019.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/logo_python_2019.png -------------------------------------------------------------------------------- /src/images/logo_python_2019_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/logo_python_2019_white.png -------------------------------------------------------------------------------- /src/images/main_logo_ribeirao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/main_logo_ribeirao.png -------------------------------------------------------------------------------- /src/images/py-logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/py-logo-white.png -------------------------------------------------------------------------------- /src/images/pylogo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 11 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /src/images/python_brasil_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/python_brasil_logo.png -------------------------------------------------------------------------------- /src/images/python_brasil_logo_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/images/python_brasil_logo_white.png -------------------------------------------------------------------------------- /src/images/twitter.svg: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | -------------------------------------------------------------------------------- /src/pdfs/cdc/cdc-protocolo-relatar-incidentes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/pdfs/cdc/cdc-protocolo-relatar-incidentes.pdf -------------------------------------------------------------------------------- /src/pdfs/cdc/cdc-protocolo-time-de-resposta.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/pdfs/cdc/cdc-protocolo-time-de-resposta.pdf -------------------------------------------------------------------------------- /src/pdfs/plano_de_patrocinio.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/pdfs/plano_de_patrocinio.pdf -------------------------------------------------------------------------------- /src/pdfs/sponsorship_plan.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/pdfs/sponsorship_plan.pdf -------------------------------------------------------------------------------- /src/sass/appbanner.sass: -------------------------------------------------------------------------------- 1 | .app-banners-container 2 | display: flex 3 | justify-content: center 4 | align-items: center 5 | position: relative 6 | z-index: 2 7 | width: 100% 8 | .app-banners 9 | padding: 10px 10 | background-color: $secondary 11 | color: white 12 | display: flex 13 | flex-wrap: wrap 14 | justify-content: center 15 | align-items: center 16 | p 17 | margin: 0 18 | font-size: 16px 19 | 20 | @media (min-width: 1024px) 21 | text-align: center 22 | flex-wrap: nowrap 23 | padding: 10px 30px 24 | border-radius: 50px 25 | 26 | .stores-banners 27 | display: flex 28 | justify-content: center 29 | align-items: center 30 | flex-wrap: wrap 31 | @media (min-width: 1024px) 32 | flex-wrap: nowrap 33 | padding-left: 20px 34 | 35 | img 36 | display: block 37 | width: 150px 38 | @media(min-width: 1024px) 39 | width: 200px 40 | 41 | height: auto 42 | flex: 1 43 | &.apple 44 | width: 120px 45 | @media(min-width: 1024px) 46 | width: 165px 47 | -------------------------------------------------------------------------------- /src/sass/colors.sass: -------------------------------------------------------------------------------- 1 | $primary: #09113a 2 | $primary-light: #363665 3 | $primary-dark: #000016 4 | 5 | $secondary: #d33b70 6 | $secondary-light: #ff709e 7 | $secondary-dark: #9d0045 8 | 9 | $neutral-dark: #E1E2E1 10 | $neutral-light: #F5F5F6 11 | -------------------------------------------------------------------------------- /src/sass/main.sass: -------------------------------------------------------------------------------- 1 | .main 2 | background: $secondary 3 | background: url(/assets/images/banner-site.jpeg) 4 | background-size: cover 5 | background-position: top center 6 | min-height: 650px 7 | position: relative 8 | 9 | @media screen and (max-width: 600px) 10 | min-height: 500px 11 | 12 | @media screen and (max-width: 400px) 13 | min-height: 370px 14 | 15 | .main-button 16 | position: absolute 17 | bottom: 10% 18 | width: 100% 19 | > a.button 20 | background: $secondary 21 | padding: 15px 22 | color: $neutral-dark 23 | font-size: 25px 24 | display: block 25 | text-align: center 26 | border-radius: 50px 27 | text-decoration: none 28 | width: 300px 29 | margin: 0 auto 30 | 31 | .nav-mobile 32 | width: 50px 33 | height: 50px 34 | border-radius: 50% 35 | background: $neutral-dark 36 | position: fixed 37 | right: 20px 38 | top: 20px 39 | cursor: pointer 40 | z-index: 10px 41 | 42 | &.close > .hamburguer 43 | background: transparent 44 | 45 | &:after 46 | top: 0px 47 | transform: rotateZ(-45deg) 48 | 49 | &:before 50 | top: 0px 51 | transform: rotateZ(45deg) 52 | 53 | .hamburguer 54 | height: 4px 55 | margin: 0 auto 56 | background: $secondary-dark 57 | width: 20px 58 | position: relative 59 | top: calc(50% - 2px) 60 | 61 | &:before, &:after 62 | content: ' ' 63 | position: absolute 64 | height: 4px 65 | width: 20px 66 | background: $secondary-dark 67 | 68 | &:after 69 | top: -8px 70 | 71 | &:before 72 | top: 8px 73 | 74 | @media screen and (min-width: 1024px) 75 | display: none 76 | 77 | & > .call 78 | background: url(/assets/images/logo_colorido.png) 79 | background-position: center 80 | background-size: contain 81 | background-repeat: no-repeat 82 | width: 100% 83 | height: 300px 84 | display: block 85 | position: absolute 86 | top: 100px 87 | 88 | @media screen and (min-width: 600px) 89 | width: 100% 90 | @media screen and (min-width: 1024px) 91 | width: 100% 92 | 93 | & > .cloud 94 | background-size: contain 95 | background-position: center 96 | background-repeat: repeat-y 97 | width: 100% 98 | min-height: 600px 99 | 100 | & > .nav 101 | z-index: 6 102 | 103 | & > .header 104 | position: fixed 105 | top: 0 106 | bottom: 0 107 | z-index: 5 108 | width: 100% 109 | border-radius: 0 110 | background: $secondary-light 111 | display: none 112 | 113 | &.active 114 | display: block 115 | 116 | & > ul 117 | list-style: none 118 | 119 | & > li 120 | font-size: 24px 121 | text-align: center 122 | padding: 24px 123 | 124 | & > a 125 | text-decoration: none 126 | padding: 0 24px 127 | color: white 128 | 129 | @media screen and (min-width: 1024px) 130 | top: 10px 131 | right: 10px 132 | bottom: auto 133 | width: auto 134 | display: block 135 | list-style: none 136 | line-height: 24px 137 | float: right 138 | border-radius: 50px 139 | padding: 0 24px 140 | 141 | & > ul > li 142 | display: inline-block 143 | vertical-align: top 144 | font-size: 16px 145 | padding: 16px 4px 146 | 147 | & > .pylogo-main 148 | background: url(/assets/images/pylogo-2019-colored.svg) 149 | background-repeat: no-repeat 150 | background-size: contain 151 | background-position: center 152 | display: block 153 | width: 40px 154 | height: 40px 155 | position: absolute 156 | top: 25px 157 | left: 10px 158 | 159 | @media screen and (min-width: 1024px) 160 | top: 10px 161 | left: 10px 162 | -------------------------------------------------------------------------------- /src/sass/style.sass: -------------------------------------------------------------------------------- 1 | @import "./colors" 2 | @import "./main" 3 | @import "./appbanner" 4 | 5 | * 6 | box-sizing: border-box 7 | padding: 0 8 | margin: 0 9 | font-family: 'Roboto', sans-serif, serif 10 | scroll-behavior: smooth 11 | 12 | .core-title 13 | font-size: 55px 14 | color: $secondary-dark 15 | text-align: center 16 | display: block 17 | position: relative 18 | padding: 0 0 35px 19 | margin: 0 0 35px 20 | 21 | @media screen and (min-width: 720px) 22 | font-size: 80px 23 | 24 | &:after 25 | content: ' ' 26 | width: 100px 27 | height: 15px 28 | border-radius: 10px 29 | background-color: $secondary-light 30 | display: block 31 | position: absolute 32 | bottom: -5px 33 | left: calc(50% - 50px) 34 | 35 | .rounded 36 | background: #000 37 | position: relative 38 | padding: 20px 0 80px 39 | 40 | p 41 | font-family: Roboto 42 | font-size: 20px 43 | text-align: justify 44 | color: $secondary-dark 45 | 46 | h1 47 | @extend .core-title 48 | 49 | h2 50 | @extend .core-title 51 | font-size: 45px 52 | 53 | .soon 54 | min-height: 100px 55 | > p 56 | text-align: center 57 | font-size: 18px 58 | .signal 59 | background: $secondary-dark 60 | width: 100px 61 | height: 100px 62 | margin: 0 auto 20px auto 63 | display: flex 64 | flex-direction: column 65 | justify-items: center 66 | justify-content: center 67 | align-items: center 68 | border: 2px solid #000 69 | border-radius: 50% 70 | 71 | & > svg 72 | width: 50% 73 | display: block 74 | margin: 0 auto 5px 75 | 76 | .signal.ouro 77 | color: #f5cc7d 78 | border-color: #f5cc7d 79 | 80 | & > svg path 81 | fill: #f5cc7d!important 82 | 83 | .cloud 84 | background: url(/assets/images/cloud_background_2.svg) 85 | background-position: center 86 | background-size: contain 87 | opacity: .6 88 | 89 | 90 | .about 91 | background: $primary-dark 92 | padding-bottom: 200px 93 | 94 | a 95 | color: $secondary-light 96 | 97 | .signal 98 | z-index: 4 99 | position: absolute 100 | right: 0 101 | left: 0 102 | width: 150px 103 | height: 150px 104 | @media screen and (min-width: 1024px) 105 | right: 10% 106 | left: auto 107 | width: 200px 108 | height: 200px 109 | 110 | & > svg 111 | width: 40% 112 | 113 | > a 114 | display: block 115 | padding: 8px 16px 116 | background-color: #28223e 117 | border-radius: 24px 118 | color: white 119 | text-decoration: none 120 | cursor: pointer 121 | font-size: 14px 122 | 123 | 124 | p 125 | display: block 126 | max-width: 900px 127 | width: 100% 128 | padding: 20px 129 | margin: 0 auto 130 | text-align: center 131 | font-size: 16px 132 | color: white 133 | 134 | @media screen and (min-width: 1024px) 135 | font-size: 24px 136 | padding: 16px 137 | 138 | 139 | 140 | 141 | 142 | 143 | &:before 144 | background: $primary-dark 145 | 146 | .lineup 147 | background: $neutral-dark 148 | 149 | &:before 150 | background: $neutral-dark 151 | 152 | h1 153 | font-size: 40px 154 | 155 | @media screen and (min-width: 720px) 156 | font-size: 80px 157 | 158 | .tutorial 159 | max-width: 600px 160 | margin: 20px auto 50px auto 161 | padding: 50px 20px 50px 20px 162 | border-radius: 3px 163 | background: #f9f9f9 164 | box-shadow: 2px 2px 2px 1px rgba(255, 255, 255, 0.2) 165 | 166 | > p 167 | text-align: center 168 | font-size: 16px 169 | color: $neutral-dark 170 | > h3 171 | text-align: center 172 | font-size: 24px 173 | color: $secondary-light 174 | margin-bottom: 8px 175 | 176 | > a.button 177 | display: block 178 | width: auto 179 | max-width: 300px 180 | margin: 40px auto 20px auto 181 | text-align: center 182 | padding: 16px 183 | border-radius: 50px 184 | font-size: 18px 185 | background: $neutral-dark 186 | color: white 187 | text-decoration: none 188 | 189 | 190 | .keynote 191 | background: $primary-light 192 | 193 | & > .cloud 194 | width: 100% 195 | min-height: 600px 196 | position: absolute 197 | opacity: .3 198 | 199 | &:before 200 | background: $primary-light 201 | 202 | h2 203 | color: white 204 | 205 | .keynoter 206 | display: block 207 | padding: 15px 60px 55px 208 | 209 | @media screen and (min-width: 720px) 210 | display: grid 211 | padding: 15px 60px 55px 212 | align-items: center 213 | grid-column-gap: 30px 214 | 215 | & > .photo 216 | border-radius: 50% 217 | height: 150px 218 | max-width: 150px 219 | background-size: contain 220 | background-position: center center 221 | position: relative 222 | margin: 0 auto 20px auto 223 | 224 | @media screen and (min-width: 720px) 225 | height: 180px 226 | max-width: none 227 | margin: 0 228 | 229 | @media screen and (min-width: 1024px) 230 | height: 280px 231 | max-width: none 232 | margin: 0 233 | 234 | > .social 235 | display: block 236 | position: absolute 237 | width: 100% 238 | text-align: center 239 | bottom: -7% 240 | > a 241 | display: inline-block 242 | vertical-align: middle 243 | width: 40px 244 | height: 40px 245 | border-radius: 50% 246 | background: white 247 | box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2) 248 | 249 | @media screen and (min-width: 1024px) 250 | width: 50px 251 | height: 50px 252 | > svg 253 | width: 100% 254 | height: 100% 255 | fill: $neutral-dark 256 | 257 | & > .content 258 | text-align: center 259 | @media screen and (min-width: 720px) 260 | text-align: left 261 | & > h3 262 | font-size: 34px 263 | font-weight: bold 264 | margin-bottom: 0px 265 | color: $secondary-light 266 | 267 | & > h4 268 | font-weight: normal 269 | margin-bottom: 20px 270 | color: $secondary-light 271 | 272 | & > p 273 | font-size: 18px 274 | color: white 275 | 276 | 277 | &:nth-child(even) 278 | grid-template-columns: 100px auto 0 279 | 280 | @media screen and (min-width: 720px) 281 | grid-template-columns: 180px auto 5% 282 | 283 | @media screen and (min-width: 1024px) 284 | grid-template-columns: 280px auto 15% 285 | 286 | &:nth-child(odd) 287 | grid-template-columns: 0 auto 100px 288 | 289 | @media screen and (min-width: 720px) 290 | grid-template-columns: 5% auto 180px 291 | 292 | @media screen and (min-width: 1024px) 293 | grid-template-columns: 15% auto 280px 294 | 295 | & > .content 296 | grid-column: 2 297 | grid-row: 1 298 | @media screen and (min-width: 720px) 299 | text-align: right 300 | 301 | & > .photo 302 | grid-column: 3 303 | grid-row: 1 304 | 305 | .sponsors 306 | background: $primary 307 | 308 | &:before 309 | background: $secondary 310 | background-image: linear-gradient(to bottom, $primary-dark 30%, $primary) 311 | 312 | .sponsor-action 313 | text-align: center 314 | position: relative 315 | 316 | > p 317 | font-size: 20px 318 | font-weight: bold 319 | text-transform: uppercase 320 | color: $secondary 321 | text-align: center 322 | margin: 0 auto 323 | padding: 8px 324 | 325 | @media screen and (min-width: 720px) 326 | font-size: 32px 327 | padding: 16px 328 | 329 | @media screen and (min-width: 1024px) 330 | font-size: 40px 331 | padding: 16px 332 | 333 | .sponsor-button-container 334 | display: flex 335 | align-items: center 336 | justify-content: center 337 | margin-bottom: 30px 338 | 339 | .button 340 | background: $secondary-light 341 | padding: 16px 342 | margin: 10px 343 | color: white 344 | font-size: 16px 345 | display: inline 346 | text-align: center 347 | border-radius: 50px 348 | text-decoration: none 349 | max-width: 250px 350 | top: 120px 351 | left: 0 352 | right: 0 353 | 354 | h1 355 | @extend .core-title 356 | padding-top: 60px 357 | font-size: 40px 358 | 359 | &:after 360 | background-color: $secondary-light 361 | h2 362 | &:after 363 | background-color: $secondary-light 364 | 365 | 366 | & > .sponsor-section 367 | background: $primary-dark 368 | 369 | & > div 370 | width: 100% 371 | padding: 20px 372 | 373 | .signal 374 | background: #28223e 375 | 376 | .diamante 377 | color: #f2f2f2 378 | border-color: #f2f2f2 379 | 380 | & > svg path 381 | fill: #f2f2f2!important 382 | 383 | .platina 384 | color: #b0bec5 385 | border-color: #b0bec5 386 | 387 | & > svg path 388 | fill: #b0bec5!important 389 | 390 | .ouro 391 | color: #f5cc7d 392 | border-color: #f5cc7d 393 | 394 | & > svg path 395 | fill: #f5cc7d!important 396 | 397 | .prata 398 | color: #eceff1 399 | border-color: #eceff1 400 | 401 | & > svg path 402 | fill: #eceff1!important 403 | 404 | .bronze 405 | color: #953f27 406 | border-color: #953f27 407 | 408 | & > svg path 409 | fill: #953f27!important 410 | 411 | &:nth-child(1) 412 | background: $primary-dark 413 | 414 | 415 | &:nth-child(2) 416 | background: $primary-dark 417 | padding-top: 50px 418 | 419 | &:nth-child(3) 420 | background: $primary-dark 421 | padding-top: 50px 422 | padding-bottom: 80px 423 | 424 | > .sponsor-entity-container 425 | display: block 426 | @media screen and (min-width: 896px) 427 | display: flex 428 | flex-flow: wrap 429 | justify-content: center 430 | width: 100% 431 | 432 | > .sponsor-entity 433 | text-align: center 434 | margin: 10px auto 435 | width: 100px 436 | height: 100px 437 | line-height: 100px 438 | @media screen and (min-width: 896px) 439 | margin: 10px 30px 440 | width: 150px 441 | height: 150px 442 | line-height: 150px 443 | 444 | > a 445 | display: inline 446 | 447 | > img 448 | max-height: 100% 449 | max-width: 100% 450 | vertical-align: middle 451 | 452 | > .prata 453 | width: 125px 454 | height: 125px 455 | line-height: 125px 456 | @media screen and (min-width: 896px) 457 | width: 187px 458 | height: 187px 459 | line-height: 187px 460 | 461 | > .ouro 462 | width: 156px 463 | height: 156px 464 | line-height: 156px 465 | @media screen and (min-width: 896px) 466 | width: 233px 467 | height: 233px 468 | line-height: 233px 469 | 470 | > .platina 471 | width: 195px 472 | height: 195px 473 | line-height: 195px 474 | @media screen and (min-width: 896px) 475 | width: 291px 476 | height: 291px 477 | line-height: 291px 478 | 479 | > .diamante 480 | width: 243px 481 | height: 243px 482 | line-height: 243px 483 | @media screen and (min-width: 896px) 484 | width: 363px 485 | height: 363px 486 | line-height: 363px 487 | 488 | .partners 489 | padding-top: 50px 490 | position: relative 491 | > hr 492 | height: 4px 493 | background: #28223e 494 | position: absolute 495 | top: 0 496 | left: 0 497 | right: 0 498 | margin: 0 auto 499 | width: 230px 500 | @media screen and (min-width: 550px) 501 | width: 500px 502 | 503 | .footer 504 | background: $primary-dark 505 | padding: 0 0 20px 506 | 507 | &:before 508 | background: $primary-dark 509 | 510 | & > div 511 | max-width: 900px 512 | width: 100% 513 | margin: 0 auto 514 | padding: 20px 515 | 516 | @media screen and (min-width: 896px) 517 | display: grid 518 | grid-template-columns: 50% 50% 519 | 520 | .social 521 | text-align: center 522 | grid-row: 1 523 | grid-column: 2 524 | position: relative 525 | 526 | .button.disabled 527 | opacity: 0.6 528 | pointer-events: none 529 | cursor: default 530 | 531 | span.soon-tag 532 | display: block 533 | padding: 8px 534 | background-color: white 535 | color: $secondary-light 536 | font-weight: bold 537 | position: absolute 538 | border-radius: 3px 539 | font-size: 12px 540 | top: 0 541 | right: -10px 542 | transform: rotate(20deg) 543 | 544 | & > .social-icons 545 | display: inline-block 546 | margin-right: 20px 547 | text-decoration: none 548 | 549 | &:last-child 550 | margin-right: 0 551 | 552 | & > svg 553 | width: 60px 554 | margin-top: 20px 555 | fill: $secondary-dark 556 | path 557 | fill: $secondary-dark!important 558 | 559 | .newsletter 560 | > p 561 | display: inline-block 562 | font-size: 14px 563 | padding: 20px 0 564 | color: $secondary-light 565 | > form 566 | margin: 0 auto 567 | padding: 8px 0 568 | @media screen and (min-width: 896px) 569 | margin: 0 40px 570 | 571 | > input 572 | display: inline-block 573 | width: 80% 574 | height: 42px 575 | border-radius: 3px 576 | border: 1px solid white 577 | padding: 0 8px 578 | 579 | > button 580 | display: inline-block 581 | height: 42px 582 | padding: 8px 583 | margin: 0 584 | color: white 585 | background-color: $secondary-light 586 | border-radius: 3px 587 | border: 1px solid white 588 | cursor: pointer 589 | 590 | &:hover 591 | background-color: $secondary 592 | border-color: $secondary 593 | color: white 594 | .contact-info 595 | display: block 596 | > p 597 | display: block 598 | font-size: 14px 599 | text-align: center 600 | color: white 601 | > a 602 | color: $secondary 603 | 604 | .nav 605 | grid-row: 1 606 | grid-column: 1 607 | 608 | & > ul 609 | list-style: none 610 | padding: 0 611 | text-align: center 612 | 613 | @media screen and (min-width: 896px) 614 | text-align: left 615 | float: left 616 | margin-right: 60px 617 | 618 | & > .header 619 | color: $secondary-dark 620 | font-size: 28px 621 | font-weight: 600 622 | margin-top: 30px 623 | 624 | @media screen and (min-width: 896px) 625 | margin-top: 0px 626 | 627 | & > .item 628 | margin-top: 5px 629 | 630 | &:first-child 631 | margin-top: 25px 632 | 633 | & > a 634 | text-decoration: none 635 | color: white 636 | &:hover 637 | font-weight: bold 638 | 639 | 640 | &:after 641 | content: ' ' 642 | display: block 643 | clear: both 644 | 645 | .button 646 | background: $secondary 647 | padding: 15px 648 | color: $neutral-dark 649 | font-size: 25px 650 | display: block 651 | text-align: center 652 | border-radius: 50px 653 | text-decoration: none 654 | 655 | 656 | 657 | .copyright 658 | display: block 659 | margin: 20px auto 660 | 661 | > p 662 | text-align: center 663 | font-size: 12px 664 | margin-bottom: 10px 665 | color: $secondary-light 666 | 667 | @media screen and (min-width: 896px) 668 | margin: 40px auto 669 | 670 | .prefooter 671 | background: $secondary-dark 672 | min-height: 60px 673 | 674 | &:before 675 | background: $secondary-dark 676 | -------------------------------------------------------------------------------- /src/scripts/index.js: -------------------------------------------------------------------------------- 1 | window.onload = function () { 2 | const nav = document.getElementById('header-nav'); 3 | document.getElementById('mobile').onclick = function () { 4 | this.classList.toggle('close'); 5 | nav.classList.toggle('active'); 6 | } 7 | } -------------------------------------------------------------------------------- /src/submissao-de-palestras/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Submissão de Palestras 7 | 8 | 9 |

Formulário de submissão de palestras

10 | 11 | 12 | -------------------------------------------------------------------------------- /src/templates/index.hbs: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Python Brasil 2020 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | {{> main }} 27 | {{> about }} 28 | {{!-- {{> keynotes }} --}} 29 | {{!-- {{> tutorials }} --}} 30 | {{> sponsors }} 31 | {{> prefooter }} 32 | {{> footer }} 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /src/templates/partials/.main.hbs.swp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/templates/partials/.main.hbs.swp -------------------------------------------------------------------------------- /src/templates/partials/about.hbs: -------------------------------------------------------------------------------- 1 |
2 | {{{ about.html }}} 3 |
4 | 5 | 9 |
10 |
11 | -------------------------------------------------------------------------------- /src/templates/partials/footer.hbs: -------------------------------------------------------------------------------- 1 | 49 | -------------------------------------------------------------------------------- /src/templates/partials/keynotes.hbs: -------------------------------------------------------------------------------- 1 |
2 |

Keynotes

3 | {{#each keynotes}} 4 | {{#if meta.publish}} 5 |
6 |
7 | 24 |
25 |
26 | {{{ html }}} 27 |
28 | 29 |
30 | {{/if}} 31 | {{/each}} 32 |
33 | -------------------------------------------------------------------------------- /src/templates/partials/lineup.hbs: -------------------------------------------------------------------------------- 1 |
2 |

Programação

3 | 4 |
5 |
6 |

em breve mais informações

7 |
8 |
9 |

Submissão de Sprints Python Brasil 2019

10 |

O Sprint é um espaço proporcionado pela conferência Python Brasil para desenvolvimento e contribuição de projetos open source.

11 | submeta seu sprint 12 |
13 |
14 | -------------------------------------------------------------------------------- /src/templates/partials/main.hbs: -------------------------------------------------------------------------------- 1 |
2 | 5 | 6 | 36 | 42 |
43 | -------------------------------------------------------------------------------- /src/templates/partials/prefooter.hbs: -------------------------------------------------------------------------------- 1 |
2 | -------------------------------------------------------------------------------- /src/templates/partials/pylogo.hbs: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 9 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /src/templates/partials/sponsors.hbs: -------------------------------------------------------------------------------- 1 |
2 | 14 | {{!-- --}} 54 |
55 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/facebook.hbs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/github.hbs: -------------------------------------------------------------------------------- 1 | 2 | 16 | 19 | 20 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/instagram.hbs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/linkedin.hbs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/pylogo.hbs: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 9 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /src/templates/partials/svgs/twitter.hbs: -------------------------------------------------------------------------------- 1 | 4 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/templates/partials/tutorials.hbs: -------------------------------------------------------------------------------- 1 |
2 |

Tutoriais

3 |
4 |

Faça a sua inscrição ->gratuitamente<- para os
Tutoriais da Python Brasil 2019

5 |

Tutoriais são atividades práticas, onde os participantes têm contato com a linguagem Python e tecnologias relacionadas. Os tutoriais da Python Brasil 2019 acontecerão nos dias 23 e 24 de Outubro, no Centro Universitário Estácio, em Ribeirão Preto - SP.

6 | Inscrições 7 |
8 |
9 | -------------------------------------------------------------------------------- /src/templates/programacao.hbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pythonbrasil/pybr2020-site/beec1999f4cf0fadf06eb2aeda713703a9d31212/src/templates/programacao.hbs --------------------------------------------------------------------------------