This is an SMS interface for finding child care centers in Somerville, MA. Its purpose is to enhance the Somerville Early Childhood Hub, a place to find resources for young children & their families in Somerville.
Here's what the app looks like in action:
We heard from the wonderful staff behind the Hub that they have often talked about making childcare locations available via SMS, but didn't know how to make that happen. We built this for them during CodeAcross 2015.
This app is essentially a Ruby implementation of the Chicago Early Learning Portal's SMS feature. Love to Scott Robin, Dan O'Neil, Derek Eder, the contributors, and everyone else who built Chicago's Portal.
Looking at mRelief, a Chicago-based SMS intake form, was very helpful in figuring out how to structure the Twilio-related code. Thank you Genevieve Nielsen and Rose Afriyie!
The initial data behind the map comes from Code for Boston, specifically the child-care-finder-data & child-care-finder repos. Code for Boston in turn got the data from the the Mass. Dept. of Early Education & Care (see codeforboston/child-care-finder#2).
This is a Sinatra app backed by Twilio.
Clone the directory: [email protected]:codeforamerica/early-childhood-finder-sms.git
Install the gems: bundle install
You'll need to set up a Twilio account with an SMS-enabled phone to make the app work. As of 2015 this costs $1.00/month plus ¢.75 per text sent/received. Not so bad.
Once you have the account set up, create an env.rb
file that defines these values for your app:
ENV['TWILIO_SID'] = '????'
ENV['TWILIO_AUTH_TOKEN'] = '????'
ENV['TEST_TWILIO_SID'] = '????'
ENV['TEST_TWILIO_AUTH_TOKEN'] = '????'
ENV["TWILIO_PHONE"] = '????'
If you want the app to respond to texts, you'll need to expose a URL on the internet. localtunnel is a handy tool for exposing your local development machine in order to test. You will want to configure your Twilio number to the URL that localtunnel generates for this to work.
In the medium run, you'll want to host the app on a server that doesn't shut down when you turn off your computer: see Deploying Rack-based Apps for how to deploy a Sinatra app to Heroku.
Last and most important, there's the child care location data. This app reflects Somerville early child care locations; you will probably want yours to reflect somewhere else. Turn your data points into CareCenter objects, and the Geocoder gem will automatically attempt to geocode based on their :address
.
The initial Somerville data from this app came from a .csv file (see Rakefile
for import task).
As of CodeAcross weekend, this SMS feature is an experiment. It painfully, desperately, achingly needs user research and testing.
The user research might reveal that this is not a good solution at all for Somerville parents, in which case we will ditch it entirely. Such is the fate of a hackathon project:
Built on Saturday,
Demoed Sunday afternoon,
What does Monday hold?
As of CodeAcross weekend (Feb 21-22 2015) you can text "hello" (or any other word really) to 617-206-1937.
- Somerville:
- Chicago
- Chicago Early Learning -- specifically the text feature
- Add more related projects right here! Yes, you!