diff --git a/.github/ISSUE_TEMPLATE/modelo-problema-generico.md b/.github/ISSUE_TEMPLATE/modelo-problema-generico.md new file mode 100644 index 0000000..780e5ec --- /dev/null +++ b/.github/ISSUE_TEMPLATE/modelo-problema-generico.md @@ -0,0 +1,11 @@ +--- +name: Modelo de problema genérico +about: Pode ser usado para relatar qualquer tipo de problema envolvendo o site da comunidade +title: Problema envolvendo [MARCADOR DE POSIÇÃO] +labels: '' +assignees: '' +--- + +**Qual é o problema?** + +**Qual a sugestão de alteração?** \ No newline at end of file diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..96afbb4 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,7 @@ +**Qual o objetivo deste PR?** + + +**O que foi feito para alcançar o objetivo?** + + +**Como testar se as alterações realmente funcionam?** diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5902ab8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,114 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# Pasta do ambiente virtual +.venv + +# Pastas e arquivos gerados gerada pelo Nikola : https://getnikola.com/ +cache/ +saida-nikola/ \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e09ac25 --- /dev/null +++ b/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2021 Python Floripa + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index e69de29..7847f10 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,60 @@ +![alt text](site_python_floripa/images/LOGO_PYTHON_FLORIPA_HORIZONTAL.svg "Logo Python Floripa") +# Site Python Floripa 2021 + +Repositório do site da comunidade Python Floripa versão 2021! + +## Sumário + +- [Inicialização](#Inicialização) + - [Windows](#Windows) + - [Linux/WSL](#Linux/WSL) + - [Mac OS](#Mac-OS) +- [Como Contribuir](#Como-Contribuir) +- [Código de Conduta](#Código-de-Conduta) +- [Licença](#Licença) + +## Inicialização + +Para inicializar o site eu sua máquina pessoal, siga a seção que corresponde ao seu sistema operacional. + +### Windows + +Contribua escrevendo como executar o nosso site no sistema operacional Windows! + +### Linux/WSL + +Na raiz do projeto, execute +``` +source scripts/inicializacao.sh +``` +O script irá criar e ativar um ambiente virtual, instalar as dependências do projeto e iniciar o servidor no site no endereço de hospedagem local (`127.0.0.1`), na porta `8000`. + +Para para o servidor, execute `Ctrl+C`. + +Para desativar o ambiente virtual, execute `deactivate`. + +Para ativar o ambiente virtual, na raiz do projeto, execute +``` +source .venv/bin/activate +``` + +Para iniciar o servidor, na pasta `site_python_floripa`, execute +``` +nikola auto +``` + +### Mac OS + +Contribua escrevendo como executar o nosso site no sistema operacional Mac OS! + +## Como Contribuir + +Ajude nossa comunidade a crescer ainda mais contribuindo e sugerindo melhorias à nossos projetos! Para mais informações em como contribuir, confira nosso [guia de como contribuir](docs/CONTRIBUTING.md) e também nossa [Wiki](https://github.com/PythonFloripa/pythonfloripa.github.io/wiki)! + +## Código de Conduta + +Todos que interagem com os projetos da nossa comunidade estão sujeitos à nosso [código de conduta](docs/CODE_OF_CONDUCT.md). + +## Licença + +Esse repositório é licenciado sob os termos da [Licença MIT](LICENSE). diff --git a/docs/CODE_OF_CONDUCT.md b/docs/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..dbeb2b7 --- /dev/null +++ b/docs/CODE_OF_CONDUCT.md @@ -0,0 +1,3 @@ +# Código de Conduta + +Nossa Comunidade é compromissada em acolher bem todos seus membros. Para tal, seguimos o [código de conduta da Python Brasil](https://python.org.br/cdc/). \ No newline at end of file diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md new file mode 100644 index 0000000..5ff1696 --- /dev/null +++ b/docs/CONTRIBUTING.md @@ -0,0 +1,7 @@ +# Como contribuir com o site da Python Floripa + +Caso queira relatar um problema ou melhoria, confira se esta já não existe. Caso ainda tenha sido relatada, crie uma nova "issue" na seção "Issues" do repositório. Selecione o modelo de problema que melhor se adeque. Selecione também tags relacionadas ao tema. Por fim, selecione o quadro de tarefas "Site Python Floripa 2021" e crie a "issue". + +Caso queira contribuir nas tarefas existentes, mova a tarefa quer trabalhar para coluna em andamento e atribua-a ao seu usuário do GitHub. Se for necessário alterações no código, crie uma nova branch a partir da `development`. Quando terminá-la, abra um PR preenchendo corretamente o modelo de PR. + +Caso queira contribuir com nossa [Wiki](https://github.com/PythonFloripa/pythonfloripa.github.io/wiki), usamos markdown para sua edição. diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..a36d1e9 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +Nikola[extras] \ No newline at end of file diff --git a/scripts/inicializacao.sh b/scripts/inicializacao.sh new file mode 100644 index 0000000..da2ccab --- /dev/null +++ b/scripts/inicializacao.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +virtualenv .venv +. .venv/bin/activate +pip install -U pip setuptools wheel +pip install -r requirements.txt +cd site_python_floripa +nikola auto diff --git a/site_python_floripa/.doit.db b/site_python_floripa/.doit.db new file mode 100644 index 0000000..f15822c Binary files /dev/null and b/site_python_floripa/.doit.db differ diff --git a/site_python_floripa/conf.py b/site_python_floripa/conf.py new file mode 100644 index 0000000..aed5988 --- /dev/null +++ b/site_python_floripa/conf.py @@ -0,0 +1,105 @@ +# -*- coding: utf-8 -*- +import time + +BLOG_AUTHOR = 'Python Floripa' +BLOG_TITLE = 'Python Floripa' +BLOG_EMAIL = 'pythonflorianopolis@gmail.com' +BLOG_DESCRIPTION = 'Site da comunidade Python Floripa!' + +DEFAULT_LANG = 'pt_br' + +SITE_URL = 'http://floripa.sc.python.org.br/' +BASE_URL = 'http://pythonfloripa.github.io/' +PRETTY_URLS = True + +NAVIGATION_LINKS = { + DEFAULT_LANG: ( + ('/', 'Início'), + ), +} + +POSTS = ( + ('posts/*.md', 'posts', 'post.tmpl'), +) +PAGES = ( + ('pages/*.md', '', 'page.tmpl'), +) +INDEX_PATH = 'pages/inicio.md' + +THEME = 'python-floripa' +THEME_CONFIG = { + DEFAULT_LANG: { + 'navbar_light': False, + 'navbar_custom_bg': 'bg-python-floripa', + } +} +EXTRA_HEAD_DATA = ''' + +''' +SHOW_SOURCELINK = False +CODE_COLOR_SCHEME = 'paraiso-dark' + +OUTPUT_FOLDER = 'saida-nikola' +CACHE_FOLDER = 'cache' + +TIMEZONE = 'America/Sao_Paulo' +DATE_FORMAT = 'dd/MM/yyyy HH:mm' +LUXON_DATE_FORMAT = { + DEFAULT_LANG: {'preset': False, 'format': DATE_FORMAT}, +} + +COMPILERS = { + 'markdown': ['.md', '.mdown', '.markdown'], + 'html': ['.html', '.htm'], +} + +METADATA_FORMAT = 'Nikola' +ONE_FILE_POSTS = False +FILE_METADATA_UNSLUGIFY_TITLES = True + +IMAGE_FOLDERS = {'images': 'images'} +DEFAULT_PREVIEW_IMAGE = '/images/CAPA_PYTHON_FLORIPA.png' +LOGO_URL = 'images/LOGO_PYTHON_FLORIPA_HORIZONTAL.svg' +SHOW_BLOG_TITLE = False + +# FAVICONS contains (name, file, size) tuples. +# Used to create favicon link like this: +# +FAVICONS = ( + ('icon', 'images/LOGO_PYTHON_FLORIPA.svg', '16x16'), + # ('icon', '/favicon.ico', '16x16'), + # ('icon', '/icon_128x128.png', '128x128'), +) + +GITHUB_SOURCE_BRANCH = 'development' +GITHUB_DEPLOY_BRANCH = 'master' +GITHUB_REMOTE_NAME = 'origin' +GITHUB_COMMIT_SOURCE = True + +LICENSE = ''' +Licença MIT +''' + +CONTENT_FOOTER_FORMATS = { + DEFAULT_LANG: ( + (), + { + 'email': BLOG_EMAIL, + 'author': BLOG_AUTHOR, + 'date': time.gmtime().tm_year, + 'license': LICENSE + } + ) +} +CONTENT_FOOTER = ''' +© {date} {author} | +Produzido com Nikola +''' + +MARKDOWN_EXTENSIONS = [ + 'markdown.extensions.fenced_code', + 'markdown.extensions.codehilite', + 'markdown.extensions.extra' +] diff --git a/site_python_floripa/images/CAPA_PYTHON_FLORIPA.png b/site_python_floripa/images/CAPA_PYTHON_FLORIPA.png new file mode 100644 index 0000000..c4c57fb Binary files /dev/null and b/site_python_floripa/images/CAPA_PYTHON_FLORIPA.png differ diff --git a/site_python_floripa/images/CAPA_PYTHON_FLORIPA.svg b/site_python_floripa/images/CAPA_PYTHON_FLORIPA.svg new file mode 100644 index 0000000..a708394 --- /dev/null +++ b/site_python_floripa/images/CAPA_PYTHON_FLORIPA.svg @@ -0,0 +1,1228 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/site_python_floripa/images/LOGO_PYTHON_FLORIPA.svg b/site_python_floripa/images/LOGO_PYTHON_FLORIPA.svg new file mode 100644 index 0000000..6af77e6 --- /dev/null +++ b/site_python_floripa/images/LOGO_PYTHON_FLORIPA.svg @@ -0,0 +1,317 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/site_python_floripa/images/LOGO_PYTHON_FLORIPA_HORIZONTAL.svg b/site_python_floripa/images/LOGO_PYTHON_FLORIPA_HORIZONTAL.svg new file mode 100644 index 0000000..8f49e9c --- /dev/null +++ b/site_python_floripa/images/LOGO_PYTHON_FLORIPA_HORIZONTAL.svg @@ -0,0 +1,1199 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/site_python_floripa/pages/inicio.md b/site_python_floripa/pages/inicio.md new file mode 100644 index 0000000..1485334 --- /dev/null +++ b/site_python_floripa/pages/inicio.md @@ -0,0 +1,11 @@ +```python +def saudações(): + print('Olá pythonistas!') + +Tecnologias = 0 +Pessoas = Tecnologias + 1 + +if __name__ == '__main__': + saudações() + print('Pessoas > Tecnologias', Pessoas > Tecnologias) +``` diff --git a/site_python_floripa/pages/inicio.meta b/site_python_floripa/pages/inicio.meta new file mode 100644 index 0000000..69398c8 --- /dev/null +++ b/site_python_floripa/pages/inicio.meta @@ -0,0 +1,6 @@ +.. title: Início +.. slug: index +.. date: 2021-03-23 11:34:57 UTC-03:00 +.. description: Homepage do site. +.. type: text + diff --git a/site_python_floripa/posts/LOGO PYTHON FLORIPA.svg b/site_python_floripa/posts/LOGO PYTHON FLORIPA.svg new file mode 100644 index 0000000..6af77e6 --- /dev/null +++ b/site_python_floripa/posts/LOGO PYTHON FLORIPA.svg @@ -0,0 +1,317 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/site_python_floripa/themes/python-floripa/assets/css/custom.css b/site_python_floripa/themes/python-floripa/assets/css/custom.css new file mode 100644 index 0000000..07403c7 --- /dev/null +++ b/site_python_floripa/themes/python-floripa/assets/css/custom.css @@ -0,0 +1,104 @@ +:root { + --azul: #012c66; + --amarelo: #ffb80d; + --branco: #ffffff; + --cinza-escuro: #545454; + --cinza-claro: #a6a6a6; + --preto: #000000; +} + +html { + height: 100%; +} + +body { + background-color: var(--branco); + color: var(--preto); + min-height: 100%; + display: flex; + flex-direction: column; + width: 100%; +} + +.bg-python-floripa { + background-color: rgba(1,44,102,0.8); +} + +#logo { + height: 70px; +} + +strong { + font-family: 'Poppins', bold 700; +} + +em { + font-family: 'Poppins', Light 300 italic; +} + +#footer { + color: var(--preto); +} + +a { + cursor: pointer; +} + +a:link, +a:visited { + color: var(--azul); + text-decoration: none; +} + +.nav-item:hover { + color: var(--branco); +} + + +hr { + border: 2px solid var(--preto); +} + +ul { + overflow: hidden; +} + +button:focus, +.btn-outline-light.focus, +.btn-outline-light:focus { + outline: 1px dotted; + outline: 5px auto var(--branco); +} + +.btn-outline-light.focus, +.btn-outline-light:focus { + box-shadow: none; +} + +.btn-outline-light:not(:disabled):not(.disabled).active:focus, +.btn-outline-light:not(:disabled):not(.disabled):active:focus, +.show > .btn-outline-light.dropdown-toggle:focus { + box-shadow: none; +} + +.navbar-dark .navbar-brand { + color: var(--amarelo); +} + +.navbar-dark .navbar-nav .nav-link { + color: var(--cinza-claro); +} + +.navbar-dark .navbar-nav .nav-link:focus, +.navbar-dark .navbar-nav .nav-link:hover { + color: var(--branco); +} + +.navbar-dark .navbar-toggler { + color: var(--branco); + border-color: var(--branco); +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); +} diff --git a/site_python_floripa/themes/python-floripa/python-floripa.theme b/site_python_floripa/themes/python-floripa/python-floripa.theme new file mode 100644 index 0000000..3975ac0 --- /dev/null +++ b/site_python_floripa/themes/python-floripa/python-floripa.theme @@ -0,0 +1,4 @@ +[Theme] +engine = mako +parent = bootstrap4 +