import{_ as r}from"./plugin-vue_export-helper-DlAUqK2U.js";import{c as l,a as s,b as o,d as i,e as t,f as n,r as h,o as d}from"./app-CRJmZGIl.js";const p={};function c(k,e){const a=h("RouteLink");return d(),l("div",null,[e[7]||(e[7]=s('
Thank you so much for thinking of contributing to the ocelot.social project! It's awesome you're here, we really appreciate it. :-)
To get you started we recommend that you join forces with a regular contributor. Please join our Discord instance to chat with developers or just get in touch directly on an issue on either Github or Zenhub:
We also can have pair programming sessions for you! We feel this is often the best way to get to know both the project and the team. Most developers are also available for spontaneous sessions.
We operate in two week sprints that are planned, estimated and prioritised on Zenhub. All issues are also linked to and synced with Github. Look for the good first issue label if you're not sure where to start!
We try to discuss all questions directly related to a feature or bug in the respective issue, in order to preserve it for the future and for other developers. We use Discord for real-time communication.
This is how we solve bugs and implement features, step by step:
In Progress on Zenhub.new branch and open a pull request prefixed with [WIP] (work in progress) to which we regularly push our changes.[WIP] from the PR description and ask for reviews (if you're not sure who to ask there is @Ocelot-Social-Community/core-team which pings all core developers).Every pull request needs to:
There are many volunteers all around the world helping us build this network and without their contributions we wouldn't be where we are today. Big thank you to all of you!
You can talk to our core team on Discord. And on Github you will mostly run into our core developers:
Times below refer to German Time – that's CET (GMT+1) in winter and CEST (GMT+2) in summer – because most ocelot.social Community core team members are living in Germany.
Daily standup
Office CubeWe practice collective code ownership rather than strong code ownership, which means that:
We believe in open source contributions as a learning experience – everyone is welcome to join our team of volunteers and to contribute to the project, no matter their background or level of experience. To support your learning experience we founded the charity association busFaktor() e.V..
We use pair programming sessions as a tool for knowledge sharing. We can learn a lot from each other and only by sharing what we know and overcoming challenges together can we grow as a team and truly own this project collectively.
As a volunteer you have no commitment except your own self development and your awesomeness by contributing to this free and open-source software project. Cheers to you!
The following characters are different from the programming quotation mark:
" or \\"
Please copy and paste the following quotes for the languages:
ATTENTION: For using Docker commands in Apple Silicon environments!
If you encounter trouble building the docker containers on an Apple M1 chip you can try to explicitly define the target platform docker builds and pulls images for:
# set env variable for your shell
$ export DOCKER_DEFAULT_PLATFORM=linux/amd64Or alternatively use a YAML docker compose overwrite file with platform: linux/amd64.
To analyze a Docker build, there is a wonderful tool called dive. Please sponsor if you're using it!
The dive build command is exactly the right one to fulfill what we are looking for. We can use it just like the docker build command and get an analysis afterwards.
So, in our main folder, we use it in the following way:
# in main folder
$ dive build --target <layer-name> -t "ocelotsocialnetwork/<app-name>:local-<layer-name>" --build-arg BBUILD_DATE="<build-date>" --build-arg BBUILD_VERSION="<build-version>" --build-arg BBUILD_COMMIT="<build-commit>" <app-folder-name-or-dot>/The build arguments are optional.
For the specific applications, we use them as follows.
# in main folder
$ dive build --target production -t "ocelotsocialnetwork/backend:local-production" backend/# in main folder
$ dive build --target development -t "ocelotsocialnetwork/backend:local-development" backend/# in main folder
$ dive build --target production -t "ocelotsocialnetwork/webapp:local-production" webapp/# in main folder
$ dive build --target development -t "ocelotsocialnetwork/webapp:local-development" webapp/Thank you so much for thinking of contributing to the ocelot.social project! It's awesome you're here, we really appreciate it. :-)
\\nInstructions for how to install all the necessary software and some code guidelines can be found in our main Readme or in our documentation.
"}`);export{m as comp,b as data};