Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: 🍰 Update README.md Etc. #4733

Merged
merged 31 commits into from
Oct 24, 2021
Merged
Show file tree
Hide file tree
Changes from 25 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
570275e
Update README.md
sushidave Oct 18, 2021
af5f2e5
Add documentation hints
Tirokk Oct 19, 2021
8b350c7
Add local installation
Tirokk Oct 19, 2021
13aad9e
Add env and database setup
Tirokk Oct 19, 2021
3a8982d
Fix workflow status badges
Tirokk Oct 19, 2021
7429d39
Fix badges for code triage and codecov
Tirokk Oct 19, 2021
5db3106
Change licence to Ocelot.Social Community
Tirokk Oct 19, 2021
f122dbc
Change package.json description
Tirokk Oct 19, 2021
57568e0
Add contributing
Tirokk Oct 19, 2021
c1fb38b
Fix link
Tirokk Oct 19, 2021
023dd80
Fix branch name template
Tirokk Oct 19, 2021
a356cc9
Change contributing content order
Tirokk Oct 19, 2021
5c1b05d
Fix `volunteers`
Tirokk Oct 19, 2021
e7c458e
Refactor CONTRIBUTING.md
Tirokk Oct 19, 2021
b7809df
Add consideration of `good-first-issue`
Tirokk Oct 19, 2021
ecafad7
Change contribution headline
Tirokk Oct 19, 2021
01d44fd
Change to three important directories
Tirokk Oct 19, 2021
f3f76d2
Set links for local and docker installations
Tirokk Oct 19, 2021
dfa728f
Change deployment content
Tirokk Oct 19, 2021
1b35281
Remove badges of codecov and Open Helper for deployment
Tirokk Oct 20, 2021
133a72a
Set a link on logo
Tirokk Oct 20, 2021
b38e742
Fix link on logo
Tirokk Oct 20, 2021
9c41d1b
Put target blank on logo
Tirokk Oct 20, 2021
334c36a
Add link for Ocelot.Social Community to LICENSE.md
Tirokk Oct 20, 2021
c60b0e5
Add commands linting and test for contributing
Tirokk Oct 20, 2021
eee5e23
Correct english in README.md
Tirokk Oct 21, 2021
7f30c91
Correct misspelling in README.md
Tirokk Oct 21, 2021
aadc8dc
Correct misspelling in README.md
Tirokk Oct 21, 2021
d54d818
Change good-first-issue to a link in README.md
Tirokk Oct 21, 2021
130f7cd
Clarify volunteers invitation in README.md
Tirokk Oct 21, 2021
377b2e0
Correct mention in README.md
Tirokk Oct 21, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 15 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,43 @@
# CONTRIBUTING

Thank you so much for thinking of contributing to the Human Connection project! It's awesome you're here, we really appreciate it. :-\)
Thank you so much for thinking of contributing to the [ocelot.social](https://ocelot.social) project! It's awesome you're here, we really appreciate it. :-\)

## Getting Set Up

Instructions for how to install all the necessary software and some code guidelines can be found in our main [Readme](/README.md) or in our [documentation](https://docs.human-connection.org/human-connection/).
Instructions for how to install all the necessary software and some code guidelines can be found in our main [Readme](/README.md) or in our [documentation](/SUMMARY.md).

To get you started we recommend that you join forces with a regular contributor. Please join [our Discord instance](https://discord.gg/AJSX9DCSUA) to chat with developers or just get in touch directly on an issue on either [Github](https://github.com/Ocelot-Social-Community/Ocelot-Social/issues) or [Zenhub](https://app.zenhub.com/workspaces/ocelotsocial-5fb21ff922cb410015dd6535/board?filterLogic=any&repos=301151089):

![](https://dl.dropbox.com/s/vbmcihkduy9dhko/Screenshot%202019-01-03%2015.50.11.png?dl=0)

We also have regular pair programming sessions that you are very welcome to join! 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 if the times listed below don't work for you – just ping us on Discord.
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.

## Development Flow

We operate in two week sprints that are planned, estimated and prioritised on [Zenhub](https://app.zenhub.com/workspaces/ocelotsocial-5fb21ff922cb410015dd6535/board?filterLogic=any&repos=301151089). All issues are also linked to and synced with [Github](https://github.com/Ocelot-Social-Community/Ocelot-Social/issues). 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.
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](https://discord.gg/AJSX9DCSUA) for real-time communication.

This is how we solve bugs and implement features, step by step:

1. We find an issue we want to work on, usually during the sprint planning but as an open source contributor this can happen at any time.
2. We communicate with the team to see if the issue is still available. (When you comment on an issue but don't get an answer there within 1-2 days try to mention @Human-Connection/hc-dev-team to make sure we check in.)
2. We communicate with the team to see if the issue is still available. (When you comment on an issue but don't get an answer there within 1-2 days try to mention @Ocelot-Social-Community/core-team to make sure we check in.)
3. We make sure we understand the issue in detail – what problem is it solving and how should it be implemented?
4. We assign ourselves to the issue and move it to `In Progress` on [Zenhub](https://app.zenhub.com/workspaces/ocelotsocial-5fb21ff922cb410015dd6535/board?filterLogic=any&repos=301151089).
5. We start working on it in a `new branch` and open a `pull request` prefixed with `[WIP]` (work in progress) to which we regularly push our changes.
6. When questions come up we clarify them with the team (directly in the issue on Github).
7. When we are happy with our work and our PR is passing all tests we remove the `[WIP]` from the PR description and ask for reviews (if you're not sure who to ask there is @Human-Connection/hc-dev-team which pings all core developers).
7. When we are happy with our work and our PR is passing all tests we remove the `[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).
8. We then incorporate the suggestions from the reviews into our work and once it has been approved it can be merged into master!

Every pull request needs to:

* fix an issue (if there is something you want to work on but there is no issue for it, create one first and discuss it with the team)
* include tests for the code that is added or changed
* pass all tests (linter, backend, frontend, end-to-end)
* pass all tests (linter, backend, webapp, code coverage, end-to-end)
* be approved by at least 1 developer who is not the owner of the PR (when more than 10 files were changed it needs 2 approvals)

## Contribution Flow For Open Source Contributors

See [contributing in main README.md](/README.md#contributing)

## The Team

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!
Expand All @@ -55,7 +57,7 @@ You can talk to our core team on [Discord](https://discord.gg/AJSX9DCSUA). And o

## Meetings and Pair Programming Sessions

Times below refer to **German Time** – that's CET (GMT+1) in winter and CEST (GMT+2) in summer – because most Human Connection core team members are living in Germany.
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

Expand Down Expand Up @@ -109,12 +111,13 @@ We practise [collective code ownership](http://www.extremeprogramming.org/rules/
* we avoid blocking because someone else isn't working, so we sometimes take over PRs from other developers
* everyone should always push their code to branches so others can see it

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.
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.](https://www.busfaktor.org/en).

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 volunteeer 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!

<!--
## Open-Source Bounties

There are so many good reasons to contribute to ocelot.social
Expand Down Expand Up @@ -145,3 +148,4 @@ us your invoice as .pdf file attached to an E-Mail once you are done.
Our Open-Source bounty program is a work-in-progress. Based on our future
experience we will make changes and improvements. So keep an eye on this
contribution guide.
-->
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

MIT License

Copyright \(c\) 2018 Human-Connection gGmbH
Copyright \(c\) 2018-2021 [Ocelot.Social Community](https://github.com/Ocelot-Social-Community)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files \(the "Software"\), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

Expand Down
111 changes: 81 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,28 @@
# ocelot.social
# Ocelot.Social

[![Build Status](https://travis-ci.com/Human-Connection/Human-Connection.svg?branch=master)](https://travis-ci.com/Human-Connection/Human-Connection)
[![Codecov Coverage](https://img.shields.io/codecov/c/github/Human-Connection/Human-Connection/master.svg?style=flat-square)](https://codecov.io/gh/Human-Connection/Human-Connection/)
[![MIT License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/Human-Connection/Nitro-Backend/blob/backend/LICENSE.md)
[![Discord Channel](https://img.shields.io/discord/489522408076738561.svg)](https://discordapp.com/invite/DFSjPaX)
[![Open Source Helpers](https://www.codetriage.com/human-connection/human-connection/badges/users.svg)](https://www.codetriage.com/human-connection/human-connection)
[![Build Status Test](https://github.com/Ocelot-Social-Community/Ocelot-Social/actions/workflows/test.yml/badge.svg)](https://github.com/Ocelot-Social-Community/Ocelot-Social/actions)
[![Build Status Publish](https://github.com/Ocelot-Social-Community/Ocelot-Social/actions/workflows/publish.yml/badge.svg)](https://github.com/Ocelot-Social-Community/Ocelot-Social/actions)
[![MIT License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/Ocelot-Social-Community/Ocelot-Social/blob/LICENSE.md)
[![Discord Channel](https://img.shields.io/discord/489522408076738561.svg)](https://discord.gg/AJSX9DCSUA)
[![Open Source Helpers](https://www.codetriage.com/ocelot-social-community/ocelot-social/badges/users.svg)](https://www.codetriage.com/ocelot-social-community/ocelot-social)

ocelot.social is a nonprofit social, action and knowledge network that connects information to action and promotes positive local and global change in all areas of life.

* **Social**: Interact with other people not just by commenting their posts, but by providing **Pro & Contra** arguments, give a **Versus** or ask them by integrated **Chat** or **Let's Talk**
* **Knowledge**: Read articles about interesting topics and find related posts in the **More Info** tab or by **Filtering** based on **Categories** and **Tagging** or by using the **Fulltext Search**.
* **Action**: Don't just read about how to make the world a better place, but come into **Action** by following provided suggestions on the **Action** tab provided by other people or **Organisations**.
[ocelot.social](https://ocelot.social) is free and open source software program code to run social networks. Its development is supported by a community of programmers and interested network operators.

<p align="center">
<img src="webapp/static/img/custom/logo-squared.svg" alt="ocelot.social" width="40%" height="40%">
<a href="https://ocelot.social" target="_blank"><img src="webapp/static/img/custom/logo-squared.svg" alt="ocelot.social" width="40%" height="40%"></a>
</p>

## Live demo
Our goal is to enable people to participate fairly and equally in online social networks. The equality of opportunity applies both to the fundamental equality of all people and to the possibility of letting their diverse voices be heard.

__Try out our deployed [development environment](https://develop.human-connection.org/).__
We therefore consider it desirable that operators offer such networks so that people can choose where they want to be on the move.

Logins:
At the same time, it should be possible in the future to link these networks with each other (ActivityPub, Fediverse), so that users can also connect with people from other networks - for example by making friends or following posts or other contributions.

| email | password | role |
| :--- | :--- | :--- |
| `user@example.org` | 1234 | user |
| `moderator@example.org` | 1234 | moderator |
| `admin@example.org` | 1234 | admin |
In other words, we are interested in a network of networks and in keeping the data as close as possible to the user and the operator they trusts.

## Directory Layout

There are four important directories:
There are three important directories:

* [Backend](./backend) runs on the server and is a middleware between database and frontend
* [Frontend](./webapp) is a server-side-rendered and client-side-rendered web frontend
Expand All @@ -41,8 +33,8 @@ setup **frontend** and **backend**.

There are two approaches:

1. Local installation, which means you have to take care of dependencies yourself
2. **Or** Install everything through Docker which takes care of dependencies for you
1. [Local](#local-installation) installation, which means you have to take care of dependencies yourself.
2. **Or** Install everything through [Docker](#docker-installation) which takes care of dependencies for you.

## Installation

Expand Down Expand Up @@ -91,35 +83,94 @@ docker-compose version 1.23.2

#### Start Ocelot-Social via Docker-Compose

Prepare ENVs once beforehand:

```bash
# in folder webapp/
$ cp .env.template .env

# in folder backend/
$ cp .env.template .env
```

For Development:

```bash
# in main folder
$ docker-compose up
```

For Production:

```bash
# in main folder
$ docker-compose -f docker-compose.yml up
```

This will start all required Docker containers
This will start all required Docker containers.
Make sure your database is running on `http://localhost:7474/browser/`.

## Deployment
Prepare database once beforehand:
Tirokk marked this conversation as resolved.
Show resolved Hide resolved

Deployment methods can be found in the [Ocelot-Social-Deploy-Rebranding](https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding) repository.
```bash
# in folder backend/
yarn run db:migrate init
```

Then clear and seed database:

```bash
# in folder backend/
$ yarn run db:reset && db:seed
```

For a closer description see [backend README.md](./backend/README.md).
For a full documentation see [SUMMERY](./SUMMARY.md).
Tirokk marked this conversation as resolved.
Show resolved Hide resolved

### Local Installation

For a full documentation see [SUMMERY](./SUMMARY.md).
Tirokk marked this conversation as resolved.
Show resolved Hide resolved

The only deployment method in this repository is `docker-compose` for development purposes as described above.
## Contributing

## Developer Chat
Choose an issue (consider our label `good-first-issue`) and leave a comment there. We will then invite you to join our volunteers team.
Tirokk marked this conversation as resolved.
Show resolved Hide resolved
To have the necessary permission to push directly to this repository, please accept our invitation to join our volunteers team via the email we send you.
Tirokk marked this conversation as resolved.
Show resolved Hide resolved

We are happy if you fork our repository, but we don't recommend it for development. You do not need a fork.

Clone this repository locally as [described above](#clone-the-repository), create your branch named `<issue-number>-<description>`, add your code and push your branch to this repository. Then create a PR by comparing it to our `master`.

Please run the following commands before you push:

```bash
# in folder backend/
$ yarn lint --fix
$ yarn test
```

```bash
# in folder webapp/
$ yarn lint --fix
$ yarn locales --fix
$ yarn test
```

Check out our [contribution guideline](./CONTRIBUTING.md), too!

### Developer Chat

Join our friendly open-source community on [Discord](https://discord.gg/AJSX9DCSUA) :heart_eyes_cat:
Just introduce yourself at `#introduce-yourself` and mention `@@Mentor` to get you onboard :neckbeard:
Check out the [contribution guideline](./CONTRIBUTING.md), too!
Just introduce yourself at `#introduce-yourself` and mention a mentor or `@@Mentor` to get you onboard :neckbeard:
Tirokk marked this conversation as resolved.
Show resolved Hide resolved

We give write permissions to every developer who asks for it. Just text us on
[Discord](https://discord.gg/AJSX9DCSUA).

## Deployment

Deployment methods can be found in the [Ocelot-Social-Deploy-Rebranding](https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding) repository.

The only deployment method in this repository for development purposes as described above is `docker-compose`.

## Technology Stack

* [VueJS](https://vuejs.org/)
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "ocelot-social",
"version": "1.0.6",
"description": "Fullstack and API tests with cypress and cucumber for ocelot.social",
"description": "Free and open source software program code available to run social networks.",
"author": "ocelot.social Community",
"license": "MIT",
"private": false,
Expand Down