@@ -4,67 +4,61 @@ Recovery Source: Services
44This repository provides a "standardized" solution to test, deploy, and maintain
55various web "services" provided by [ Recovery Source] ( https://handbook.recoverysource.net/ ) .
66
7- Repository Structure
8- --------------------
9-
10- Important directories:
7+ ** Repository Structure:**
118
129- ** data** : Source data for all services
10+ - ** sync** : Synchronize source and remote data with other resources
1311- ** web_index** : [ Directory listing of 12-Step groups] ( https://sober.page/ )
1412- ** nameserver** : Configuration for [ DNS] ( https://handbook.recoverysource.net/essentials/websites.html#domain-name-system ) services
1513- ** forwarder** : Configuration for "HTTP Redirector" service
16- - ** sync** : Python module used to synchronize data
1714- ** test** : Data used for automated testing
1815
19- Web Index
20- ---------
21-
22- Sober Pages service as a directory services for 12-step focused websites and
23- aims to provide support for basic maintenance tasks.
24-
25- See this website running at https://sober.page/ .
26-
2716Source Data
2817-----------
2918
30- Everything the Recovery Source project knows about 12-Step groups.
19+ [ Source Data] ( https://github.com/recoverysource/services/tree/master/data )
20+ holds our collection of known 12-Step groups with publicly available meeting
21+ information. This directory contains another README file with addition details.
22+
23+ Synchronize Data
24+ ----------------
3125
32- ### Data Format
26+ The [ sync] ( https://github.com/recoverysource/services/tree/master/sync ) utility
27+ is a python3 package that uses `` Source Data `` to scrape meeting data from known
28+ sources and assemble them all into a single standardized collection .
3329
34- ** Location:** `` data/domains/<group>.yaml ``
30+ This script is responsible for keeping this data synchronized with other services,
31+ such as CloudFlare DNS, a Managed VPS, or into a format suitable for the
32+ `` Web Index `` . Developer notes are available in sync/README.
3533
36- ** Format [[ YAML ] ( https://handbook.recoverysource.net/essentials/yaml.html )] : **
34+ Help text is available using:
3735```
38- <subdomain>:
39- title: website title
40- keywords: list, of, regions
41- target: <URL>
42- type: forward OR cname
43- feed: <type>^<URL>[^<options>]
36+ $ cd services && python3 -m sync -h
4437```
4538
46- ** Required:** subdomain, title, target
39+ Web Index
40+ ---------
4741
48- ** Rules:**
42+ Sober Pages service as a directory services for 12-step focused websites and
43+ aims to provide support for basic maintenance tasks.
4944
50- - `` data/domains/*.yaml `` MUST be [ valid YAML] ( https://yaml-online-parser.appspot.com/ )
51- - [ `` title `` , `` keywords `` ] may be mixed-case, all other fields must be lower-case
52- - `` target `` should be the shortest functional URL (without
53- [ path/query/fragment] ( https://handbook.recoverysource.net/essentials/websites.html#url ) )
54- - `` target `` should include www if upstream redirects to this address
55- - `` feed `` may be a [ YAML list] ( https://handbook.recoverysource.net/essentials/yaml.html )
56- of feed locations (type+url)
57- - `` subdomain `` is limited to one (1) per `` target ``
58- - `` subdomain `` format should follow `` [type][area]-[district] `` (e.g. aa0-5)
59- - `` subdomain `` may append characters to resolve conflicts (e.g. aa1-4north)
60- - `` subdomain `` should use the lowest represented district as canonical
61- - `` subdomain `` can be used as a SP alias to redirect additional-represented districts
62- - `` feed/type `` must be one of [ `` aamod `` , `` tsml `` ]
45+ See this website running at https://sober.page/ .
6346
64- Sync
65- ----
47+ Forwarder
48+ ---------
6649
67- Data synchronization is done using the `` sync `` python module:
68- ```
69- $ cd services && python3 -m sync -h
70- ```
50+ Every 12-Step website that we list includes a link back that website. We also
51+ provide a subdomain that redirects all requests to that domain. This has been
52+ used for creating short/friendly URLs on flyers, but the options are endless.
53+
54+ Name Server
55+ -----------
56+
57+ For any 12-Step group that does not have a website and finds the cost to be
58+ a burden, our subdomain can be used as a primary website.
59+
60+ Automatic Testing
61+ -----------------
62+
63+ We utilize automatic testing to prevent as many potential issues as possible.
64+ This is used by automatic release processes as well as developers.
0 commit comments