Compare commits
4 commits
developmen
...
fix-devenv
Author | SHA1 | Date | |
---|---|---|---|
missytake | d6d43f2b0a | ||
missytake | 2bf16aae11 | ||
missytake | 0f6756bce6 | ||
missytake | a0aea38902 |
|
@ -1,4 +1,4 @@
|
||||||
# Kibicara Contribution HowTo
|
# Ticketfrei Contribution HowTo
|
||||||
|
|
||||||
|
|
||||||
## Setup Development Environment
|
## Setup Development Environment
|
||||||
|
@ -10,7 +10,7 @@
|
||||||
3. Activate your dev environment with `source .venv/bin/activate`
|
3. Activate your dev environment with `source .venv/bin/activate`
|
||||||
4. Update pip packages with `pip install -U pip setuptools wheel`
|
4. Update pip packages with `pip install -U pip setuptools wheel`
|
||||||
5. Install with `pip install .`
|
5. Install with `pip install .`
|
||||||
6. Install development dependencies with `pip install tox black`
|
6. Install development dependencies with `pip install tox black pytest pytest-aiohttp`
|
||||||
7. Add git-hook to run test and stylecheck before commmit with
|
7. Add git-hook to run test and stylecheck before commmit with
|
||||||
`ln -s ../../git-hooks/pre-commit .git/hooks/pre-commit`
|
`ln -s ../../git-hooks/pre-commit .git/hooks/pre-commit`
|
||||||
8. Add git-hook to check commmit message format with
|
8. Add git-hook to check commmit message format with
|
||||||
|
@ -19,8 +19,8 @@
|
||||||
|
|
||||||
#### Cheatsheet
|
#### Cheatsheet
|
||||||
|
|
||||||
- Install Kibicara with `pip install .`
|
- Install Ticketfrei with `pip install .`
|
||||||
- Execute Kibicara with `kibicara` (verbose: `kibicara -vvv`)
|
- Execute Ticketfrei with `kibicara` (verbose: `kibicara -vvv`)
|
||||||
- Interact with Swagger REST-API Documentation: `http://localhost:8000/api/docs`
|
- Interact with Swagger REST-API Documentation: `http://localhost:8000/api/docs`
|
||||||
- Test and stylecheck with `tox`
|
- Test and stylecheck with `tox`
|
||||||
- Fix style issues with `black -S kibicara tests`
|
- Fix style issues with `black -S kibicara tests`
|
||||||
|
@ -88,8 +88,8 @@ following pattern:
|
||||||
|
|
||||||
You can use these tags:
|
You can use these tags:
|
||||||
|
|
||||||
- [core] Feature for Kibicara core
|
- [core] Feature for Ticketfrei core
|
||||||
- [frontend] Feature for Kibicara frontend
|
- [frontend] Feature for Ticketfrei frontend
|
||||||
- [$platform] Feature for platforms, e.g.
|
- [$platform] Feature for platforms, e.g.
|
||||||
- [twitter]
|
- [twitter]
|
||||||
- [telegram]
|
- [telegram]
|
||||||
|
@ -140,6 +140,8 @@ development team.
|
||||||
- `model.py`
|
- `model.py`
|
||||||
- `webapi.py`
|
- `webapi.py`
|
||||||
2. Import your bot in `kibicara/webapi/__init__.py`.
|
2. Import your bot in `kibicara/webapi/__init__.py`.
|
||||||
|
3. Generate the FastAPI stuff
|
||||||
|
4. Generate the angular components for the kibicara-frontend from the FastAPI stuff
|
||||||
|
|
||||||
### Explanation
|
### Explanation
|
||||||
|
|
||||||
|
@ -170,7 +172,7 @@ To run the platform, you need to import the bot in
|
||||||
|
|
||||||
A bot should have at least this functionality:
|
A bot should have at least this functionality:
|
||||||
|
|
||||||
- Kibicara REST API (hood admins):
|
- Ticketfrei REST API (hood admins):
|
||||||
- Endpoint for creating a bot associated with a hood
|
- Endpoint for creating a bot associated with a hood
|
||||||
- Endpoint for deleting a bot associated with a hood
|
- Endpoint for deleting a bot associated with a hood
|
||||||
- Endpoint for updating a bot associated with a hood by id
|
- Endpoint for updating a bot associated with a hood by id
|
||||||
|
@ -202,3 +204,5 @@ A bot should have at least this functionality:
|
||||||
- e.g. Twitter via posts or retweets
|
- e.g. Twitter via posts or retweets
|
||||||
- e.g. Telegram via direct message from the bot
|
- e.g. Telegram via direct message from the bot
|
||||||
- e.g. E-Mail via e-mail to the user's address
|
- e.g. E-Mail via e-mail to the user's address
|
||||||
|
|
||||||
|
- Web Interface (hood admins)
|
||||||
|
|
1
COPYING
1
COPYING
|
@ -3,6 +3,7 @@ Copyright (C) 2020 by Cathy Hu <cathy.hu@fau.de>
|
||||||
Copyright (C) 2020 by Christian Hagenest <c.hagenest@pm.me>
|
Copyright (C) 2020 by Christian Hagenest <c.hagenest@pm.me>
|
||||||
Copyright (C) 2020 by Martin Rey <martin.rey@mailbox.org>
|
Copyright (C) 2020 by Martin Rey <martin.rey@mailbox.org>
|
||||||
Copyright (C) 2020 by Maike <maike@systemli.org>
|
Copyright (C) 2020 by Maike <maike@systemli.org>
|
||||||
|
Copyright (C) 2022 by missytake <missytake@systemli.org>
|
||||||
|
|
||||||
Permission to use, copy, modify, and/or distribute this software for any purpose
|
Permission to use, copy, modify, and/or distribute this software for any purpose
|
||||||
with or without fee is hereby granted.
|
with or without fee is hereby granted.
|
||||||
|
|
|
@ -48,7 +48,7 @@ export const environment = {
|
||||||
- Build frontend with `cd kibicara/kibicara-frontend && ng build --prod`
|
- Build frontend with `cd kibicara/kibicara-frontend && ng build --prod`
|
||||||
- Copy the generated frontend to your server to `/home/kibicara/kibicara-frontend`: `scp -r kibicara/kibicara-frontend/dist/kibicara-frontend <your_server>:/home/kibicara`
|
- Copy the generated frontend to your server to `/home/kibicara/kibicara-frontend`: `scp -r kibicara/kibicara-frontend/dist/kibicara-frontend <your_server>:/home/kibicara`
|
||||||
|
|
||||||
### Configure Kibicara Core
|
### Configure Ticketfrei Core
|
||||||
- Write config file to `/etc/kibicara.conf` and replace the domain with yours:
|
- Write config file to `/etc/kibicara.conf` and replace the domain with yours:
|
||||||
```
|
```
|
||||||
database_connection = 'sqlite:////home/kibicara/kibicara.sqlite'
|
database_connection = 'sqlite:////home/kibicara/kibicara.sqlite'
|
||||||
|
@ -59,7 +59,7 @@ frontend_url = 'https://kibicara.example.com'
|
||||||
#### SSL
|
#### SSL
|
||||||
You can use the SSL stuff provided by hypercorn by generating an SSL Certificate and passing its paths to the config options `certfile` and `keyfile` in `/etc/kibicara.conf`.
|
You can use the SSL stuff provided by hypercorn by generating an SSL Certificate and passing its paths to the config options `certfile` and `keyfile` in `/etc/kibicara.conf`.
|
||||||
|
|
||||||
### Configure Kibicara platforms
|
### Configure Ticketfrei platforms
|
||||||
|
|
||||||
#### Configure E-Mail (OpenSMTPd + Relay)
|
#### Configure E-Mail (OpenSMTPd + Relay)
|
||||||
To send and receive e-mails (necessary for registration confirmation and e-mail bot) you will need an MTA. We use OpenSMTPd:
|
To send and receive e-mails (necessary for registration confirmation and e-mail bot) you will need an MTA. We use OpenSMTPd:
|
||||||
|
@ -105,5 +105,5 @@ consumer_secret = '<your_consumer_secret>'
|
||||||
#### Configure Telegram
|
#### Configure Telegram
|
||||||
Nothing to do, because telegram has a nice API.
|
Nothing to do, because telegram has a nice API.
|
||||||
|
|
||||||
### Start Kibicara
|
### Start Ticketfrei
|
||||||
Run `kibicara` with your kibicara user. To have more verbose output add `-vvv`.
|
Run `kibicara` with your kibicara user. To have more verbose output add `-vvv`.
|
||||||
|
|
16
README.md
16
README.md
|
@ -1,9 +1,9 @@
|
||||||
![Angular Frontend](https://github.com/acipm/kibicara/workflows/Angular%20Frontend/badge.svg)
|
![Angular Frontend](https://git.0x90.space/ticketfrei/ticketfrei3/workflows/Angular%20Frontend/badge.svg)
|
||||||
![Python Backend](https://github.com/acipm/kibicara/workflows/Python%20Backend/badge.svg)
|
![Python Backend](https://git.0x90.space/ticketfrei/ticketfrei3/workflows/Python%20Backend/badge.svg)
|
||||||
|
|
||||||
# Kibicara
|
# Ticketfrei 3
|
||||||
|
|
||||||
Kibicara relays messages between different platforms (= social networks).
|
Ticketfrei relays messages between different platforms (= social networks).
|
||||||
|
|
||||||
In its web interface, a hood admin (= registered user) can create a hood to
|
In its web interface, a hood admin (= registered user) can create a hood to
|
||||||
build a connection between different platforms.
|
build a connection between different platforms.
|
||||||
|
@ -11,18 +11,18 @@ build a connection between different platforms.
|
||||||
Users can message a specific hood account on a specific platform (e.g. @xyz on
|
Users can message a specific hood account on a specific platform (e.g. @xyz on
|
||||||
Telegram). This pushes the announcement to all platform accounts of a hood.
|
Telegram). This pushes the announcement to all platform accounts of a hood.
|
||||||
For example: User A writes a message to @xyz on Telegram (which has been
|
For example: User A writes a message to @xyz on Telegram (which has been
|
||||||
connected to Kibicara by a hood admin). This publishes the message on e.g.
|
connected to Ticketfrei by a hood admin). This publishes the message on e.g.
|
||||||
Twitter and other platforms which have been connected to the hood.
|
Twitter and other platforms which have been connected to the hood.
|
||||||
|
|
||||||
The admin of a hood has to define trigger words and bad words. Messages need to
|
The admin of a hood has to define trigger words and bad words. Messages need to
|
||||||
contain a trigger word to be relayed, and must not contain a bad word.
|
contain a trigger word to be relayed, and must not contain a bad word.
|
||||||
|
|
||||||
Kibicara needs to be hosted on a server by an instance maintainer. That way,
|
Ticketfrei needs to be hosted on a server by an instance maintainer. That way,
|
||||||
hood admins don't need a server of their own.
|
hood admins don't need a server of their own.
|
||||||
|
|
||||||
## Deploy Kibicara on a production server
|
## Deploy Ticketfrei on a production server
|
||||||
|
|
||||||
Read `DEPLOYMENT.md` to learn how to deploy Kibicara.
|
Read `DEPLOYMENT.md` to learn how to deploy Ticketfrei.
|
||||||
|
|
||||||
## Contribute!
|
## Contribute!
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue