Thumbor-bootcamp - learning and contribution experience with ❤️ and 🤗 from the thumbor team

Overview

thumbor

learning and contribution experience with ❤️ and 🤗 from the thumbor team

GitHub contributors

thumbor bootcamp is a program to ease new contributors into thumbor's ecosystem, while learning more about open-source collaboration and technology. Apply now!

🕵️ Who's invited?

Anyone can collaborate with thumbor as a bootcamper.

  • If you are a software engineer you can fix bugs, write new tests, create new features.
  • If you are a product manager you can help us organize these tasks and create new ones to move thumbor forward.
  • If you are a designer you can help us improve thumbor's visual identity, website and our overall brand.
  • If you are a content strategist you can help us get better at documenting and onboarding new users.

We could keep going, but the truth is there's room for colaboration on so many levels, that it's best if you just reach out and we can go from there.

🎯 Features

  • 🧹 Find a groomed bootcamp task list up-to-date with thumbor's evolution
  • 📋 Tasks are labeled according to area of expertise and difficulty level
  • 📈 Level up your skills with open-source projects, web services, python and many other fun and interesting technologies
  • 🤗 Receive coaching all through this experience by thumbor's committers and contributors
  • ❤️ Give back to the community by moving thumbor forward and helping thousands around the world

📷 What is thumbor? Ecosystem?

thumbor is an extensible imaging HTTP server. It crops, resizes and transforms images on-demand and serves this images to users.

The extensible nature of thumbor means there are dozens of projects that extend it. Image loaders, storages and results storages, filters, detectors and much more.

Apart from these extensions there's all sort of programming language and web framework integrations.

This is what we call thumbor's ecosystem. All the cool projects that extend and improve thumbor's usage all over the world. You can learn more about it at awesome-thumbor.

These extensions allow thumbor to run in almost any architecture and cloud out there: AWS, GCP, Azure, DigitalOcean and even self-hosted. There are people using Redis, MongoDB, Postgres, Ceph, S3 and many others for storage of images, and the number of possibilities is endless.

You can explore that and more in thumbor's docs.

🤝 Commitment

What is expected of you?

  • 🤢 Do not bite more than you can chew! Pick up tasks you feel confident in completing. This helps the community as we keep moving forward as well as keeps you motivated!
  • 🤗 Be kind! Always assume good intention as we're all trying to create incredible technology and have fun at the same time!
  • 🧘 Be patient! In an open-source project people are donating their time to create good in the world. Thumbor is not different. Maintainers and contributors have families and jobs. We'll help as fast as we can.
  • 🦸‍♀️ Be a force for good! Whenever you can, try to help other bootcampers, create or groom tasks, improve documentation. Anything you feel is leaving a better world than what you started with.
  • ⚖️ Be respectful! We will not tolerate discrimination of any kind. We will not tolerate usage of words that enforce negative stereotypes. If this is not ok with you, this is not the project for you. For more details check our Code of Conduct.

🏃‍♀️ Getting started

Before you even apply to this bootcamp program you can familiarize yourself with thumbor reading its README as well as its documentation.

It is a good idea to have thumbor running with default settings in your environment just to get a hang of what it does. Play with it, crop some images, apply filters.

Once you are ready to get started, apply to the program by creating a new issue in this repository and filling a new Join Thumbor Bootcamp issue.

First click on the issues tab:

Click the issues tab

Then click in new issue button:

Click the new issue button

Finally click the join bootcamp "Get started" button and fill your application:

Click the new issue button

Your application will be reviewed as soon as possible (remember: 🧘 Be patient!). After you are accepted in the program, you can pick one of the L1 tasks and hack away! These tasks are designed to help you move fast and start shipping!

🪖 Bootcamp Tasks

Bootcamp tasks are how you interact with this learning experience. We believe in learning through action.

Thumbor will have bootcamp tasks divided by area of expertise and level.

Areas of Expertise

These will be labels in tasks and help you pick something that interests you.

Some examples are user onboarding, documentation, website & branding, extensibility, imaging and image quality, performance and maintainability.

Task Levels

Disclaimer:

  These tasks consider an investment of 2h a day for the estimates.
  If you are investing less time, no worries, just adjust your expectations.

  This is by no means a deadline. **It's done when it's done.**
Level Effort Expected Duration Size Description
L1 Low ~1d Single file/module This is the bread and butter for people joining thumbor-bootcamp. This is where you start.
L2 Medium ~3-4d Single file/module Requires some knowledge about how thumbor and its parts work.
L3 Medium ~2w Multiple files/modules This is a project level task. It involves discussing what you are doing, creating tests, updating docs. This is where you actually start learning about what it takes to keep a project the size of thumbor with momentum.
L4 Large ~1m Multiple files/modules/projects This is a transformative task that greatly benefits the ecosystem and the community. Once you complete a few of these, we expect to welcome you to the maintainers team, so you can also help onboard other bootcampers.

💪 Getting your next task

To get your next task, just find a task of the appropriate level that picks your interest and assign to yourself.

You can check open tasks, in each level, using this filtered views:

If you can't work on the task anymore, just add to the task what progress you made, what you learned and unassign yourself from it.

🧙‍♂️ Mentors

If you have any issues do not hesitate to get in touch with one of these mentors. Their purpose in this program is to help you keep moving forward!

  • @heynemann - Bernardo Heynemann - [email protected] - Thumbor co-creator and active committer for 12 years
  • @guilhermef - Guilherme Souza - [email protected] - Thumbor co-creator and active committer for 12 years

Being a mentor is a really rewarding experience. If you feel like you could be mentoring new people into open source, just ping one of the mentors above and we'll enlist your help!

👩‍💻 Bootcampers

Our current team of bootcampers include the awesome:


@nicolasgabrielt - Nicolas Taveira - He/Him/His
Joined in 30-Jan-2022

😡 Having Trouble?

If you experience any trouble feel free to create an issue in this repository and tag @heynemann. We'll do our best to help you move forward and have fun!

💻 Hacking thumbor-bootcamp?

If you need to run any of the scripts in this repository use Python 3.10.1 or greater and install the requirements with pip install -r requirements.txt.

Owner
Thumbor (by @globocom)
Thumbor organization is meant to hold all projects related to thumbor maintained by globo.com.
Thumbor (by @globocom)
A fast Python in-process signal/event dispatching system.

Blinker Blinker provides a fast dispatching system that allows any number of interested parties to subscribe to events, or "signals". Signal receivers

jason kirtland 1.4k Dec 31, 2022
Este script añade la config de s4vitar a bspwm automaticamente!

Se ha testeado este script en ParrotOS, Kali y Ubuntu. Funciona para todos los sistemas operativos basados en Debian. Instalación git clone https://gi

yorkox 201 Dec 30, 2022
Aim of the project is to reduce phishing victims. 😇

Sites: For more details visit our Blog. How to use 😀 : You just have to paste the url in the ENTER THE SUSPECTED URL section and SELECT THE RESEMBELI

0 May 19, 2022
Cairo hooks for pre-commit

pre-commit-cairo Cairo hooks for pre-commit. See pre-commit for more details Using pre-commit-cairo with pre-commit Add this to your .pre-commit-confi

Fran Algaba 16 Sep 21, 2022
Run Windows Applications on Linux as if they are native, Use linux applications to launch files files located in windows vm without needing to install applications on vm. With easy to use configuration GUI

Run Windows Applications on Linux as if they are native, Use linux applications to launch files files located in windows vm without needing to install applications on vm. With easy to use configurati

Casu Al Snek 2k Jan 02, 2023
Collection of script & resources for Foundry's Nuke software.

Author: Liam Collod. Collections of scripting stuff I wrote for Foundry's Nuke software. Utilisation You can have a look at the README.md file in each

Liam Collod 1 May 14, 2022
KiCad bus length matching script.

KiBus length matching script This script implements way to monitor multiple nets, combined into a bus that needs to be length matched

Piotr Esden-Tempski 22 Mar 17, 2022
Supply Chain will be a SAAS platfom to provide e-logistic facilites with most optimal

Shipp It Welcome To Supply Chain App [ Shipp It ] In "Shipp It" we are creating a full solution[web+app] for a entire supply chain from receiving orde

SAIKAT_CLAW 25 Dec 26, 2022
This repository requires you to solve a problem by writing some basic python code.

Can You Solve a Problem? A beginner friendly repository that requires you to solve familiar problems with python. This could be as simple as implement

Precious Kolawole 11 Nov 30, 2022
A light library to build tiny websites

A light library to build tiny websites

BT.Q 1 Dec 23, 2021
Automated, progress quest-inspired procedural adventuring

Tales of an Endless Journey (TEJ) Automated, progress quest-inspired procedural adventuring What is this project? Journey is the result of many, many

8 Dec 14, 2021
NExT-Ford-aula4 - NExT Ford aula4

Questão 1: vocês deveram fazer o passo a passo de como ficará as pilhas(Stack) e

Gerson 1 Jan 06, 2022
《practical python programming》的中文翻译

欢迎光临 大约 25 年前,当我第一次学习 Python 时,发现 Python 竟然可以被高效地应用到各种混乱的工作项目上,我立即被震惊了。15 年前,我自己也将这种乐趣教授给别人。教学的结果就是本课程——一门实用的学习 Python的课程。

编程人 125 Dec 17, 2022
Gmvault: Backup and restore your gmail account

Gmvault: Backup and restore your gmail account Gmvault is a tool for backing up your gmail account and never lose email correspondence. Gmvault is ope

Guillaume Aubert 3.5k Jan 01, 2023
The LiberaPay archive module for the SeanPM life archive project.

By: Top README.md Read this article in a different language Sorted by: A-Z Sorting options unavailable ( af Afrikaans Afrikaans | sq Shqiptare Albania

Sean P. Myrick V19.1.7.2 1 Aug 26, 2022
Pipenv-local-deps-repro - Reproduction of a local transitive dependency on pipenv

Reproduction of the pipenv bug with transitive local dependencies. Clone this re

Lucas Duailibe 2 Jan 11, 2022
Catalogue CRUD Application

This Python program creates a relational SQL database hosted on the Snowflake platform, then opens a CRUD GUI to manipulate and view the data. In this application, it is used as a book catalogue. CUR

0 Dec 13, 2022
run-js Goal: The Easiest Way to Run JavaScript in Python

run-js Goal: The Easiest Way to Run JavaScript in Python features Stateless Async JS Functions No Intermediary Files Functional Programming CommonJS a

Daniel J. Dufour 9 Aug 16, 2022
dragmap-meth: Fast and accurate aligner for bisulfite sequencing reads using dragmap

dragmap_meth (dragmap_meth.py) Alignment of BS-Seq reads using dragmap. Intro This works for single-end reads and for paired-end reads from the direct

Shaojun Xie 3 Jul 14, 2022
A Python script made for the Python Discord Pixels event.

Python Discord Pixels A Python script made for the Python Discord Pixels event. Usage Create an image.png RGBA image with your pattern. Transparent pi

Stanisław Jelnicki 4 Mar 23, 2022