2017-12-26 17:46:27 +01:00
|
|
|
# Get Together
|
|
|
|
|
|
|
|
Get Together is an open source event manager for local communities.
|
|
|
|
|
2018-08-07 05:53:08 +02:00
|
|
|
Get Together is version *0.7.0*.
|
2018-01-27 07:12:10 +01:00
|
|
|
|
2018-07-07 18:43:03 +02:00
|
|
|
Try it free at https://gettogether.community
|
|
|
|
|
2017-12-26 17:46:27 +01:00
|
|
|
## Goals
|
|
|
|
* Be feature-competitive with Meetup.com
|
|
|
|
* Allow multiple instances to share federated event data
|
|
|
|
* Provide sustainable, cost-effective hosting for FOSS communites
|
|
|
|
* Be developed and maintained by the communities using it
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
To start running the service use the following commands:
|
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
```
|
|
|
|
virtualenv --python=python3 ./env
|
|
|
|
./env/bin/pip install -r requirements.txt
|
|
|
|
./env/bin/python manage.py migrate
|
|
|
|
./env/bin/python manage.py createsuperuser
|
|
|
|
./env/bin/python manage.py runserver
|
|
|
|
```
|
2017-12-26 17:46:27 +01:00
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
### Loading City data
|
|
|
|
|
|
|
|
In order to make it easier to create Places and Teams without having to manually
|
|
|
|
enter records for Country, SPR (State/Province/Region) and City, you can preload
|
|
|
|
them using data files from http://download.geonames.org/export/dump/
|
|
|
|
|
|
|
|
The provided `load_spr` and `load_cities` commands will only load data if the
|
|
|
|
parent country (or SPR for cities) exists in the database. This lets you choose
|
|
|
|
whether you want to load every city, only cities for select countries, or only
|
|
|
|
for select SPRs.
|
|
|
|
|
2018-01-13 04:26:09 +01:00
|
|
|
#### Countries
|
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
Download the [countryInfo.txt](http://download.geonames.org/export/dump/countryInfo.txt)
|
|
|
|
file from GeoNames, then run:
|
2018-01-13 04:26:09 +01:00
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
`./env/bin/python manage.py load_countries countryInfo.txt`
|
|
|
|
|
2018-01-13 04:26:09 +01:00
|
|
|
#### SPR
|
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
Download the [admin1CodesASCII.txt](http://download.geonames.org/export/dump/admin1CodesASCII.txt)
|
|
|
|
file from GeoNames, then run:
|
2018-01-13 04:26:09 +01:00
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
`./env/bin/python manage.py load_spr admin1CodesASCII.txt`
|
|
|
|
|
2018-01-13 04:26:09 +01:00
|
|
|
#### Cities
|
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
You have a few choices for City data files. GeoNames provides data files for
|
|
|
|
cities with [more than 15,000](http://download.geonames.org/export/dump/cities15000.zip)
|
|
|
|
residents, cities with [more than 5,000](http://download.geonames.org/export/dump/cities5000.zip)
|
|
|
|
residents, and cities [with more than 1,000](http://download.geonames.org/export/dump/cities1000.zip)
|
|
|
|
residents. The smaller the number, the more cities there will be in the data
|
|
|
|
file (and the longer it will take to import them all).
|
|
|
|
|
|
|
|
Download the file you want from the links above. They will be zip files that you
|
|
|
|
must unzip before using. Then import the cities by running (for your downloaded
|
|
|
|
file):
|
2018-01-13 04:26:09 +01:00
|
|
|
|
2018-01-13 04:23:25 +01:00
|
|
|
`./env/bin/python manage.py load_cities cities15000.txt`
|
2017-12-30 08:08:43 +01:00
|
|
|
|
2018-08-19 17:59:03 +02:00
|
|
|
### Using docker
|
2017-12-30 08:08:43 +01:00
|
|
|
```
|
|
|
|
docker build -t get_together .
|
2018-08-19 17:31:27 +02:00
|
|
|
docker run -e "DEBUG_MODE=True" -e "SECRET_KEY=xxxxx" -e "ALLOWED_HOSTS=localhost,127.0.0.1" -d --name get_together -p 8000:8000 get_together
|
2018-01-02 20:15:09 +01:00
|
|
|
docker exec -it get_together python3 manage.py createsuperuser
|
2017-12-30 08:08:43 +01:00
|
|
|
```
|
|
|
|
|
2018-08-19 17:59:03 +02:00
|
|
|
### Using docker-compose
|
|
|
|
```
|
|
|
|
docker-compose up -d
|
|
|
|
docker-compose exec get_together python3 manage.py createsuperuser
|
|
|
|
```
|
|
|
|
|
2017-12-30 08:08:43 +01:00
|
|
|
You can then connect to the container by going to localhost:8000
|
|
|
|
|
2017-12-26 23:03:10 +01:00
|
|
|
## Test Federation
|
2018-01-22 23:00:31 +01:00
|
|
|
You can import live event data into your "Searchable" table with this command:
|
2017-12-26 23:03:10 +01:00
|
|
|
|
2018-01-22 23:00:31 +01:00
|
|
|
`./env/bin/python manage.py import https://gettogether.community/searchables/`
|
2017-12-26 23:03:10 +01:00
|
|
|
|
|
|
|
|
2017-12-26 17:46:27 +01:00
|
|
|
## Getting Involved
|
|
|
|
|
|
|
|
To contibute to Get Together, you can file issues here on GitHub, work on
|
2018-07-29 03:10:14 +02:00
|
|
|
features you want it to have, or contact us on [Gitter](https://gitter.im/GetTogetherComm/Lobby) to learn more.
|
2017-12-27 16:51:51 +01:00
|
|
|
|
|
|
|
Currently the project needs:
|
|
|
|
* Designers
|
|
|
|
* We need a color scheme for the website
|
|
|
|
* We need a logo for the project
|
|
|
|
* We need user stories and mockups for those pages
|
|
|
|
* Front-end developers
|
|
|
|
* We need to pick a JS/CSS framework for the front-end
|
|
|
|
* We need to Django page templates
|
|
|
|
* We need to know what APIs are needed for a dynamic front-end
|
|
|
|
* QA Engineers
|
|
|
|
* We need Django test cases setup
|
|
|
|
* We need fuzz-testing setup with something like model-mommy
|
|
|
|
* We want testing automated on github pull requests
|
|
|
|
* API/Federation experts
|
|
|
|
* We need to decide on using AppStream or rolling our own data/protocol
|
|
|
|
* We need to architect what data will be federated and it's use cases
|
|
|
|
* We need to support authenticated access to APIs for 3rd party apps
|
|
|
|
* Devops
|
|
|
|
* We need a way to easily deploy and update GetTogether in production
|
|
|
|
* We need an easy way to get a development environment up and running
|
|
|
|
* We need to find a hosting service for gettogether.community
|
|
|
|
|
|
|
|
If you can help with any of these, please get in touch with me!
|