OpenSakura
MekaHime 첫 AI 동반자, 오픈소스. 26가지 감정·실제 음성·실시간 답변·기억 기능을 PC에서 구동, 곧 디스코드 모드 제공
ecobasa는 지속 가능한 커뮤니티와 에코빌리지를 연결해 대안적 생활 방식을 찾는 사람들에게 소통 기술을 제공한다
ecobasa is a directory of sustainable communities and ecovillages that connects them to individuals looking for alternative ways of living. The site offers the technology for communication, collaborat
소셜GitHub @ecobasa온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
gift-economy network for sustainable communities (redesign 2020)
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Ecobasa is a gift-economy network for sustainable communities
This is a work-in-progress attempt of a redesign.
What people and communities do on ecobasa:
The simplest way to develop: Docker brings PostGIS, GDAL and Mailpit along.
cp django.env.example django.env
cp postgres.env.example postgres.env
docker compose up
In postgres.env, set the user, password and database that DATABASE_URL in django.env
uses (ecobasa/ecobasa/ecobasa in the example).
django: compiles translations, migrates and runs the dev server on http://localhost:8000database: PostGISmailpit: catches all emails, at http://localhost:8025watch: rebuilds the CSS on changesscheduler: the scheduled jobs, only with docker compose --profile scheduler upCommands and tests run in the django container:
docker compose exec django python manage.py createsuperuser
docker compose exec django python manage.py seed_demo_data
docker compose exec django pytest
After changing Pipfile, rebuild the image: docker compose build django.
Because we are using postgis for location fields, you need a postgres db with postgis extensions for this to work, even for development, sorry.
Install postgresql database server and postgis dependencies:
apt install libgdal-dev postgis postgresql-12
Create normal database in postgres:
su postgres
createuser ecobasa
createdb ecobasa -O ecobasa
Then add postgis extensions to this database:
su postgres
psql -d ecobasa
CREATE EXTENSION postgis;
pipenv install --dev
pipenv shell
python manage.py migrate
npm install
npm run build
The database user must have permission to create a new test database and add postgis extensions:
su postgres
psql
ALTER_ROLE ecobasa SUPERUSER;
pytest
https://ecobasa.herokuapp.com/
(auto deploys master branch)
add docker compose exec django before the following commands for a docker setup
python manage.py load_vocabularies: loads the thing vocabularies
(gift_economy/gifts/vocabularies/) after editing them and recognizes existing listings again.python manage.py match_everything: matches all existing offers and wishes, e.g. after
changing the matching.python manage.py send_test_reply "text" [--key KEY] [--photo path]: in development, answers
the latest (or a given) reference request in Mailpit like a mail app would; then run
fetch_reference_replies.STADIA_MAPS_KEY: for the map tilesDJANGO_SITE_URL: base for links in emails, e.g. https://ecobasa.orgREFERENCE_REPLY_ADDRESS: e.g. [email protected]. Replies go to
references+<key>@ecobasa.org; the key is also in the subject, in case the mail server
doesn't deliver plus addresses. Leave empty to only offer the link.REFERENCE_IMAP_HOST (e.g. mail.ecobytes.net), REFERENCE_IMAP_USER,
REFERENCE_IMAP_PASSWORD, REFERENCE_IMAP_FOLDER (default INBOX): the mailbox for repliesREFERENCE_REQUEST_DELAY_DAYS (1), REFERENCE_REQUEST_UNDATED_DELAY_DAYS (7),
REFERENCE_REQUEST_MAX_AGE_DAYS (30): when to ask for a reference, and how far backPROJECT_STALE_DAYS (60), PROJECT_ARCHIVE_GRACE_DAYS (14): when a project nobody updated
gets an "Is this still current?" email, and when it is archived without an answerIn development, replies are read from Mailpit instead of IMAP.
The jobs that run on their own are in crontab, run by
supercronic in the scheduler container (same image
and settings as django, times in TZ, Europe/Berlin). It logs to the container output, and
skips a job while its previous run is still going.
| When | Command |
|---|---|
| every 5 minutes | fetch_reference_replies |
| daily, 9:00 | archive_stale_projects |
| daily, 10:00 | send_reference_requests |
| Thursdays, 17:00 | send_suggestion_emails |
To change a time or add a job, edit crontab and restart the container
(docker compose restart scheduler). Any job can still be run by hand with
python manage.py <command>.
In development the scheduler is off, so emails only go out when you run a command. To try it (emails land in Mailpit):
docker compose --profile scheduler up