cpsd is a database to develop Church planting strategy. It is originally created for mission organizations around the world to plant Churches in Japan - the couontry with world's second largest unreached people group.
I converted from atheist physics fanboy to evangelical Christian when I was a student of ICU (International Christian University). Changed my major from physics to computer sciencce as I felt CS is pragmatically more usuful for world evangelism. At that time I also started an internship at Christian Today Japan as Full Stack Developer and reporter. I moved from Japan to US to earn Master of Arts in Information Technology from OIT (Olivet Institute of Technology) while majoring Missiology and Software Engineering together. Primary interest was to leverage tech for world mission strategy all the way from micro strategy like locating Church absent cities to macro strategy like global interindustrial logistics. After serving as a minister of G&IT (Gospel & Information Techcnology) in United States, I moved back to Japan to work as editor in chief of Christian Today Japan. Intersection of Christianity, Journalism and Information Technology has been my field. I was always interested in the advancement of Data Journalism. Now that I spent 1 year in the world of online Christian Journalim and FaithTech, came to know almost nobody practice Data Journalism in our field. That was the moment I felt God called me to be the first one to do that. First topic I chose was meant for something useful for World Mission Strategy.
Now at the starting point, cpsd is limited to for the usage in mission strategy in Japan in English. First dataset is location of Churches and train stations with passenger count and distance.
cpsd is a combination of Kotlin functions meant to be executed in integrated development environment (IDE) with running local Neo4j instance at localhost.
- Download Neo4j Desktop, create a database with your choce of password, and install APOC.
- Prepare
churches.csv
with headerurl,catholic,lat,lng,address,name
. - Prepare
stations.csv
with headerid,lat,lng,name,company,line,passengers2017
. - In Neo4j Desktop, Your Project-> Click "⋯" Dropdown->Open folder->Import copy and paste
churches.csv
andstations.csv
inImport
directory. - Open Neo4j Browser and run Query 1-4 in Cypher file to import csv into Neo4j.
- Import this repo into your IDE and create
db.properties
with 2 lines:username = neo4j
andpassword = NEO4J_PASSWORD_YOU_CREATED_IN_STEP_1
in resources - Run
main()
in Route.kt this will generateroutes.csv
in resources - Copy and paste
routes.csv
inImport
directory and run Query 5 in Neo4j Browser. - In your IDE, run
main()
in StationWithChurch.kt to generate GeoJson files of stations with Churches. - In your IDE, run
main()
in StationWithoutChurch.kt to generate GeoJson files of stations without Churches. - In your IDE, run
main()
in Churches.kt to generate GeoJson files of all Churches.
GeoJson files are separated by GeoJson FeatureCollection
, Churches and Stations are Point
, Stations are also Polygon
, Route from Station to Church is LineString
.
Files are also separated into 6 distance segments from 0 to 500, 1000, 1500, 2000, 2500 or 3000 meters.
Following are the expected files to be generated:
500-church.json
500-route.json
500-station-point-with-church.json
500-station-point-without-church.json
500-station-polygon-with-church.json
500-station-polygon-without-church.json
1000-church.json
1000-route.json
1000-station-point-with-church.json
1000-station-point-without-church.json
1000-station-polygon-with-church.json
1000-station-polygon-without-church.json
1500-church.json
1500-route.json
1500-station-point-with-church.json
1500-station-point-without-church.json
1500-station-polygon-with-church.json
1500-station-polygon-without-church.json
2000-church.json
2000-route.json
2000-station-point-with-church.json
2000-station-point-without-church.json
2000-station-polygon-with-church.json
2000-station-polygon-without-church.json
2500-church.json
2500-route.json
2500-station-point-with-church.json
2500-station-point-without-church.json
2500-station-polygon-with-church.json
2500-station-polygon-without-church.json
3000-church.json
3000-route.json
3000-station-point-with-church.json
3000-station-point-without-church.json
3000-station-polygon-with-church.json
3000-station-polygon-without-church.json
Data for stations and Churches in Japan are located at data/japan directory in this repo.
You can import those GeoJson files into GIS software or services like MapBox Studio. For example, Church & Station project at Christian Today Japan.
Hoping to apply for other countries, accomodate other type of data and languages.
Matthew 28:19-20 "Therefore go and make disciples of all nations, baptizing them in the name of the Father and of the Son and of the Holy Spirit, and teaching them to obey everything I have commanded you. " - Jesus Christ