diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 00000000..81ed7f26
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,33 @@
+# EditorConfig is awesome: https://EditorConfig.org
+
+# top-most EditorConfig file
+root = true
+
+# Unix-style newlines with a newline ending every file
+[*]
+end_of_line = lf
+insert_final_newline = true
+
+# Matches multiple files with brace expansion notation
+# Set default charset
+[*.{js,py}]
+charset = utf-8
+
+# 4 space indentation
+[*.py]
+indent_style = space
+indent_size = 4
+
+# Tab indentation (no size specified)
+[Makefile]
+indent_style = tab
+
+# Indentation override for all JS under lib directory
+[lib/**.js]
+indent_style = space
+indent_size = 2
+
+# Matches the exact files either package.json or .travis.yml
+[{package.json,.travis.yml}]
+indent_style = space
+indent_size = 2
\ No newline at end of file
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 00000000..5e8884a8
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1,2 @@
+github: pythonecuador
+open_collective: pythonecuador
diff --git a/.github/ISSUE_TEMPLATE/chage_request.md b/.github/ISSUE_TEMPLATE/chage_request.md
new file mode 100644
index 00000000..dd6beb8a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/chage_request.md
@@ -0,0 +1,22 @@
+---
+name: Sugerencia de cambio
+about: "¿Encontraste una sección que se puede mejorar o cambiar?"
+title: ''
+labels:
+ - enhancement
+ - good first issue
+assignees: ''
+
+---
+
+**Descripción**
+
+Una descripción clara y concisa indicando
+
+- ¿Cuál sección es?
+- Motivación de lo que se puede mejorar o cambiar
+
+---
+
+Si estás interesada/o en hacer esta tarea, coméntalo, así otras personas lo saben.
+¿Tienes dudas? pregúntanos en [telegram](https://t.me/pythonecuador) o en este issue.
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md
new file mode 100644
index 00000000..fc08a130
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature.md
@@ -0,0 +1,17 @@
+---
+name: Feature
+about: "¿Tienes una idea de una nueva funcionalidad o mejora?"
+title: ''
+labels: 'enhancement'
+assignees: ''
+
+---
+
+**Descripción de la nueva funcionalidad o mejora**
+
+Una descripción clara y concisa de la nueva funcionalidad
+
+---
+
+Si estás interesada/o en hacer esta tarea, coméntalo, así otras personas lo saben.
+¿Tienes dudas? pregúntanos en [telegram](https://t.me/pythonecuador) o en este issue.
\ No newline at end of file
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
new file mode 100644
index 00000000..ac9bfc93
--- /dev/null
+++ b/.github/workflows/ci.yaml
@@ -0,0 +1,32 @@
+name: CI
+on:
+ push:
+ branches: [main]
+ pull_request:
+ branches: [main]
+
+jobs:
+ build:
+ runs-on: ubuntu-22.04
+ env:
+ NIKOLA_DEPLOY: python.ec
+ steps:
+ - uses: actions/checkout@v4
+ - name: Setup Python
+ uses: actions/setup-python@v5
+ with:
+ python-version: '3.10'
+ - name: Install requirements
+ run: |
+ python -m pip install --upgrade pip
+ python -m pip install nox
+ - name: Tests
+ run: python -m nox -s tests
+ - name: Lint
+ run: python -m nox -s lint_rst lint_yaml lint_python
+ - name: Deploy
+ if: ${{ github.ref == 'refs/heads/main' }}
+ uses: peaceiris/actions-gh-pages@v3
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./output
diff --git a/.rstcheck.cfg b/.rstcheck.cfg
new file mode 100644
index 00000000..2ef39b19
--- /dev/null
+++ b/.rstcheck.cfg
@@ -0,0 +1,3 @@
+[rstcheck]
+ignore_roles=
+ ref
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index b67e2b05..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-language: python
-python:
- - "3.6"
-env:
- - NIKOLA_DEPLOY=python.ec
-install:
- - pip install -r requirements.txt
-script:
- - rstcheck -r .
- - nikola build --strict
-
-deploy:
- provider: pages
- skip_cleanup: true
- github_token: $GITHUB_TOKEN
- local_dir: output
- keep_history: true
- target_branch: master
- on:
- branch: src
diff --git a/.yamllint.yaml b/.yamllint.yaml
new file mode 100644
index 00000000..c6c0a3f0
--- /dev/null
+++ b/.yamllint.yaml
@@ -0,0 +1,4 @@
+extends: default
+
+rules:
+ document-start: disable
diff --git a/Makefile b/Makefile
index 5742592d..c9b3643c 100644
--- a/Makefile
+++ b/Makefile
@@ -7,4 +7,10 @@ serve:
deploy:
NIKOLA_DEPLOY=python.ec nikola github_deploy
+lint:
+ python -m nox -r -s lint_python
+
+format:
+ python -m nox -r -s format_python
+
.PHONY: clean serve
diff --git a/README.md b/README.md
index c994cd91..4c1322ac 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Python Ecuador
-[](https://travis-ci.org/PythonEcuador/PythonEcuador.github.io)
+[](https://github.com/pythonecuador/pythonecuador.github.io/actions/workflows/ci.yaml)
Código fuente del sitio de [Python Ecuador](https://python.ec/)
diff --git a/conf.py b/conf.py
index 5def0386..293ba140 100644
--- a/conf.py
+++ b/conf.py
@@ -1,6 +1,5 @@
-# -*- coding: utf-8 -*-
-
import os
+import subprocess
import time
# !! This is the configuration of Nikola. !! #
@@ -21,16 +20,18 @@
BLOG_TITLE = "Python Ecuador" # (translatable)
# This is the main URL for your site. It will be used
# in a prominent link. Don't forget the protocol (http/https)!
-deploy_site = os.environ.get('NIKOLA_DEPLOY')
+deploy_site = os.environ.get("NIKOLA_DEPLOY")
if deploy_site:
- SITE_URL = 'https://{}/'.format(deploy_site.rstrip('/'))
+ SITE_URL = "https://{}/".format(deploy_site.rstrip("/"))
else:
- SITE_URL = 'http://localhost:8000/'
+ SITE_URL = "http://localhost:8000/"
# This is the URL where Nikola's output will be deployed.
# If not set, defaults to SITE_URL
# BASE_URL = "https://pythonecuador.github.io/"
BLOG_EMAIL = "ecuadorpython@gmail.com"
-BLOG_DESCRIPTION = "Comunidad Pythonista de Ecuador" # (translatable)
+BLOG_DESCRIPTION = (
+ "Comunidad de Python, Open Source y Software Libre de Ecuador" # (translatable)
+)
# Nikola is multilingual!
#
@@ -148,6 +149,7 @@
("/coc/", "Código de Conducta"),
("/quiero-ayudar/", "Quiero ayudar"),
("/guias/", "Guías"),
+ ("/eventos/", "Eventos"),
("/becas/", "Becas"),
("/sponsors/", "Sponsors"),
),
@@ -156,16 +158,14 @@
# Alternative navigation links. Works the same way NAVIGATION_LINKS does,
# although themes may not always support them. (translatable)
# (Bootstrap 4: right-side of navbar, Bootblog 4: right side of title)
-NAVIGATION_ALT_LINKS = {
- DEFAULT_LANG: {}
-}
+NAVIGATION_ALT_LINKS = {DEFAULT_LANG: {}}
# Name of the theme to use.
THEME = "custom"
# Primary color of your theme. This will be used to customize your theme.
# Must be a HEX value.
-THEME_COLOR = '#5670d4'
+THEME_COLOR = "#5670d4"
# Theme configuration. Fully theme-dependent. (translatable)
# Examples below are for bootblog4.
@@ -175,18 +175,18 @@
THEME_CONFIG = {
DEFAULT_LANG: {
# Show the latest featured post in a large box, with the previewimage as its background.
- 'featured_large': False,
+ "featured_large": False,
# Show the first (remaining) two featured posts in small boxes.
- 'featured_small': False,
+ "featured_small": False,
# Show featured posts on mobile.
- 'featured_on_mobile': True,
+ "featured_on_mobile": True,
# Show image in `featured_large` on mobile.
# `featured_small` displays them only on desktop.
- 'featured_large_image_on_mobile': True,
+ "featured_large_image_on_mobile": True,
# Strip HTML from featured post text.
- 'featured_strip_html': False,
+ "featured_strip_html": False,
# Contents of the sidebar, If empty, the sidebar is not displayed.
- 'sidebar': ''
+ "sidebar": "",
}
}
@@ -257,7 +257,7 @@
# Date format used to display post dates. (translatable)
# Used by babel.dates, CLDR style: http://cldr.unicode.org/translation/date-time
# You can also use 'full', 'long', 'medium', or 'short'
-DATE_FORMAT = 'YYYY-MM-dd'
+DATE_FORMAT = "YYYY-MM-dd"
# Date format used to display post dates, if local dates are used. (translatable)
# Used by moment.js: https://momentjs.com/docs/#/displaying/format/
@@ -296,18 +296,18 @@
# 'markdown' is Markdown
# 'html' assumes the file is HTML and just copies it
COMPILERS = {
- "rest": ('.rst', '.txt'),
- "markdown": ('.md', '.mdown', '.markdown'),
- "textile": ('.textile',),
- "txt2tags": ('.t2t',),
- "bbcode": ('.bb',),
- "wiki": ('.wiki',),
- "ipynb": ('.ipynb',),
- "html": ('.html', '.htm'),
+ "rest": (".rst", ".txt"),
+ "markdown": (".md", ".mdown", ".markdown"),
+ "textile": (".textile",),
+ "txt2tags": (".t2t",),
+ "bbcode": (".bb",),
+ "wiki": (".wiki",),
+ "ipynb": (".ipynb",),
+ "html": (".html", ".htm"),
# PHP files are rendered the usual way (i.e. with the full templates).
# The resulting files have .php extensions, making it possible to run
# them without reconfiguring your server to recognize them.
- "php": ('.php',),
+ "php": (".php",),
# Pandoc detects the input from the source filename
# but is disabled by default as it would conflict
# with many of the others.
@@ -392,7 +392,7 @@
# If you do not want to display a tag publicly, you can mark it as hidden.
# The tag will not be displayed on the tag list page and posts.
# Tag pages will still be generated.
-HIDDEN_TAGS = ['mathjax']
+HIDDEN_TAGS = ["mathjax"]
# Only include tags on the tag list/overview page if there are at least
# TAGLIST_MINIMUM_POSTS number of posts or more with every tag. Every tag
@@ -533,7 +533,12 @@
Python developer, Neovim, free & open source software 🐍.
https://stsewd.dev
"""
- )
+ ),
+ "Seburath": (
+ """
+ https://seburath.github.io
+ """
+ ),
},
}
@@ -541,7 +546,7 @@
# If you do not want to display an author publicly, you can mark it as hidden.
# The author will not be displayed on the author list page and posts.
# Tag pages will still be generated.
-HIDDEN_AUTHORS = ['Guest']
+HIDDEN_AUTHORS = ["Guest"]
# Final location for the main blog page and sibling paginated pages is
# output / TRANSLATION[lang] / INDEX_PATH / index-*.html
@@ -550,9 +555,7 @@
# Optional HTML that displayed on “main” blog index.html files.
# May be used for a greeting. (translatable)
-FRONT_INDEX_HEADER = {
- DEFAULT_LANG: ''
-}
+FRONT_INDEX_HEADER = {DEFAULT_LANG: ""}
# Create per-month archives instead of per-year
# CREATE_MONTHLY_ARCHIVE = False
@@ -646,11 +649,11 @@
# For more details, read the manual:
# https://getnikola.com/handbook.html#deploying-to-github
# You will need to configure the deployment branch on GitHub.
-GITHUB_SOURCE_BRANCH = 'src'
-GITHUB_DEPLOY_BRANCH = 'master'
+GITHUB_SOURCE_BRANCH = "main"
+GITHUB_DEPLOY_BRANCH = "gh-pages"
# The name of the remote where you wish to push to, using github_deploy.
-GITHUB_REMOTE_NAME = 'origin'
+GITHUB_REMOTE_NAME = "origin"
# Whether or not github_deploy should commit to the source branch automatically
# before deploying.
@@ -815,7 +818,7 @@
# (the thumbnail has ``.thumbnail`` added before the file extension by default,
# but a different naming template can be configured with IMAGE_THUMBNAIL_FORMAT).
-IMAGE_FOLDERS = {'images': 'images'}
+IMAGE_FOLDERS = {"images": "images"}
# IMAGE_THUMBNAIL_SIZE = 400
# IMAGE_THUMBNAIL_FORMAT = '{name}.thumbnail{ext}'
@@ -938,7 +941,7 @@
# A small copyright notice for the page footer (in HTML).
# (translatable)
-CONTENT_FOOTER = '''
+CONTENT_FOOTER = """