From 62861b7a1efb724bc7906a52a322d05af17d5a07 Mon Sep 17 00:00:00 2001 From: Charles Bergeron Date: Fri, 14 Feb 2014 11:48:44 -0800 Subject: [PATCH 001/140] hacknight date --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 64c2611..3e42c9b 100755 --- a/index.html +++ b/index.html @@ -37,7 +37,7 @@
Cool People
Next Hack Night:

Bring a laptop and hack with us at Launch Academy! Bring whatever you’re working on, or come up with an idea while meeting other Rubyists. Everyone is welcome.

-

Tuesday, February 11th - 6pm til 9pm.

+

Tuesday, February 25th - 6pm til 9pm.

Launch Academy
128 West Hastings Street - Unit 300
From 7cce7ebda148893955b7c5395e2e573c7ea1a228 Mon Sep 17 00:00:00 2001 From: Charles Bergeron Date: Tue, 11 Mar 2014 11:13:09 -0700 Subject: [PATCH 002/140] update date --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3e42c9b..308ae1c 100755 --- a/index.html +++ b/index.html @@ -37,7 +37,7 @@

Cool People
Next Hack Night:

Bring a laptop and hack with us at Launch Academy! Bring whatever you’re working on, or come up with an idea while meeting other Rubyists. Everyone is welcome.

-

Tuesday, February 25th - 6pm til 9pm.

+

Tuesday, March 11th - 6pm til 9pm.

Launch Academy
128 West Hastings Street - Unit 300
From 14ab8023932867edd3aef153ad9ab05701d5349a Mon Sep 17 00:00:00 2001 From: Charles Bergeron Date: Wed, 26 Mar 2014 17:25:43 -0700 Subject: [PATCH 003/140] new date and twitter handle for me --- _config.yml | 2 +- index.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/_config.yml b/_config.yml index bc28e87..cbce048 100755 --- a/_config.yml +++ b/_config.yml @@ -25,7 +25,7 @@ members: - name: Charles Bergeron gravatar: hello@charlesbergeron.ca blurb: "Programmer, designer, musician – Building @caliper. When possible, do the cycling and yogi roles." - twitter: CharlesEllery + twitter: ChuckBergeron url: http://charlesbergeron.ca - name: Matthew Robertson gravatar: matthew@cloudclinic.ca diff --git a/index.html b/index.html index 308ae1c..b12399a 100755 --- a/index.html +++ b/index.html @@ -37,14 +37,14 @@

Cool People
Next Hack Night:

Bring a laptop and hack with us at Launch Academy! Bring whatever you’re working on, or come up with an idea while meeting other Rubyists. Everyone is welcome.

-

Tuesday, March 11th - 6pm til 9pm.

+

Tuesday, April 8th - 6pm til 9pm.

Launch Academy
128 West Hastings Street - Unit 300
Vancouver, BC

-

Try buzzing #300 to get in. Stuck at the front door? Message @CharlesEllery, or @ChanCanCode for access.

+

Try buzzing #300 to get in. Stuck at the front door? Message @ChuckBergeron, or @ChanCanCode for access.

From 3f7870a989a31b5c61642866bd242683f3aab20a Mon Sep 17 00:00:00 2001 From: Charles Bergeron Date: Tue, 6 May 2014 12:52:54 -0700 Subject: [PATCH 004/140] update dates --- index.html | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index b12399a..2ee06ba 100755 --- a/index.html +++ b/index.html @@ -37,7 +37,10 @@
Cool People
Next Hack Night:

Bring a laptop and hack with us at Launch Academy! Bring whatever you’re working on, or come up with an idea while meeting other Rubyists. Everyone is welcome.

-

Tuesday, April 8th - 6pm til 9pm.

+

Tuesday, May 6th - 6pm til 9pm.

+

Tuesday, May 20th - 6pm til 9pm.

+

Tuesday, June 3rd - 6pm til 9pm.

+

Tuesday, June 17th - 6pm til 9pm.

Launch Academy
128 West Hastings Street - Unit 300
@@ -48,12 +51,13 @@

Next Hack Night:
-
Next meetup
-

Lightning Talks at Unbounce

-

Wednesday, December 4th - 6:30pm.

+
Next meetup:
+

Docker, Containers & More for Rails

+

Wednesday, May 21st - 6:30pm.

+

- Unbounce World Headquarters
- 375 Water Street - Unit 415
+ Hootsuite Headquarters
+ 5 East 8th Avenue
Vancouver, BC

Join our Meetup group to stay in the loop!

From d992b9d93a5e7b2ac7057efb40dfae08eff810a2 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Wed, 21 May 2014 02:22:13 -0700 Subject: [PATCH 005/140] Add beginner's IRC guide --- index.html | 2 +- irc_guide.html | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 irc_guide.html diff --git a/index.html b/index.html index 2ee06ba..e18bfbe 100755 --- a/index.html +++ b/index.html @@ -66,7 +66,7 @@
Next meetup:
Connect

Twitter: Just use hashtag #VanRuby when talking about anything VanRuby related - especially at our events. We're working on acquiring the abandoned @VanRuby username to post event updates and information.

-

IRC channel: We hang out in #vanruby on freenode, pop in and say 'Hi' :)

+

IRC channel: We hang out in #vanruby on freenode, pop in and say 'Hi' :) . If you're new to IRC, check out our guide for setup instructions.

diff --git a/irc_guide.html b/irc_guide.html new file mode 100644 index 0000000..1d0c036 --- /dev/null +++ b/irc_guide.html @@ -0,0 +1,41 @@ +--- +layout: layout +title: "Beginner's Guide to IRC" +permalink: /irc_guide.html +--- + +
+
+
+

Beginner's Guide to IRC

+
    +
  1. +

    Choose an IRC client from the list on Wikipedia.

    +

    With most clients, you will be disconnected from IRC when your computer sleeps or when you exit the client. You can use a paid service like IRCCloud to stay connected 24/7. The IRCCloud free tier keeps your connection alive for 2 hours, logging all chat history during this time. This is useful in case someone answers your questions while you are away. You will also receive notifications on your phone if you install the iOS or Android apps.

    +
  2. +
  3. +

    Open your client and go through configuration. You should only need to set a nickname for now.

    +
  4. +
  5. +

    + Before you can start chatting in the #vanruby IRC channel, you need to connect to a network. Freenode is where you will find #vanruby, #rubyonrails, and #ruby-lang. +

    +

    + The textfield at the bottom of your client is where you will send messages and IRC commands. /help lists available commands. +

    +

    + /connect freenode is the command to join the Freenode network. +

    +
  6. +
  7. +

    + Once connected to Freenode, send /join #vanruby and start chatting with local Ruby programmers! You should see a list of members in the sidebar once you are in the channel. +

    +
  8. +
  9. +

    + If no one responds to you, they are not ignoring you. They are just busy :) . Also try #rubyonrails and #ruby-lang if you need help. Make sure you read and follow the channel rules linked in the channel header (Note: to chat in #rubyonrails, you need to register your nickname). +

+
+
+
From acd92474b0d4efa401f55d7ced322d5b37bda901 Mon Sep 17 00:00:00 2001 From: Lana Date: Fri, 29 Aug 2014 11:53:09 -0700 Subject: [PATCH 006/140] Create 2014-hereos.html This is a bit of a test. --- 2014-hereos.html | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 2014-hereos.html diff --git a/2014-hereos.html b/2014-hereos.html new file mode 100644 index 0000000..9bd4227 --- /dev/null +++ b/2014-hereos.html @@ -0,0 +1,4 @@ +--- +layout: layout +title: "VanRuby - Vancouver Ruby on Rails Group" +--- From e967bcc8272062f736a5f28e30e49f2d284c9128 Mon Sep 17 00:00:00 2001 From: Lana Date: Fri, 29 Aug 2014 11:53:56 -0700 Subject: [PATCH 007/140] Update 2014-hereos.html --- 2014-hereos.html | 1 + 1 file changed, 1 insertion(+) diff --git a/2014-hereos.html b/2014-hereos.html index 9bd4227..4605e1d 100644 --- a/2014-hereos.html +++ b/2014-hereos.html @@ -2,3 +2,4 @@ layout: layout title: "VanRuby - Vancouver Ruby on Rails Group" --- +

THIS IS A HERO PAGE FOR RUBY DEVELOPERS BASED IN VANCOUVER

From 7bf0fcaf7c5442af63a50346b5f7d8c2a3508bae Mon Sep 17 00:00:00 2001 From: Lana Topham Date: Mon, 8 Sep 2014 12:04:12 -0700 Subject: [PATCH 008/140] Started a Heroes page for van ruby page --- .gemrc | 1 + 2014-hereos.html | 96 +++++++++++++++++++++++++++++++++++++++- _layouts/layout.html | 6 +-- images/godfrey.jpg | Bin 0 -> 50108 bytes images/jenncoop.jpg | Bin 0 -> 48203 bytes images/pano-vanruby.jpg | Bin 0 -> 313180 bytes images/tam.jpg | Bin 0 -> 26847 bytes 7 files changed, 98 insertions(+), 5 deletions(-) create mode 100644 .gemrc create mode 100644 images/godfrey.jpg create mode 100644 images/jenncoop.jpg create mode 100644 images/pano-vanruby.jpg create mode 100644 images/tam.jpg diff --git a/.gemrc b/.gemrc new file mode 100644 index 0000000..154cd47 --- /dev/null +++ b/.gemrc @@ -0,0 +1 @@ +gem: --no-document diff --git a/2014-hereos.html b/2014-hereos.html index 4605e1d..a6b5533 100644 --- a/2014-hereos.html +++ b/2014-hereos.html @@ -2,4 +2,98 @@ layout: layout title: "VanRuby - Vancouver Ruby on Rails Group" --- -

THIS IS A HERO PAGE FOR RUBY DEVELOPERS BASED IN VANCOUVER

+
+ +
+
+

2nd Annual Ruby BBQ & Awards

+ +
+ +
+ +

It was a gem of a night! This is a blurb about when this event happened and what happened in the night and how awesome it was. More and more and more. I am putting a few paragraphs about this event here. It was awesome, by the way. You should really come next year but don't forget to RSVP. A lot of sad pandas out there that didn't!

+ +

Our 2014 Ruby Hero Winners -- "I'm a Gem"

+
+
+ +
+
+
+ Tam +

+ Tammam Kbeili +
@tam? +

+
+ +

"He's super awesome."

+

"Wow what a guy."

+
+ +
+ Jenn +

Jenn Cooper

+
+ +
+ Godfrey Chan's photo +

Godfrey Chan

+
+
+ +
+
+

Honourable Mentions

+
+
+ +
+ + diff --git a/_layouts/layout.html b/_layouts/layout.html index 7c46d03..4113573 100755 --- a/_layouts/layout.html +++ b/_layouts/layout.html @@ -23,6 +23,8 @@ + + @@ -40,8 +43,10 @@
Engaging Speakers
Community Driven

VanRuby would not exist without support from our sponsors. If your school or business could benefit from connecting with our community, we would love to hear from you.

- Become a sponsor + Become a sponsor +

+ No GitHub account? Email us instead +

diff --git a/sponsors.html b/sponsors.html new file mode 100644 index 0000000..a7dcf0b --- /dev/null +++ b/sponsors.html @@ -0,0 +1,141 @@ +--- +layout: layout +title: "Sponsorship Packages - VanRuby" +--- + +
+
+

Sponsorship Packages

+

Support Vancouver's Ruby community and connect with talented developers

+
+ +
+ +
+
+
+

Gold

+
+
+

$3000

+

Sponsor for entire year (12 meetups)

+ +
    +
  • + + + + A thank you and blurb about your company included in all event marketing materials (social, website, etc) +
  • +
  • + + + + A thank you before each meetup and opportunity for your representative to speak for 2 minutes to attendees +
  • +
  • + + + + Your logo on a thank you slide before the presentations +
  • +
  • + + + + Your logo and link to your website from the sponsors page on vanruby.ca website as Gold sponsor +
  • +
+ + Become a Gold Sponsor +

+ No GitHub account? Email us instead +

+
+
+
+ + +
+
+
+

Silver

+
+
+

$300

+

Sponsor 1 meetup

+ +
    +
  • + + + + A thank you and blurb about your company included in the sponsored event marketing materials (social, website, etc) +
  • +
  • + + + + A thank you before the sponsored meetup and opportunity for your representative to speak for 2 minutes to attendees +
  • +
  • + + + + Your logo on a thank you slide before the presentation +
  • +
  • + + + + Your logo and link to your website from the sponsors page on vanruby.ca website as Silver sponsor +
  • +
+ + Become a Silver Sponsor +

+ No GitHub account? Email us instead +

+
+
+
+
+ +
+

Why Sponsor VanRuby?

+
+
+
+ + + +
+

Reach 3000+ Developers

+

Connect with Vancouver's largest Ruby community

+
+
+
+ + + +
+

Hire Top Talent

+

Access skilled Ruby developers actively looking for opportunities

+
+
+
+ + + +
+

Build Your Brand

+

Showcase your company to the Vancouver tech community

+
+
+
+ +
+

Questions about sponsorship?

+ Get in Touch +
+
From 20c4ee3284cf174175e28c78ed5c555c204c4246 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 19:49:53 -0700 Subject: [PATCH 117/140] refactor(data): simplify sponsor tracking to use single sponsor_tier column MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove redundant sponsor column from companies.csv - Rename sponsor_level to sponsor_tier for clarity - Update templates to filter by sponsor_tier (gold/silver/empty) - Simplify sponsor detection logic in companies.html and index.html - Maintain same sponsor display functionality with cleaner data structure 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _data/companies.csv | 118 ++++++++++++++++++++++---------------------- companies.html | 4 +- index.html | 4 +- 3 files changed, 63 insertions(+), 63 deletions(-) diff --git a/_data/companies.csv b/_data/companies.csv index f20db13..fcb805b 100644 --- a/_data/companies.csv +++ b/_data/companies.csv @@ -1,59 +1,59 @@ -name,codebase,market,website,location,team_size,sponsor -Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large -Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large -Clio,Ruby on Rails,Legal Tech,https://www.clio.com,"Burnaby, Vancouver, Calgary, Toronto",Large,yes -Copper CRM,Ruby on Rails,SaaS/CRM,https://www.copper.com,Remote Canada,Medium -Diligent,Unknown,Governance,https://www.diligent.com,"Coal Harbour, Vancouver",Large -domain7,Ruby on Rails,Digital Agency,https://www.versett.com,Vancouver (now Versett),Large -E-xact Transactions,Unknown,FinTech,https://www.e-xact.com,Vancouver (now Paynt),Large -Envisio,Unknown,GovTech,https://www.envisio.com,Vancouver,Medium -Ethelo Decisions,Unknown,Decision Tech,https://www.ethelo.com,Vancouver,Small -Files.com,Ruby on Rails,Cloud Storage,https://www.files.com,Remote Canada,Medium -Foodee,Unknown,Food Delivery,https://www.foodee.com,Vancouver (now Sodexo),Large -Fullscript,Ruby on Rails,HealthTech,https://fullscript.com,Remote Canada,Large -Gen II Fund,Ruby on Rails,Venture Capital,https://www.gen2fund.com,Vancouver,Small,yes -GitHub,Ruby on Rails,DevOps/Platform,https://github.com,Remote Worldwide,Large,yes -GitLab,Ruby on Rails,DevOps,https://about.gitlab.com,Remote Worldwide,Large -Global Fleet Management,Ruby on Rails,Fleet Management,https://www.positrace.com,Burnaby,Medium -GoBolt,Ruby on Rails,Logistics,https://www.gobolt.com,Toronto,Medium -Hiive,Unknown,FinTech,https://www.hiive.com,Vancouver,Medium -IGENO,Unknown,Consultancy,https://www.igeno.com,Vancouver,Small -Intergalactic Agency,Unknown,Digital Agency,https://www.intergalactic.agency,"Yaletown, Vancouver",Small -IT Glue,Unknown,SaaS,https://www.itglue.com,Vancouver,Large -Jane.app,Ruby on Rails,HealthTech,https://jane.app,North Vancouver,Large -Kidzworld,Unknown,Social Media,https://www.kidzworld.com,Vancouver,Small -Kit (ConvertKit),Ruby on Rails,Marketing,https://kit.com,Remote Worldwide,Medium -L'Effet Monstre,Ruby on Rails,Web Agency,https://monstre.ca,Quebec City,Medium -Latero Labs,Ruby on Rails,Consultancy,https://www.laterolabs.com,Vancouver,Large -Mogo,Unknown,FinTech,https://www.mogo.ca,Vancouver,Large -Molecular You,Ruby on Rails,HealthTech,https://www.molecularyou.com,Vancouver,Medium -Mozilla,Ruby on Rails,Open Source,https://www.mozilla.org,Remote Canada,Large -mybesthelper,Unknown,Marketplace,https://www.mybesthelper.com,Vancouver,Small -Narvar,Ruby on Rails,E-commerce,https://www.narvar.com,Remote Canada,Large -Netsign,Ruby on Rails,Consultancy,https://www.netsign.com,Vancouver,Small,yes -Noomii,Unknown,Directory,https://www.noomii.com,Vancouver,Small -Omnistream,Unknown,Communications,https://www.omnistream-communications.ca,Vancouver,Small -PagerDuty,Ruby on Rails,DevOps/SaaS,https://www.pagerduty.com,"Toronto, Vancouver",Large -PayrollHero,Unknown,HR Tech,https://payrollhero.com,"Whistler, Manila",Small -Phoenix,Ruby on Rails,FinTech,https://www.phoenix.ca,Toronto,Small -Rise People,Unknown,HR Tech,https://risepeople.com,"Vancouver, Burnaby",Medium -Rootly,Ruby on Rails,DevOps,https://rootly.com,Remote North America,Small -Ruby Central,Ruby,Open Source/Community,https://rubycentral.org,Remote Worldwide,Small,yes -Safe Software,Ruby on Rails,Data/GIS,https://www.safe.com,"Surrey, Vancouver",Large -Scribd,Ruby on Rails,Digital Media,https://tech.scribd.com,Vancouver,Large -Sensor Tower,Ruby on Rails,Mobile Analytics,https://sensortower.com,Vancouver,Large -Shopify,Ruby on Rails,E-commerce,https://www.shopify.com,Vancouver,Large -Spacelist,Ruby on Rails,Real Estate Tech,https://www.spacelist.ca,Vancouver,Small -Spark,Ruby on Rails,Sales/Marketing,https://www.sparksales.com,"Yaletown, Vancouver",Medium -StackAdapt,Ruby on Rails,AdTech,https://www.stackadapt.com,Remote Canada,Large -STAT Search Analytics,Ruby on Rails,SEO/Analytics,https://moz.com/products/api/stat,Vancouver (now Moz),Large -TELUS Digital,Ruby on Rails,Digital Services,https://www.telus.com/digital,Vancouver,Large -Thinkific,Ruby on Rails,EdTech,https://www.thinkific.com,Vancouver,Large -Traction Guest,Unknown,Visitor Management,https://tractionguest.com,Burnaby (now ShieldCo),Large -Unbounce,Mixed,Marketing Tech,https://unbounce.com,Vancouver (Remote),Large -Versapay,Ruby on Rails,FinTech,https://versapay.com,Remote Canada,Medium -WealthBar,Unknown,FinTech,https://www.cifinancial.com,Vancouver (now CI Direct),Large -Wishpond,Ruby on Rails,Marketing SaaS,https://www.wishpond.com,"Vancouver, Coal Harbour",Large -Workstream,Ruby on Rails,HR Tech,https://www.workstream.us,Vancouver (Remote),Medium -Zayzoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,yes -Zipline,Ruby on Rails,Retail SaaS,https://www.getzipline.com,Remote Canada,Medium +name,codebase,market,website,location,team_size,sponsor_tier +Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large, +Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large, +Clio,Ruby on Rails,Legal Tech,https://www.clio.com,"Burnaby, Vancouver, Calgary, Toronto",Large,gold +Copper CRM,Ruby on Rails,SaaS/CRM,https://www.copper.com,Remote Canada,Medium, +Diligent,Unknown,Governance,https://www.diligent.com,"Coal Harbour, Vancouver",Large, +domain7,Ruby on Rails,Digital Agency,https://www.versett.com,Vancouver (now Versett),Large, +E-xact Transactions,Unknown,FinTech,https://www.e-xact.com,Vancouver (now Paynt),Large, +Envisio,Unknown,GovTech,https://www.envisio.com,Vancouver,Medium, +Ethelo Decisions,Unknown,Decision Tech,https://www.ethelo.com,Vancouver,Small, +Files.com,Ruby on Rails,Cloud Storage,https://www.files.com,Remote Canada,Medium, +Foodee,Unknown,Food Delivery,https://www.foodee.com,Vancouver (now Sodexo),Large, +Fullscript,Ruby on Rails,HealthTech,https://fullscript.com,Remote Canada,Large, +Gen II Fund,Ruby on Rails,Venture Capital,https://www.gen2fund.com,Vancouver,Small,silver +GitHub,Ruby on Rails,DevOps/Platform,https://github.com,Remote Worldwide,Large,silver +GitLab,Ruby on Rails,DevOps,https://about.gitlab.com,Remote Worldwide,Large, +Global Fleet Management,Ruby on Rails,Fleet Management,https://www.positrace.com,Burnaby,Medium, +GoBolt,Ruby on Rails,Logistics,https://www.gobolt.com,Toronto,Medium, +Hiive,Unknown,FinTech,https://www.hiive.com,Vancouver,Medium, +IGENO,Unknown,Consultancy,https://www.igeno.com,Vancouver,Small, +Intergalactic Agency,Unknown,Digital Agency,https://www.intergalactic.agency,"Yaletown, Vancouver",Small, +IT Glue,Unknown,SaaS,https://www.itglue.com,Vancouver,Large, +Jane.app,Ruby on Rails,HealthTech,https://jane.app,North Vancouver,Large, +Kidzworld,Unknown,Social Media,https://www.kidzworld.com,Vancouver,Small, +Kit (ConvertKit),Ruby on Rails,Marketing,https://kit.com,Remote Worldwide,Medium, +L'Effet Monstre,Ruby on Rails,Web Agency,https://monstre.ca,Quebec City,Medium, +Latero Labs,Ruby on Rails,Consultancy,https://www.laterolabs.com,Vancouver,Large, +Mogo,Unknown,FinTech,https://www.mogo.ca,Vancouver,Large, +Molecular You,Ruby on Rails,HealthTech,https://www.molecularyou.com,Vancouver,Medium, +Mozilla,Ruby on Rails,Open Source,https://www.mozilla.org,Remote Canada,Large, +mybesthelper,Unknown,Marketplace,https://www.mybesthelper.com,Vancouver,Small, +Narvar,Ruby on Rails,E-commerce,https://www.narvar.com,Remote Canada,Large, +Netsign,Ruby on Rails,Consultancy,https://www.netsign.com,Vancouver,Small,silver +Noomii,Unknown,Directory,https://www.noomii.com,Vancouver,Small, +Omnistream,Unknown,Communications,https://www.omnistream-communications.ca,Vancouver,Small, +PagerDuty,Ruby on Rails,DevOps/SaaS,https://www.pagerduty.com,"Toronto, Vancouver",Large, +PayrollHero,Unknown,HR Tech,https://payrollhero.com,"Whistler, Manila",Small, +Phoenix,Ruby on Rails,FinTech,https://www.phoenix.ca,Toronto,Small, +Rise People,Unknown,HR Tech,https://risepeople.com,"Vancouver, Burnaby",Medium, +Rootly,Ruby on Rails,DevOps,https://rootly.com,Remote North America,Small, +Ruby Central,Ruby,Open Source/Community,https://rubycentral.org,Remote Worldwide,Small,silver +Safe Software,Ruby on Rails,Data/GIS,https://www.safe.com,"Surrey, Vancouver",Large, +Scribd,Ruby on Rails,Digital Media,https://tech.scribd.com,Vancouver,Large, +Sensor Tower,Ruby on Rails,Mobile Analytics,https://sensortower.com,Vancouver,Large, +Shopify,Ruby on Rails,E-commerce,https://www.shopify.com,Vancouver,Large, +Spacelist,Ruby on Rails,Real Estate Tech,https://www.spacelist.ca,Vancouver,Small, +Spark,Ruby on Rails,Sales/Marketing,https://www.sparksales.com,"Yaletown, Vancouver",Medium, +StackAdapt,Ruby on Rails,AdTech,https://www.stackadapt.com,Remote Canada,Large, +STAT Search Analytics,Ruby on Rails,SEO/Analytics,https://moz.com/products/api/stat,Vancouver (now Moz),Large, +TELUS Digital,Ruby on Rails,Digital Services,https://www.telus.com/digital,Vancouver,Large, +Thinkific,Ruby on Rails,EdTech,https://www.thinkific.com,Vancouver,Large, +Traction Guest,Unknown,Visitor Management,https://tractionguest.com,Burnaby (now ShieldCo),Large, +Unbounce,Mixed,Marketing Tech,https://unbounce.com,Vancouver (Remote),Large, +Versapay,Ruby on Rails,FinTech,https://versapay.com,Remote Canada,Medium, +WealthBar,Unknown,FinTech,https://www.cifinancial.com,Vancouver (now CI Direct),Large, +Wishpond,Ruby on Rails,Marketing SaaS,https://www.wishpond.com,"Vancouver, Coal Harbour",Large, +Workstream,Ruby on Rails,HR Tech,https://www.workstream.us,Vancouver (Remote),Medium, +Zayzoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,gold +Zipline,Ruby on Rails,Retail SaaS,https://www.getzipline.com,Remote Canada,Medium, diff --git a/companies.html b/companies.html index 8546a08..082140d 100644 --- a/companies.html +++ b/companies.html @@ -21,7 +21,7 @@

Companies Hiring Ruby Developers in Vancouve -{% assign sponsors = site.data.companies | where: "sponsor", "yes" %} +{% assign sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier != ''" %} {% if sponsors.size > 0 %}

@@ -69,7 +69,7 @@

{% endif %} -{% assign non_sponsors = site.data.companies | where_exp: "company", "company.sponsor != 'yes'" %} +{% assign non_sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier == ''" %}

Other Ruby Employers diff --git a/index.html b/index.html index ed55f9e..0be172c 100755 --- a/index.html +++ b/index.html @@ -134,7 +134,7 @@

18+ Years

-{% assign gold_sponsors = site.data.companies | where: "sponsor_level", "gold" %} +{% assign gold_sponsors = site.data.companies | where: "sponsor_tier", "gold" %} {% if gold_sponsors.size > 0 %}

Gold Sponsors

@@ -159,7 +159,7 @@

{{ company.name }}

{% endif %} -{% assign silver_sponsors = site.data.companies | where: "sponsor_level", "silver" %} +{% assign silver_sponsors = site.data.companies | where: "sponsor_tier", "silver" %} {% if silver_sponsors.size > 0 %}

Silver Sponsors

From a84a69893fb539f0a1378e1ba7aa91a53dce9a18 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 19:51:11 -0700 Subject: [PATCH 118/140] fix(companies): correct sponsor filtering logic for table display MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update sponsor filter to explicitly check for 'gold' or 'silver' values - Update non-sponsor filter to exclude 'gold' and 'silver' values - Prevents empty string issues from incorrectly categorizing companies 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- companies.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/companies.html b/companies.html index 082140d..10a12ad 100644 --- a/companies.html +++ b/companies.html @@ -21,7 +21,7 @@

Companies Hiring Ruby Developers in Vancouve

-{% assign sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier != ''" %} +{% assign sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier == 'gold' or company.sponsor_tier == 'silver'" %} {% if sponsors.size > 0 %}

@@ -69,7 +69,7 @@

{% endif %} -{% assign non_sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier == ''" %} +{% assign non_sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier != 'gold' and company.sponsor_tier != 'silver'" %}

Other Ruby Employers From efbb1d97eb14129bd2eac9278d3dc992fe0d9c58 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 19:52:23 -0700 Subject: [PATCH 119/140] chore: delete .DS_Store file --- assets/.DS_Store | Bin 6148 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 assets/.DS_Store diff --git a/assets/.DS_Store b/assets/.DS_Store deleted file mode 100644 index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 Date: Sat, 4 Oct 2025 20:15:51 -0700 Subject: [PATCH 120/140] feat(organizers): add organizers page with photos and navigation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Create organizers page featuring current and past organizers - Add organizer photos (Michael Lee, Weston, Paulo, Philippe) - Add Organizers link to navbar with pipe separator for desktop - Improve Silver Sponsors header readability on index page - Add red hover effect for sponsor names on index page 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _includes/nav.html | 6 + assets/images/people/michael_lee.jpeg | Bin 0 -> 59449 bytes assets/images/people/paulo.jpeg | Bin 0 -> 12450 bytes assets/images/people/philippe.jpeg | Bin 0 -> 8255 bytes assets/images/people/weston.jpeg | Bin 0 -> 25753 bytes index.html | 6 +- organizers.html | 159 ++++++++++++++++++++++++++ 7 files changed, 170 insertions(+), 1 deletion(-) create mode 100644 assets/images/people/michael_lee.jpeg create mode 100644 assets/images/people/paulo.jpeg create mode 100644 assets/images/people/philippe.jpeg create mode 100644 assets/images/people/weston.jpeg create mode 100644 organizers.html diff --git a/_includes/nav.html b/_includes/nav.html index bceb9c1..8c31f3e 100644 --- a/_includes/nav.html +++ b/_includes/nav.html @@ -12,6 +12,12 @@ + + diff --git a/assets/images/people/michael_lee.jpeg b/assets/images/people/michael_lee.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..c4e6433777a8602bc1b9bfe4cfa8f843a1b764ec GIT binary patch literal 59449 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

=y?y{MivTGA3^eqg`8r@*j30tNGG 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 literal 0 HcmV?d00001 diff --git a/assets/images/people/philippe.jpeg b/assets/images/people/philippe.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..e316afa72ae1b312a901f94b1cfb5f057fe01ff6 GIT binary patch literal 8255 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 az@k%t`M6O5g5`XS&;Sd*Klue

object-fit: cover; object-position: center; } + + .feature a:hover h3 { + color: #dc3545 !important; + }
@@ -162,7 +166,7 @@

{{ company.name }}

{% assign silver_sponsors = site.data.companies | where: "sponsor_tier", "silver" %} {% if silver_sponsors.size > 0 %}
-

Silver Sponsors

+

Silver Sponsors

{% for company in silver_sponsors %}
diff --git a/organizers.html b/organizers.html new file mode 100644 index 0000000..d4e782c --- /dev/null +++ b/organizers.html @@ -0,0 +1,159 @@ +--- +layout: layout +title: "Organizers - VanRuby" +--- + +
+
+

VanRuby Organizers

+

Meet the people who keep VanRuby running

+
+ + +
+

Current Organizers

+
+
+
+
+
+ Michael Lee +
+

Michael Lee

+

Co-Organizer

+ + + + + Connect on LinkedIn + +
+
+
+
+
+
+
+ Weston Triemstra +
+

Weston Triemstra

+

Co-Organizer

+ + + + + Connect on LinkedIn + +
+
+
+
+
+ + +
+

Past Organizers

+

We're grateful to these individuals who helped build and grow the VanRuby community.

+
+
+
+
+
+ Paulo Ancheta +
+

Paulo Ancheta

+ + + + + LinkedIn + +
+
+
+
+
+
+
+ Philippe Creux +
+

Philippe Creux

+ + + + + LinkedIn + +
+
+
+
+
+ + +
+

Volunteers

+

Thank you to our amazing volunteers who help make VanRuby events possible!

+
+
+
+
+
+ + + +
+
Your Name Here
+

Volunteer

+
+
+
+
+
+
+
+ + + +
+
Your Name Here
+

Volunteer

+
+
+
+
+
+
+
+ + + +
+
Your Name Here
+

Volunteer

+
+
+
+
+
+ + +
+

Want to Get Involved?

+

We're always looking for volunteers to help organize events, give talks, or contribute to the community.

+ +
+ + + +
From 1a90319a46f24d54b4a0c8311a82bbe53330ff18 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 20:42:47 -0700 Subject: [PATCH 121/140] feat(index): add Luma calendar to hero section MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace Ruby logo with Luma calendar embed in hero - Adjust hero layout from 8/4 to 7/5 columns - Reduce paragraph text size for better balance 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- index.html | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index caaed6f..f52e891 100755 --- a/index.html +++ b/index.html @@ -6,17 +6,18 @@
-
-

Vancouver’s Ruby Community

-

Connect, learn, and grow with VanRuby—a thriving community of +

+

Vancouver's Ruby Community

+

Connect, learn, and grow with VanRuby—a thriving community of Ruby enthusiasts and professionals in Vancouver. Whether you are a beginner or a seasoned expert, our events, talks, and networking opportunities help you stay ahead in the world of Ruby.

Join VanRuby
-
- Jumbotron Logo - VanRuby +
+
From 5c52e979c5d63a0296eea4e6f973ae0a1a91a162 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 20:44:33 -0700 Subject: [PATCH 122/140] fix(companies): resolve Liquid syntax error in sponsor filtering MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace where_exp with OR logic using concat for sponsors - Use loop with unless for non-sponsors filtering - Fixes build error: "Expected end_of_string but found id" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- companies.html | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/companies.html b/companies.html index 10a12ad..66360d2 100644 --- a/companies.html +++ b/companies.html @@ -21,7 +21,9 @@

Companies Hiring Ruby Developers in Vancouve

-{% assign sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier == 'gold' or company.sponsor_tier == 'silver'" %} +{% assign gold_sponsors = site.data.companies | where: "sponsor_tier", "gold" %} +{% assign silver_sponsors = site.data.companies | where: "sponsor_tier", "silver" %} +{% assign sponsors = gold_sponsors | concat: silver_sponsors %} {% if sponsors.size > 0 %}

@@ -69,7 +71,12 @@

{% endif %} -{% assign non_sponsors = site.data.companies | where_exp: "company", "company.sponsor_tier != 'gold' and company.sponsor_tier != 'silver'" %} +{% assign non_sponsors = "" | split: "" %} +{% for company in site.data.companies %} + {% unless company.sponsor_tier == 'gold' or company.sponsor_tier == 'silver' %} + {% assign non_sponsors = non_sponsors | push: company %} + {% endunless %} +{% endfor %}

Other Ruby Employers From cd04a0cd0cdd0318518eac22034bfb519fc3f0f8 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 20:45:57 -0700 Subject: [PATCH 123/140] fix(sass): correct RFS vendor import path for GitHub Actions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Change vendor/rfs import to bootstrap/vendor/rfs - Fixes build error in GitHub Actions CI environment - Resolves "File to import not found or unreadable: vendor/rfs" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _sass/bootstrap/_mixins.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_sass/bootstrap/_mixins.scss b/_sass/bootstrap/_mixins.scss index e1e130b..1d4e189 100644 --- a/_sass/bootstrap/_mixins.scss +++ b/_sass/bootstrap/_mixins.scss @@ -3,7 +3,7 @@ // Used in conjunction with global variables to enable certain theme features. // Vendor -@import "vendor/rfs"; +@import "bootstrap/vendor/rfs"; // Deprecate @import "mixins/deprecate"; From 4d7d4fa085a44a388f3e7f6cc620b5af9c247554 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 20:47:57 -0700 Subject: [PATCH 124/140] fix(sass): add missing Bootstrap vendor directory to git MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Change .gitignore from 'vendor' to '/vendor' to only ignore root vendor - Add _sass/bootstrap/vendor/_rfs.scss to repository - Fixes GitHub Actions build error: "File to import not found: vendor/rfs" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .gitignore | 3 +- _sass/bootstrap/_mixins.scss | 2 +- _sass/bootstrap/vendor/_rfs.scss | 348 +++++++++++++++++++++++++++++++ 3 files changed, 351 insertions(+), 2 deletions(-) create mode 100644 _sass/bootstrap/vendor/_rfs.scss diff --git a/.gitignore b/.gitignore index 3cc7a5a..74d55a8 100755 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,8 @@ _site .sass-cache .jekyll-cache .jekyll-metadata -vendor +/vendor +.bundle # Claude AI .claude/ diff --git a/_sass/bootstrap/_mixins.scss b/_sass/bootstrap/_mixins.scss index 1d4e189..e1e130b 100644 --- a/_sass/bootstrap/_mixins.scss +++ b/_sass/bootstrap/_mixins.scss @@ -3,7 +3,7 @@ // Used in conjunction with global variables to enable certain theme features. // Vendor -@import "bootstrap/vendor/rfs"; +@import "vendor/rfs"; // Deprecate @import "mixins/deprecate"; diff --git a/_sass/bootstrap/vendor/_rfs.scss b/_sass/bootstrap/vendor/_rfs.scss new file mode 100644 index 0000000..aa1f82b --- /dev/null +++ b/_sass/bootstrap/vendor/_rfs.scss @@ -0,0 +1,348 @@ +// stylelint-disable scss/dimension-no-non-numeric-values + +// SCSS RFS mixin +// +// Automated responsive values for font sizes, paddings, margins and much more +// +// Licensed under MIT (https://github.com/twbs/rfs/blob/main/LICENSE) + +// Configuration + +// Base value +$rfs-base-value: 1.25rem !default; +$rfs-unit: rem !default; + +@if $rfs-unit != rem and $rfs-unit != px { + @error "`#{$rfs-unit}` is not a valid unit for $rfs-unit. Use `px` or `rem`."; +} + +// Breakpoint at where values start decreasing if screen width is smaller +$rfs-breakpoint: 1200px !default; +$rfs-breakpoint-unit: px !default; + +@if $rfs-breakpoint-unit != px and $rfs-breakpoint-unit != em and $rfs-breakpoint-unit != rem { + @error "`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`."; +} + +// Resize values based on screen height and width +$rfs-two-dimensional: false !default; + +// Factor of decrease +$rfs-factor: 10 !default; + +@if type-of($rfs-factor) != number or $rfs-factor <= 1 { + @error "`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1."; +} + +// Mode. Possibilities: "min-media-query", "max-media-query" +$rfs-mode: min-media-query !default; + +// Generate enable or disable classes. Possibilities: false, "enable" or "disable" +$rfs-class: false !default; + +// 1 rem = $rfs-rem-value px +$rfs-rem-value: 16 !default; + +// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14 +$rfs-safari-iframe-resize-bug-fix: false !default; + +// Disable RFS by setting $enable-rfs to false +$enable-rfs: true !default; + +// Cache $rfs-base-value unit +$rfs-base-value-unit: unit($rfs-base-value); + +@function divide($dividend, $divisor, $precision: 10) { + $sign: if($dividend > 0 and $divisor > 0 or $dividend < 0 and $divisor < 0, 1, -1); + $dividend: abs($dividend); + $divisor: abs($divisor); + @if $dividend == 0 { + @return 0; + } + @if $divisor == 0 { + @error "Cannot divide by 0"; + } + $remainder: $dividend; + $result: 0; + $factor: 10; + @while ($remainder > 0 and $precision >= 0) { + $quotient: 0; + @while ($remainder >= $divisor) { + $remainder: $remainder - $divisor; + $quotient: $quotient + 1; + } + $result: $result * 10 + $quotient; + $factor: $factor * .1; + $remainder: $remainder * 10; + $precision: $precision - 1; + @if ($precision < 0 and $remainder >= $divisor * 5) { + $result: $result + 1; + } + } + $result: $result * $factor * $sign; + $dividend-unit: unit($dividend); + $divisor-unit: unit($divisor); + $unit-map: ( + "px": 1px, + "rem": 1rem, + "em": 1em, + "%": 1% + ); + @if ($dividend-unit != $divisor-unit and map-has-key($unit-map, $dividend-unit)) { + $result: $result * map-get($unit-map, $dividend-unit); + } + @return $result; +} + +// Remove px-unit from $rfs-base-value for calculations +@if $rfs-base-value-unit == px { + $rfs-base-value: divide($rfs-base-value, $rfs-base-value * 0 + 1); +} +@else if $rfs-base-value-unit == rem { + $rfs-base-value: divide($rfs-base-value, divide($rfs-base-value * 0 + 1, $rfs-rem-value)); +} + +// Cache $rfs-breakpoint unit to prevent multiple calls +$rfs-breakpoint-unit-cache: unit($rfs-breakpoint); + +// Remove unit from $rfs-breakpoint for calculations +@if $rfs-breakpoint-unit-cache == px { + $rfs-breakpoint: divide($rfs-breakpoint, $rfs-breakpoint * 0 + 1); +} +@else if $rfs-breakpoint-unit-cache == rem or $rfs-breakpoint-unit-cache == "em" { + $rfs-breakpoint: divide($rfs-breakpoint, divide($rfs-breakpoint * 0 + 1, $rfs-rem-value)); +} + +// Calculate the media query value +$rfs-mq-value: if($rfs-breakpoint-unit == px, #{$rfs-breakpoint}px, #{divide($rfs-breakpoint, $rfs-rem-value)}#{$rfs-breakpoint-unit}); +$rfs-mq-property-width: if($rfs-mode == max-media-query, max-width, min-width); +$rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height); + +// Internal mixin used to determine which media query needs to be used +@mixin _rfs-media-query { + @if $rfs-two-dimensional { + @if $rfs-mode == max-media-query { + @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}), (#{$rfs-mq-property-height}: #{$rfs-mq-value}) { + @content; + } + } + @else { + @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) and (#{$rfs-mq-property-height}: #{$rfs-mq-value}) { + @content; + } + } + } + @else { + @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) { + @content; + } + } +} + +// Internal mixin that adds disable classes to the selector if needed. +@mixin _rfs-rule { + @if $rfs-class == disable and $rfs-mode == max-media-query { + // Adding an extra class increases specificity, which prevents the media query to override the property + &, + .disable-rfs &, + &.disable-rfs { + @content; + } + } + @else if $rfs-class == enable and $rfs-mode == min-media-query { + .enable-rfs &, + &.enable-rfs { + @content; + } + } @else { + @content; + } +} + +// Internal mixin that adds enable classes to the selector if needed. +@mixin _rfs-media-query-rule { + + @if $rfs-class == enable { + @if $rfs-mode == min-media-query { + @content; + } + + @include _rfs-media-query () { + .enable-rfs &, + &.enable-rfs { + @content; + } + } + } + @else { + @if $rfs-class == disable and $rfs-mode == min-media-query { + .disable-rfs &, + &.disable-rfs { + @content; + } + } + @include _rfs-media-query () { + @content; + } + } +} + +// Helper function to get the formatted non-responsive value +@function rfs-value($values) { + // Convert to list + $values: if(type-of($values) != list, ($values,), $values); + + $val: ""; + + // Loop over each value and calculate value + @each $value in $values { + @if $value == 0 { + $val: $val + " 0"; + } + @else { + // Cache $value unit + $unit: if(type-of($value) == "number", unit($value), false); + + @if $unit == px { + // Convert to rem if needed + $val: $val + " " + if($rfs-unit == rem, #{divide($value, $value * 0 + $rfs-rem-value)}rem, $value); + } + @else if $unit == rem { + // Convert to px if needed + $val: $val + " " + if($rfs-unit == px, #{divide($value, $value * 0 + 1) * $rfs-rem-value}px, $value); + } @else { + // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value + $val: $val + " " + $value; + } + } + } + + // Remove first space + @return unquote(str-slice($val, 2)); +} + +// Helper function to get the responsive value calculated by RFS +@function rfs-fluid-value($values) { + // Convert to list + $values: if(type-of($values) != list, ($values,), $values); + + $val: ""; + + // Loop over each value and calculate value + @each $value in $values { + @if $value == 0 { + $val: $val + " 0"; + } @else { + // Cache $value unit + $unit: if(type-of($value) == "number", unit($value), false); + + // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value + @if not $unit or $unit != px and $unit != rem { + $val: $val + " " + $value; + } @else { + // Remove unit from $value for calculations + $value: divide($value, $value * 0 + if($unit == px, 1, divide(1, $rfs-rem-value))); + + // Only add the media query if the value is greater than the minimum value + @if abs($value) <= $rfs-base-value or not $enable-rfs { + $val: $val + " " + if($rfs-unit == rem, #{divide($value, $rfs-rem-value)}rem, #{$value}px); + } + @else { + // Calculate the minimum value + $value-min: $rfs-base-value + divide(abs($value) - $rfs-base-value, $rfs-factor); + + // Calculate difference between $value and the minimum value + $value-diff: abs($value) - $value-min; + + // Base value formatting + $min-width: if($rfs-unit == rem, #{divide($value-min, $rfs-rem-value)}rem, #{$value-min}px); + + // Use negative value if needed + $min-width: if($value < 0, -$min-width, $min-width); + + // Use `vmin` if two-dimensional is enabled + $variable-unit: if($rfs-two-dimensional, vmin, vw); + + // Calculate the variable width between 0 and $rfs-breakpoint + $variable-width: #{divide($value-diff * 100, $rfs-breakpoint)}#{$variable-unit}; + + // Return the calculated value + $val: $val + " calc(" + $min-width + if($value < 0, " - ", " + ") + $variable-width + ")"; + } + } + } + } + + // Remove first space + @return unquote(str-slice($val, 2)); +} + +// RFS mixin +@mixin rfs($values, $property: font-size) { + @if $values != null { + $val: rfs-value($values); + $fluid-val: rfs-fluid-value($values); + + // Do not print the media query if responsive & non-responsive values are the same + @if $val == $fluid-val { + #{$property}: $val; + } + @else { + @include _rfs-rule () { + #{$property}: if($rfs-mode == max-media-query, $val, $fluid-val); + + // Include safari iframe resize fix if needed + min-width: if($rfs-safari-iframe-resize-bug-fix, (0 * 1vw), null); + } + + @include _rfs-media-query-rule () { + #{$property}: if($rfs-mode == max-media-query, $fluid-val, $val); + } + } + } +} + +// Shorthand helper mixins +@mixin font-size($value) { + @include rfs($value); +} + +@mixin padding($value) { + @include rfs($value, padding); +} + +@mixin padding-top($value) { + @include rfs($value, padding-top); +} + +@mixin padding-right($value) { + @include rfs($value, padding-right); +} + +@mixin padding-bottom($value) { + @include rfs($value, padding-bottom); +} + +@mixin padding-left($value) { + @include rfs($value, padding-left); +} + +@mixin margin($value) { + @include rfs($value, margin); +} + +@mixin margin-top($value) { + @include rfs($value, margin-top); +} + +@mixin margin-right($value) { + @include rfs($value, margin-right); +} + +@mixin margin-bottom($value) { + @include rfs($value, margin-bottom); +} + +@mixin margin-left($value) { + @include rfs($value, margin-left); +} From d51d407537b6f958af3e2d533e90f3b93f777155 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 21:04:04 -0700 Subject: [PATCH 125/140] feat(sponsors): add BrainStation as gold sponsor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add BrainStation to companies.csv as gold sponsor - Create BrainStation logo SVG include - Update index.html to display BrainStation logo 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _data/companies.csv | 1 + _includes/sponsor_logos/brainstation.html | 3 +++ index.html | 4 +++- 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 _includes/sponsor_logos/brainstation.html diff --git a/_data/companies.csv b/_data/companies.csv index fcb805b..a0ad3f0 100644 --- a/_data/companies.csv +++ b/_data/companies.csv @@ -1,6 +1,7 @@ name,codebase,market,website,location,team_size,sponsor_tier Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large, Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large, +BrainStation,Not Applicable,EdTech,https://brainstation.io,Vancouver,Medium,gold Clio,Ruby on Rails,Legal Tech,https://www.clio.com,"Burnaby, Vancouver, Calgary, Toronto",Large,gold Copper CRM,Ruby on Rails,SaaS/CRM,https://www.copper.com,Remote Canada,Medium, Diligent,Unknown,Governance,https://www.diligent.com,"Coal Harbour, Vancouver",Large, diff --git a/_includes/sponsor_logos/brainstation.html b/_includes/sponsor_logos/brainstation.html new file mode 100644 index 0000000..171232f --- /dev/null +++ b/_includes/sponsor_logos/brainstation.html @@ -0,0 +1,3 @@ + + + diff --git a/index.html b/index.html index f52e891..b544237 100755 --- a/index.html +++ b/index.html @@ -149,7 +149,9 @@

Gold Sponsors

- {% if company.name == "Clio" %} + {% if company.name == "BrainStation" %} + {% include sponsor_logos/brainstation.html %} + {% elsif company.name == "Clio" %} {% include sponsor_logos/clio.html %} {% elsif company.name == "Zayzoon" %} {% include sponsor_logos/zayzoon.html %} From 760dc34927bfa3aedfa7bdcef1ae5f8b41686b2e Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 21:06:26 -0700 Subject: [PATCH 126/140] refactor(sponsors): simplify BrainStation logo and update gold layout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Extract only brain icon from BrainStation logo SVG - Change gold sponsors layout from 2 columns to 3 columns 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _includes/sponsor_logos/brainstation.html | 4 ++-- index.html | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/_includes/sponsor_logos/brainstation.html b/_includes/sponsor_logos/brainstation.html index 171232f..b69858c 100644 --- a/_includes/sponsor_logos/brainstation.html +++ b/_includes/sponsor_logos/brainstation.html @@ -1,3 +1,3 @@ - - + + diff --git a/index.html b/index.html index b544237..f040a3b 100755 --- a/index.html +++ b/index.html @@ -143,7 +143,7 @@

18+ Years

{% if gold_sponsors.size > 0 %}

Gold Sponsors

-
+
{% for company in gold_sponsors %}
Date: Sat, 4 Oct 2025 21:07:15 -0700 Subject: [PATCH 127/140] fix(sponsors): correct ZayZoon capitalization MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update company name from Zayzoon to ZayZoon in companies.csv - Update reference in index.html to match 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _data/companies.csv | 2 +- index.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/_data/companies.csv b/_data/companies.csv index a0ad3f0..000195d 100644 --- a/_data/companies.csv +++ b/_data/companies.csv @@ -56,5 +56,5 @@ Versapay,Ruby on Rails,FinTech,https://versapay.com,Remote Canada,Medium, WealthBar,Unknown,FinTech,https://www.cifinancial.com,Vancouver (now CI Direct),Large, Wishpond,Ruby on Rails,Marketing SaaS,https://www.wishpond.com,"Vancouver, Coal Harbour",Large, Workstream,Ruby on Rails,HR Tech,https://www.workstream.us,Vancouver (Remote),Medium, -Zayzoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,gold +ZayZoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,gold Zipline,Ruby on Rails,Retail SaaS,https://www.getzipline.com,Remote Canada,Medium, diff --git a/index.html b/index.html index f040a3b..c2f4d5a 100755 --- a/index.html +++ b/index.html @@ -153,7 +153,7 @@

Gold Sponsors

{% include sponsor_logos/brainstation.html %} {% elsif company.name == "Clio" %} {% include sponsor_logos/clio.html %} - {% elsif company.name == "Zayzoon" %} + {% elsif company.name == "ZayZoon" %} {% include sponsor_logos/zayzoon.html %} {% endif %}
From 1678e04962f9f78995d722991deb6a77c9c8639e Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 21:09:36 -0700 Subject: [PATCH 128/140] feat(companies): add hide_from_jobs column to filter job listings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add hide_from_jobs column to companies.csv - Set BrainStation to hide_from_jobs=true - Update companies.html to filter out hidden companies from both tables - Companies with hide_from_jobs=true still appear as sponsors on index 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- _data/companies.csv | 120 ++++++++++++++++++++++---------------------- companies.html | 4 +- 2 files changed, 63 insertions(+), 61 deletions(-) diff --git a/_data/companies.csv b/_data/companies.csv index 000195d..1ba0ada 100644 --- a/_data/companies.csv +++ b/_data/companies.csv @@ -1,60 +1,60 @@ -name,codebase,market,website,location,team_size,sponsor_tier -Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large, -Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large, -BrainStation,Not Applicable,EdTech,https://brainstation.io,Vancouver,Medium,gold -Clio,Ruby on Rails,Legal Tech,https://www.clio.com,"Burnaby, Vancouver, Calgary, Toronto",Large,gold -Copper CRM,Ruby on Rails,SaaS/CRM,https://www.copper.com,Remote Canada,Medium, -Diligent,Unknown,Governance,https://www.diligent.com,"Coal Harbour, Vancouver",Large, -domain7,Ruby on Rails,Digital Agency,https://www.versett.com,Vancouver (now Versett),Large, -E-xact Transactions,Unknown,FinTech,https://www.e-xact.com,Vancouver (now Paynt),Large, -Envisio,Unknown,GovTech,https://www.envisio.com,Vancouver,Medium, -Ethelo Decisions,Unknown,Decision Tech,https://www.ethelo.com,Vancouver,Small, -Files.com,Ruby on Rails,Cloud Storage,https://www.files.com,Remote Canada,Medium, -Foodee,Unknown,Food Delivery,https://www.foodee.com,Vancouver (now Sodexo),Large, -Fullscript,Ruby on Rails,HealthTech,https://fullscript.com,Remote Canada,Large, -Gen II Fund,Ruby on Rails,Venture Capital,https://www.gen2fund.com,Vancouver,Small,silver -GitHub,Ruby on Rails,DevOps/Platform,https://github.com,Remote Worldwide,Large,silver -GitLab,Ruby on Rails,DevOps,https://about.gitlab.com,Remote Worldwide,Large, -Global Fleet Management,Ruby on Rails,Fleet Management,https://www.positrace.com,Burnaby,Medium, -GoBolt,Ruby on Rails,Logistics,https://www.gobolt.com,Toronto,Medium, -Hiive,Unknown,FinTech,https://www.hiive.com,Vancouver,Medium, -IGENO,Unknown,Consultancy,https://www.igeno.com,Vancouver,Small, -Intergalactic Agency,Unknown,Digital Agency,https://www.intergalactic.agency,"Yaletown, Vancouver",Small, -IT Glue,Unknown,SaaS,https://www.itglue.com,Vancouver,Large, -Jane.app,Ruby on Rails,HealthTech,https://jane.app,North Vancouver,Large, -Kidzworld,Unknown,Social Media,https://www.kidzworld.com,Vancouver,Small, -Kit (ConvertKit),Ruby on Rails,Marketing,https://kit.com,Remote Worldwide,Medium, -L'Effet Monstre,Ruby on Rails,Web Agency,https://monstre.ca,Quebec City,Medium, -Latero Labs,Ruby on Rails,Consultancy,https://www.laterolabs.com,Vancouver,Large, -Mogo,Unknown,FinTech,https://www.mogo.ca,Vancouver,Large, -Molecular You,Ruby on Rails,HealthTech,https://www.molecularyou.com,Vancouver,Medium, -Mozilla,Ruby on Rails,Open Source,https://www.mozilla.org,Remote Canada,Large, -mybesthelper,Unknown,Marketplace,https://www.mybesthelper.com,Vancouver,Small, -Narvar,Ruby on Rails,E-commerce,https://www.narvar.com,Remote Canada,Large, -Netsign,Ruby on Rails,Consultancy,https://www.netsign.com,Vancouver,Small,silver -Noomii,Unknown,Directory,https://www.noomii.com,Vancouver,Small, -Omnistream,Unknown,Communications,https://www.omnistream-communications.ca,Vancouver,Small, -PagerDuty,Ruby on Rails,DevOps/SaaS,https://www.pagerduty.com,"Toronto, Vancouver",Large, -PayrollHero,Unknown,HR Tech,https://payrollhero.com,"Whistler, Manila",Small, -Phoenix,Ruby on Rails,FinTech,https://www.phoenix.ca,Toronto,Small, -Rise People,Unknown,HR Tech,https://risepeople.com,"Vancouver, Burnaby",Medium, -Rootly,Ruby on Rails,DevOps,https://rootly.com,Remote North America,Small, -Ruby Central,Ruby,Open Source/Community,https://rubycentral.org,Remote Worldwide,Small,silver -Safe Software,Ruby on Rails,Data/GIS,https://www.safe.com,"Surrey, Vancouver",Large, -Scribd,Ruby on Rails,Digital Media,https://tech.scribd.com,Vancouver,Large, -Sensor Tower,Ruby on Rails,Mobile Analytics,https://sensortower.com,Vancouver,Large, -Shopify,Ruby on Rails,E-commerce,https://www.shopify.com,Vancouver,Large, -Spacelist,Ruby on Rails,Real Estate Tech,https://www.spacelist.ca,Vancouver,Small, -Spark,Ruby on Rails,Sales/Marketing,https://www.sparksales.com,"Yaletown, Vancouver",Medium, -StackAdapt,Ruby on Rails,AdTech,https://www.stackadapt.com,Remote Canada,Large, -STAT Search Analytics,Ruby on Rails,SEO/Analytics,https://moz.com/products/api/stat,Vancouver (now Moz),Large, -TELUS Digital,Ruby on Rails,Digital Services,https://www.telus.com/digital,Vancouver,Large, -Thinkific,Ruby on Rails,EdTech,https://www.thinkific.com,Vancouver,Large, -Traction Guest,Unknown,Visitor Management,https://tractionguest.com,Burnaby (now ShieldCo),Large, -Unbounce,Mixed,Marketing Tech,https://unbounce.com,Vancouver (Remote),Large, -Versapay,Ruby on Rails,FinTech,https://versapay.com,Remote Canada,Medium, -WealthBar,Unknown,FinTech,https://www.cifinancial.com,Vancouver (now CI Direct),Large, -Wishpond,Ruby on Rails,Marketing SaaS,https://www.wishpond.com,"Vancouver, Coal Harbour",Large, -Workstream,Ruby on Rails,HR Tech,https://www.workstream.us,Vancouver (Remote),Medium, -ZayZoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,gold -Zipline,Ruby on Rails,Retail SaaS,https://www.getzipline.com,Remote Canada,Medium, +name,codebase,market,website,location,team_size,sponsor_tier,hide_from_jobs +Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large,,, +Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large,,, +BrainStation,Not Applicable,EdTech,https://brainstation.io,Vancouver,Medium,gold,true +Clio,Ruby on Rails,Legal Tech,https://www.clio.com,"Burnaby, Vancouver, Calgary, Toronto",Large,gold, +Copper CRM,Ruby on Rails,SaaS/CRM,https://www.copper.com,Remote Canada,Medium,, +Diligent,Unknown,Governance,https://www.diligent.com,"Coal Harbour, Vancouver",Large,, +domain7,Ruby on Rails,Digital Agency,https://www.versett.com,Vancouver (now Versett),Large,, +E-xact Transactions,Unknown,FinTech,https://www.e-xact.com,Vancouver (now Paynt),Large,, +Envisio,Unknown,GovTech,https://www.envisio.com,Vancouver,Medium,, +Ethelo Decisions,Unknown,Decision Tech,https://www.ethelo.com,Vancouver,Small,, +Files.com,Ruby on Rails,Cloud Storage,https://www.files.com,Remote Canada,Medium,, +Foodee,Unknown,Food Delivery,https://www.foodee.com,Vancouver (now Sodexo),Large,, +Fullscript,Ruby on Rails,HealthTech,https://fullscript.com,Remote Canada,Large,, +Gen II Fund,Ruby on Rails,Venture Capital,https://www.gen2fund.com,Vancouver,Small,silver, +GitHub,Ruby on Rails,DevOps/Platform,https://github.com,Remote Worldwide,Large,silver, +GitLab,Ruby on Rails,DevOps,https://about.gitlab.com,Remote Worldwide,Large,, +Global Fleet Management,Ruby on Rails,Fleet Management,https://www.positrace.com,Burnaby,Medium,, +GoBolt,Ruby on Rails,Logistics,https://www.gobolt.com,Toronto,Medium,, +Hiive,Unknown,FinTech,https://www.hiive.com,Vancouver,Medium,, +IGENO,Unknown,Consultancy,https://www.igeno.com,Vancouver,Small,, +Intergalactic Agency,Unknown,Digital Agency,https://www.intergalactic.agency,"Yaletown, Vancouver",Small,, +IT Glue,Unknown,SaaS,https://www.itglue.com,Vancouver,Large,, +Jane.app,Ruby on Rails,HealthTech,https://jane.app,North Vancouver,Large,, +Kidzworld,Unknown,Social Media,https://www.kidzworld.com,Vancouver,Small,, +Kit (ConvertKit),Ruby on Rails,Marketing,https://kit.com,Remote Worldwide,Medium,, +L'Effet Monstre,Ruby on Rails,Web Agency,https://monstre.ca,Quebec City,Medium,, +Latero Labs,Ruby on Rails,Consultancy,https://www.laterolabs.com,Vancouver,Large,, +Mogo,Unknown,FinTech,https://www.mogo.ca,Vancouver,Large,, +Molecular You,Ruby on Rails,HealthTech,https://www.molecularyou.com,Vancouver,Medium,, +Mozilla,Ruby on Rails,Open Source,https://www.mozilla.org,Remote Canada,Large,, +mybesthelper,Unknown,Marketplace,https://www.mybesthelper.com,Vancouver,Small,, +Narvar,Ruby on Rails,E-commerce,https://www.narvar.com,Remote Canada,Large,, +Netsign,Ruby on Rails,Consultancy,https://www.netsign.com,Vancouver,Small,silver, +Noomii,Unknown,Directory,https://www.noomii.com,Vancouver,Small,, +Omnistream,Unknown,Communications,https://www.omnistream-communications.ca,Vancouver,Small,, +PagerDuty,Ruby on Rails,DevOps/SaaS,https://www.pagerduty.com,"Toronto, Vancouver",Large,, +PayrollHero,Unknown,HR Tech,https://payrollhero.com,"Whistler, Manila",Small,, +Phoenix,Ruby on Rails,FinTech,https://www.phoenix.ca,Toronto,Small,, +Rise People,Unknown,HR Tech,https://risepeople.com,"Vancouver, Burnaby",Medium,, +Rootly,Ruby on Rails,DevOps,https://rootly.com,Remote North America,Small,, +Ruby Central,Ruby,Open Source/Community,https://rubycentral.org,Remote Worldwide,Small,silver, +Safe Software,Ruby on Rails,Data/GIS,https://www.safe.com,"Surrey, Vancouver",Large,, +Scribd,Ruby on Rails,Digital Media,https://tech.scribd.com,Vancouver,Large,, +Sensor Tower,Ruby on Rails,Mobile Analytics,https://sensortower.com,Vancouver,Large,, +Shopify,Ruby on Rails,E-commerce,https://www.shopify.com,Vancouver,Large,, +Spacelist,Ruby on Rails,Real Estate Tech,https://www.spacelist.ca,Vancouver,Small,, +Spark,Ruby on Rails,Sales/Marketing,https://www.sparksales.com,"Yaletown, Vancouver",Medium,, +StackAdapt,Ruby on Rails,AdTech,https://www.stackadapt.com,Remote Canada,Large,, +STAT Search Analytics,Ruby on Rails,SEO/Analytics,https://moz.com/products/api/stat,Vancouver (now Moz),Large,, +TELUS Digital,Ruby on Rails,Digital Services,https://www.telus.com/digital,Vancouver,Large,, +Thinkific,Ruby on Rails,EdTech,https://www.thinkific.com,Vancouver,Large,, +Traction Guest,Unknown,Visitor Management,https://tractionguest.com,Burnaby (now ShieldCo),Large,, +Unbounce,Mixed,Marketing Tech,https://unbounce.com,Vancouver (Remote),Large,, +Versapay,Ruby on Rails,FinTech,https://versapay.com,Remote Canada,Medium,, +WealthBar,Unknown,FinTech,https://www.cifinancial.com,Vancouver (now CI Direct),Large,, +Wishpond,Ruby on Rails,Marketing SaaS,https://www.wishpond.com,"Vancouver, Coal Harbour",Large,, +Workstream,Ruby on Rails,HR Tech,https://www.workstream.us,Vancouver (Remote),Medium,, +ZayZoon,Ruby on Rails,FinTech,https://www.zayzoon.com,Calgary,Medium,gold, +Zipline,Ruby on Rails,Retail SaaS,https://www.getzipline.com,Remote Canada,Medium,, diff --git a/companies.html b/companies.html index 66360d2..7769f50 100644 --- a/companies.html +++ b/companies.html @@ -54,12 +54,14 @@

{% assign sorted_sponsors = sponsors | sort: "name" %} {% for company in sorted_sponsors %} + {% unless company.hide_from_jobs == 'true' %} {{ company.name }} {{ company.codebase }} {{ company.market }} {{ company.team_size }} + {% endunless %} {% endfor %} @@ -73,7 +75,7 @@

{% assign non_sponsors = "" | split: "" %} {% for company in site.data.companies %} - {% unless company.sponsor_tier == 'gold' or company.sponsor_tier == 'silver' %} + {% unless company.sponsor_tier == 'gold' or company.sponsor_tier == 'silver' or company.hide_from_jobs == 'true' %} {% assign non_sponsors = non_sponsors | push: company %} {% endunless %} {% endfor %} From cffd2100d795d37ad4461e6fbb01ddda9a0cf288 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Sat, 4 Oct 2025 21:10:44 -0700 Subject: [PATCH 129/140] fix(companies): change heading to Employers Sponsoring VanRuby MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update heading from "Companies Sponsoring VanRuby" to "Employers Sponsoring VanRuby" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- companies.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/companies.html b/companies.html index 7769f50..cb66c82 100644 --- a/companies.html +++ b/companies.html @@ -27,7 +27,7 @@

Companies Hiring Ruby Developers in Vancouve {% if sponsors.size > 0 %}

- Companies Sponsoring VanRuby + Employers Sponsoring VanRuby

These companies actively support the VanRuby community and are currently hiring Ruby developers.

From 3bce0c949561ed97f490af45589542e47fb45331 Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Wed, 8 Oct 2025 16:41:26 -0700 Subject: [PATCH 130/140] Add AltFee --- _data/companies.csv | 1 + 1 file changed, 1 insertion(+) diff --git a/_data/companies.csv b/_data/companies.csv index 1ba0ada..6e9461e 100644 --- a/_data/companies.csv +++ b/_data/companies.csv @@ -1,4 +1,5 @@ name,codebase,market,website,location,team_size,sponsor_tier,hide_from_jobs +AltFee,Ruby on Rails,Legal Tech,https://altfeeco.com,Vancouver,Small,, Amazon,Mixed,Tech/E-commerce,https://www.amazon.ca,Vancouver,Large,,, Block (Square),Ruby on Rails,FinTech,https://block.xyz,"Toronto, Vancouver",Large,,, BrainStation,Not Applicable,EdTech,https://brainstation.io,Vancouver,Medium,gold,true From ba032867b261696e6d210c2dcc3bd620d40f6e68 Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Wed, 8 Oct 2025 16:52:54 -0700 Subject: [PATCH 131/140] tweak github logo size --- _includes/sponsor_logos/github.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_includes/sponsor_logos/github.html b/_includes/sponsor_logos/github.html index f864d46..66d1f19 100644 --- a/_includes/sponsor_logos/github.html +++ b/_includes/sponsor_logos/github.html @@ -1,5 +1,5 @@ - + - \ No newline at end of file + From 80bf6b67bb9ccea268cb75f71f41d0241bfbc582 Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Wed, 8 Oct 2025 16:53:12 -0700 Subject: [PATCH 132/140] =?UTF-8?q?Update=20bigdecimal=203.2.3=20=E2=86=92?= =?UTF-8?q?=203.3.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 2f4f069..1c564f0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -6,7 +6,7 @@ GEM ast (2.4.3) base64 (0.3.0) benchmark (0.4.1) - bigdecimal (3.2.3) + bigdecimal (3.3.0) bootstrap (5.3.5) popper_js (>= 2.11.8, < 3) colorator (1.1.0) @@ -132,4 +132,4 @@ DEPENDENCIES tzinfo-data BUNDLED WITH - 2.4.20 + 2.7.2 From fd2b884de392544855919b6d497e0623752deba3 Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Wed, 8 Oct 2025 16:53:16 -0700 Subject: [PATCH 133/140] =?UTF-8?q?Update=20json=202.15.0=20=E2=86=92=202.?= =?UTF-8?q?15.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 1c564f0..86bc11a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -51,7 +51,7 @@ GEM jekyll (>= 3.7, < 5.0) jekyll-watch (2.2.1) listen (~> 3.0) - json (2.15.0) + json (2.15.1) kramdown (2.5.1) rexml (>= 3.3.9) kramdown-parser-gfm (1.1.0) From 9ca9ff63f9fde7dce9e6633801b85ebd94f403f2 Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Thu, 9 Oct 2025 18:11:58 -0700 Subject: [PATCH 134/140] Make sponsor contact send email --- sponsors.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sponsors.html b/sponsors.html index a7dcf0b..5f0b76b 100644 --- a/sponsors.html +++ b/sponsors.html @@ -136,6 +136,6 @@

Build Your Brand

Questions about sponsorship?

- Get in Touch + Get in Touch
From 6167b4a1db25f22172beb13986364092c46dd648 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Fri, 10 Oct 2025 18:41:23 -0700 Subject: [PATCH 135/140] style: change sponsor button from warning to secondary color Reduce visual distraction from the primary "Join VanRuby" call-to-action by changing the "Become a sponsor" button from gold (btn-warning) to gray (btn-secondary). --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index c2f4d5a..31cfb5a 100755 --- a/index.html +++ b/index.html @@ -44,7 +44,7 @@
Engaging Speakers
Community Driven

VanRuby would not exist without support from our sponsors. If your school or business could benefit from connecting with our community, we would love to hear from you.

- Become a sponsor + Become a sponsor

No GitHub account? Email us instead

From 7236b9b9913cc1d49ecfd40a029829163ecc077f Mon Sep 17 00:00:00 2001 From: Weston Triemstra Date: Wed, 15 Oct 2025 00:15:16 -0700 Subject: [PATCH 136/140] Simplify colour usage, set primary colour --- _includes/nav.html | 6 +++--- assets/css/main.scss | 5 +++++ companies.html | 6 +++--- index.html | 8 ++++---- organizers.html | 2 +- sponsors.html | 4 ++-- 6 files changed, 18 insertions(+), 13 deletions(-) diff --git a/_includes/nav.html b/_includes/nav.html index 8c31f3e..47c029b 100644 --- a/_includes/nav.html +++ b/_includes/nav.html @@ -22,7 +22,7 @@ Become a Sponsor - Become a Sponsor - Join VanRuby + Become a Sponsor + Join VanRuby

diff --git a/assets/css/main.scss b/assets/css/main.scss index 7a47275..0ae435d 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -2,6 +2,11 @@ # Only the main Sass file needs front matter (the dashes are enough) --- + +// Default variable overrides +$primary: #dc3545; + + // Import Bootstrap from gem @import "bootstrap"; diff --git a/companies.html b/companies.html index cb66c82..dc60b4f 100644 --- a/companies.html +++ b/companies.html @@ -8,12 +8,12 @@

Companies Hiring Ruby Developers in Vancouver

Explore opportunities with companies that hire Ruby developers in Vancouver. Whether remote-friendly or office-based, these organizations are building amazing products with Ruby.

- {{site.data.companies.size}} Employers + {{site.data.companies.size}} Employers

-