From d439853f4708ee406d96bc716cad3706a408f311 Mon Sep 17 00:00:00 2001 From: Ram Gopal Siddh Date: Mon, 16 Feb 2026 01:25:43 +0530 Subject: [PATCH 1/4] Update description of BangPypers group to reflect its twenty-one year history --- _posts/2017-06-03-how-bangpypers-is-run.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_posts/2017-06-03-how-bangpypers-is-run.md b/_posts/2017-06-03-how-bangpypers-is-run.md index 45aa04e8..0edd6cb5 100755 --- a/_posts/2017-06-03-how-bangpypers-is-run.md +++ b/_posts/2017-06-03-how-bangpypers-is-run.md @@ -18,7 +18,7 @@ hidden: false
-[BangPypers](https://www.quora.com/Who-decided-the-name-BangPypers-for-the-Bangalore-Python-User-Group) is a [twelve year](https://www.swaroopch.com/2005/01/22/first-bangalore-python-meetup/) old group started by Anand B Pillai. For Half a decade [meetup group](https://www.meetup.com/BangPypers/) is the anchor for organizing Python meetups in Bangalore. During the period, co-organizer has devised working for the team. +[BangPypers](https://www.quora.com/Who-decided-the-name-BangPypers-for-the-Bangalore-Python-User-Group) is a [twenty one year](https://www.swaroopch.com/2005/01/22/first-bangalore-python-meetup/) old group started by Anand B Pillai. For Half a decade [meetup group](https://www.meetup.com/BangPypers/) is the anchor for organizing Python meetups in Bangalore. During the period, co-organizer has devised working for the team. ### Event Types? From d6a401f509653f4545cb8cce0c6de361d0889128 Mon Sep 17 00:00:00 2001 From: Ram Gopal Siddh Date: Sun, 22 Feb 2026 11:11:43 +0530 Subject: [PATCH 2/4] Add community blog section and navigation to homepage --- _config.yml | 9 ++++ _layouts/default.html | 20 +++++++- assets/css/main.scss | 42 ++++++++++++++++ blog.html | 2 +- community-blog.html | 32 ++++++++++++ index.html | 113 +++++++++++++++++++++++++++++++++++------- 6 files changed, 196 insertions(+), 22 deletions(-) create mode 100644 community-blog.html diff --git a/_config.yml b/_config.yml index 871edd53..3deae83e 100644 --- a/_config.yml +++ b/_config.yml @@ -33,6 +33,9 @@ collections: authors: output: true permalink: /authors/:path/ + community: + output: true + permalink: /community-blog/:title/ defaults: - scope: @@ -41,6 +44,12 @@ defaults: values: layout: "archive" type: "authors" + - scope: + path: "" + type: "community" + values: + layout: "post" + type: "community" # Pagination paginate: 6 diff --git a/_layouts/default.html b/_layouts/default.html index 2b32d4b3..9227dd8f 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -153,12 +153,20 @@ Library --> - {% if page.url == "/coc/" %} + {% if page.url == "/blog/" %} + + {% if page.url == "/community-blog/" %} + --> + + + + diff --git a/assets/css/main.scss b/assets/css/main.scss index b5f16b92..731ee029 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -12,3 +12,45 @@ @import "syntax" ; + +/* Exclusive Tabs for Home Page */ +.exclusive-tabs-header { + display: flex !important; + flex-direction: row !important; + border-bottom: 1px solid rgba(0, 0, 0, .125) !important; + margin-bottom: 27px; + padding: 0; +} +.exclusive-tab-link { + cursor: pointer !important; + opacity: 0.3 !important; + transition: all 0.3s ease; + margin-right: 40px !important; + padding-bottom: 20px !important; + display: inline-block !important; + border-bottom: 1px solid transparent !important; + margin-bottom: -1px !important; + font-weight: 700 !important; + font-size: 1.4rem !important; + color: #292b2c !important; +} +.exclusive-tab-link.is-active { + opacity: 1 !important; + border-bottom: 1px solid rgba(0,0,0,0.44) !important; +} +.exclusive-tab-link:hover { + opacity: 0.7 !important; + text-decoration: none !important; +} +.exclusive-pane:not(.is-visible) { + display: none !important; +} +.exclusive-pane.is-visible { + display: block !important; +} +.exclusive-content-area { + margin-top: 30px; +} +.pagination a { + cursor: pointer; +} diff --git a/blog.html b/blog.html index 9b383285..cd533855 100644 --- a/blog.html +++ b/blog.html @@ -1,6 +1,6 @@ --- layout: page -title: Blog +title: Monthly Meetup Blog description: List of all posts by "BangPypers – The Bangalore Python User Group". --- diff --git a/community-blog.html b/community-blog.html new file mode 100644 index 00000000..b0d7a04f --- /dev/null +++ b/community-blog.html @@ -0,0 +1,32 @@ +--- +layout: page +title: Community Blog +description: List of all posts in the Community Blog. +permalink: /community-blog/ +--- + + +
+ +
+ +
+ {% assign community_posts = site.community %} + {% assign sorted_posts = community_posts | reverse %} + {% for post in sorted_posts %} + {% assign currentDate = post.date | date: "%Y" %} + {% if currentDate != myDate %} + {% unless forloop.first %}{% endunless %} +

{{ currentDate }}

+
    + {% assign myDate = currentDate %} + {% endif %} +
  • {{ post.date | date: "%B %-d" }} - {{ post.title }}
  • + {% if forloop.last %}
{% endif %} + {% endfor %} +
+ +
+ +
diff --git a/index.html b/index.html index 37ed00d1..d22b4519 100644 --- a/index.html +++ b/index.html @@ -23,32 +23,107 @@

Featured

{% endif %} -
-
- -

All Posts

- +

+ Monthly Meetup Posts + Community Posts +

- -
- {% for post in paginator.posts %} - {% include postbox.html %} - {% endfor %} +
+ +
+
+ {% for post in paginator.posts %} + {% include postbox.html %} + {% endfor %} +
+ +
+
+ + {% include pagination.html %} + +
+
+ +
+
+ {% if site.community.size > 0 %} + {% assign sorted_community = site.community | reverse %} + {% for post in sorted_community %} + {% include postbox.html %} + {% endfor %} + {% else %} +

No community posts found.

+ {% endif %} +
+ + +
-
- -
-
- - {% include pagination.html %} - -
+ From 16e5e1a09537c8746711cd2a19cd6160de8a64ec Mon Sep 17 00:00:00 2001 From: Ram Gopal Siddh Date: Mon, 20 Apr 2026 22:40:18 +0530 Subject: [PATCH 3/4] Refactor archive and author layouts for improved post filtering; update community blog and index to exclude community posts from general listings. --- _config.yml | 14 +++++++------- _layouts/archive.html | 14 ++++++-------- authors.html | 9 ++------- blog.html | 1 + community-blog.html | 5 ++--- index.html | 7 ++++--- 6 files changed, 22 insertions(+), 28 deletions(-) diff --git a/_config.yml b/_config.yml index 3deae83e..2ae2e305 100644 --- a/_config.yml +++ b/_config.yml @@ -20,7 +20,11 @@ plugins: # Archives jekyll-archives: - enabled: all + enabled: + - categories + - years + - months + - days layout: archive permalinks: category: '/archives/:name/' @@ -33,9 +37,6 @@ collections: authors: output: true permalink: /authors/:path/ - community: - output: true - permalink: /community-blog/:title/ defaults: - scope: @@ -45,11 +46,10 @@ defaults: layout: "archive" type: "authors" - scope: - path: "" - type: "community" + path: "_posts/community" values: layout: "post" - type: "community" + permalink: /community-blog/:title/ # Pagination paginate: 6 diff --git a/_layouts/archive.html b/_layouts/archive.html index 613fcaeb..7257da17 100644 --- a/_layouts/archive.html +++ b/_layouts/archive.html @@ -11,16 +11,14 @@

Archive of posts {% if page.type == "year" %} during {{ page.type }} {% elsi
{% if page.type == "authors" %} - {% for post in site.posts %} - {% if post.authors contains page.username or page.username == post.authors %} - {% include postbox.html %} - {% endif %} + {% assign author_posts = site.posts | where_exp: "post", "post.authors contains page.username or page.username == post.authors" %} + {% for post in author_posts %} + {% include postbox.html %} {% endfor %} {% else %} - {% for post in page.posts %} - {% include postbox.html %} - {% endfor %} + {% for post in page.posts %} + {% include postbox.html %} + {% endfor %} {% endif %}
- diff --git a/authors.html b/authors.html index ee797282..49d6b05b 100644 --- a/authors.html +++ b/authors.html @@ -21,13 +21,8 @@ {{ author.name }}
- {% assign number_of_posts = 0 %} - {% for post in site.posts %} - {% if post.authors contains author.username or author.username == post.authors %} - {% assign number_of_posts = number_of_posts | plus: 1 %} - {% endif %} - {% endfor %} - + {% assign author_posts = site.posts | where_exp: "doc", "doc.authors contains author.username or author.username == doc.authors" %} +
diff --git a/blog.html b/blog.html index cd533855..b56dee6a 100644 --- a/blog.html +++ b/blog.html @@ -12,6 +12,7 @@
{% for post in site.posts %} + {% if post.categories contains 'community' %}{% continue %}{% endif %} {% assign currentDate = post.date | date: "%Y" %} {% if currentDate != myDate %} {% unless forloop.first %}{% endunless %} diff --git a/community-blog.html b/community-blog.html index b0d7a04f..1e712e14 100644 --- a/community-blog.html +++ b/community-blog.html @@ -12,9 +12,8 @@
- {% assign community_posts = site.community %} - {% assign sorted_posts = community_posts | reverse %} - {% for post in sorted_posts %} + {% assign community_posts = site.posts | where: "categories", "community" %} + {% for post in community_posts %} {% assign currentDate = post.date | date: "%Y" %} {% if currentDate != myDate %} {% unless forloop.first %}{% endunless %} diff --git a/index.html b/index.html index d22b4519..d62a4af4 100644 --- a/index.html +++ b/index.html @@ -38,6 +38,7 @@

{% for post in paginator.posts %} + {% if post.categories contains 'community' %}{% continue %}{% endif %} {% include postbox.html %} {% endfor %}
@@ -53,9 +54,9 @@

- {% if site.community.size > 0 %} - {% assign sorted_community = site.community | reverse %} - {% for post in sorted_community %} + {% assign community_posts = site.posts | where: "categories", "community" %} + {% if community_posts.size > 0 %} + {% for post in community_posts %} {% include postbox.html %} {% endfor %} {% else %} From a604bee9aefcb8f25ba8a39da3e5f1722ebcd3ee Mon Sep 17 00:00:00 2001 From: Ram Gopal Siddh Date: Mon, 20 Apr 2026 23:16:14 +0530 Subject: [PATCH 4/4] Add guide for creating blog posts in the Community Blog --- ...026-04-20-welcome-to-the-community-blog.md | 129 ++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 _posts/community/2026-04-20-welcome-to-the-community-blog.md diff --git a/_posts/community/2026-04-20-welcome-to-the-community-blog.md b/_posts/community/2026-04-20-welcome-to-the-community-blog.md new file mode 100644 index 00000000..87110b25 --- /dev/null +++ b/_posts/community/2026-04-20-welcome-to-the-community-blog.md @@ -0,0 +1,129 @@ +--- +layout: post +title: "How to Create a Blog Post for the Community Blog" +date: 2026-04-20 +authors: + - ramgopalsiddh +categories: [ community ] +description: "A comprehensive guide on how to create and contribute blog posts to the BangPypers Community Blog." +featured: false +--- + +## How to Create a Blog Post for the Community Blog + +Welcome to the BangPypers Community Blog! This guide will walk you through the process of creating and publishing your own blog post. + +### Getting Started + +The Community Blog uses GitHub and Jekyll to publish content. All blog posts are written in Markdown format and stored in the `_posts/community/` directory of our repository. This is separate from the main blog posts in `_posts/`, which are typically written by core organizers. + +### Step-by-Step Guide to Creating a Blog Post + +#### 1. **Fork the Repository** + +First, fork the BangPypers repository from our GitHub page to your own account. This allows you to make changes without affecting the main content. + +#### 2. **Create a New File** + +Create a new Markdown file in the `_posts/community/` directory with the following naming convention: + +``` +YYYY-MM-DD-post-title.md +``` + +Example: `2025-02-21-my-first-post.md` + +#### 3. **Add Front Matter** + +Every blog post must start with YAML front matter that looks like this: + +```yaml +--- +layout: post +title: "Your Blog Post Title" +date: YYYY-MM-DD +authors: + - your-username +categories: [ community, python, tutorial ] +description: "A brief description of your blog post (appears in previews)." +featured: false +--- +``` + +- **title**: The title of your blog post +- **date**: Publication date in YYYY-MM-DD format +- **authors**: List your author handle (add yourself in `_authors/` directory if new) +- **categories**: Relevant tags for your post (available: community, python, tutorial, workshop etc.) +- **description**: A short summary for social sharing +- **featured**: Set to `true` to highlight your post on the homepage +- **image**: Optional URL to a featured image for social sharing + +#### Author Registration + +If you're a new author, create a profile in the `_authors/` directory. Create a file named `your-username.md` with YAML front matter like: + +```yaml +--- +username: your-username +name: "Your Full Name" +logo: https://example.com/avatar.jpg +email: your-email@example.com +twitter: https://twitter.com/yourhandle +web: https://yourwebsite.com +description: "A short bio about yourself." +--- +``` + +This profile will appear with your posts. +``` + + +#### 4. **Write Your Content** + +Use Markdown formatting to write your blog post. Here are some useful formatting tips: + + +#### 5. **Preview Your Post Locally** + +Before submitting, preview your post to ensure it renders correctly: + +1. Install Jekyll and dependencies: `bundle install` +2. Run the site locally: `bundle exec jekyll serve` +3. Open http://localhost:4000 to view your post +4. Check formatting, links, and images + +#### 6. **Submit Your Post** + +Once your post is ready: + +1. Commit your changes to your fork +2. Create a pull request to the main repository with a clear title. +3. Our team will review your post. +4. Reviewers check for: adherence to guidelines, quality, relevance, and technical accuracy +5. If changes are requested, update your PR accordingly +6. Once approved, it will be published to the community blog + + +### Content Guidelines + +- Posts should be Python or community-related +- Be respectful and follow our [Code of Conduct](/coc.html) +- Avoid promotional or overly commercial content +- Attribution is important—cite your sources +- Posts should be original or properly attributed if previously published elsewhere + +### Need Help? + +If you have questions about creating a blog post, feel free to: +- Ask on our [Discord server](https://discord.gg/Tnhbqh33zd) +- Open an issue on [GitHub](https://github.com/bangpypers/bangalore.python.org.in) +- Join our [mailing list](http://mail.python.org/mailman/listinfo/bangpypers) + +### Troubleshooting + +- **Jekyll won't build?** Ensure you have Ruby and Bundler installed. Run `bundle install` to install dependencies. +- **Images not appearing?** Check the URL is correct and accessible. For local images, ensure they're in the right path. +- **Front matter errors?** Validate your YAML syntax—use a YAML validator online. +- **Post not showing?** Check the date is not in the future and `hidden` is `false`. + +We look forward to your contributions!