All Projects → codeforamerica → citybook

codeforamerica / citybook

Licence: MIT license
Create a resource directory from a contact spreadsheet.

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to citybook

civiform
CiviForm aims to simplify the application process for benefits programs by re-using applicant data for multiple benefits applications. It's being developed by Google.org in collaboration with the City of Seattle and community contributors.
Stars: ✭ 56 (+166.67%)
Mutual labels:  civic-tech
google docs-ruby
A library which allows you to edit your spreadsheets with pleasure
Stars: ✭ 18 (-14.29%)
Mutual labels:  google-spreadsheet
code-gov-front-end
Front-end of code.gov
Stars: ✭ 42 (+100%)
Mutual labels:  civic-tech
nyc-crash-mapper
React Redux web application for viewing, filtering, & comparing trends of automobile collision data published by the NYPD.
Stars: ✭ 15 (-28.57%)
Mutual labels:  civic-tech
GoogleAppsScripts
A repository for my google scripts (GS).
Stars: ✭ 50 (+138.1%)
Mutual labels:  google-spreadsheet
Safer-Streets-Priority-Finder
The Safer Streets Priority Finder enables you to analyze the risk to bicyclists and pedestrians on your community’s roads.
Stars: ✭ 22 (+4.76%)
Mutual labels:  civic-tech
tenants
JustFix.nyc is a tool to document, organize, and take action in getting repairs made on your apartment.
Stars: ✭ 15 (-28.57%)
Mutual labels:  civic-tech
311
New web portal for BOS:311
Stars: ✭ 15 (-28.57%)
Mutual labels:  civic-tech
votacidade-app
Calculadora de afinidade para o Vota Cidade 2020
Stars: ✭ 12 (-42.86%)
Mutual labels:  civic-tech
php-google-spreadsheet-api
PHP library for read/write access to Google spreadsheets via the version 3 API.
Stars: ✭ 38 (+80.95%)
Mutual labels:  google-spreadsheet
WhoCanIVoteFor
🗳 The source for https://whocanivotefor.co.uk/
Stars: ✭ 35 (+66.67%)
Mutual labels:  civic-tech
Forms
Tracking our progress moving all city paper and pdf forms online.
Stars: ✭ 14 (-33.33%)
Mutual labels:  civic-tech
school-navigator
Navigate the Durham, NC public school system
Stars: ✭ 25 (+19.05%)
Mutual labels:  civic-tech
foorgol
⛄ Google API client (or one the Discworld, the Ephebian God of Avalanches).
Stars: ✭ 16 (-23.81%)
Mutual labels:  google-spreadsheet
suministrospr
Suministros Puerto Rico - Entérate, Ayuda, Informa
Stars: ✭ 40 (+90.48%)
Mutual labels:  civic-tech
gspread-formatting
Complete cell formatting support for Google spreadsheets via gspread package.
Stars: ✭ 121 (+476.19%)
Mutual labels:  google-spreadsheet
ACCESS-NYC
Find help in NYC with food, money, housing, work, and more on ACCESS NYC. Maintained by @NYCOpportunity
Stars: ✭ 27 (+28.57%)
Mutual labels:  civic-tech
local-government-design-systems
A repo of local government design systems & pattern libraries. Specifically for municipal (local) & sub-state governments
Stars: ✭ 24 (+14.29%)
Mutual labels:  civic-tech
eot-nomination-tool
📚 Chrome extension to nominate government data that needs to be preserved
Stars: ✭ 20 (-4.76%)
Mutual labels:  civic-tech
import-products-from-gsheet-for-woo-importer
Import products from Google spreadsheet by standard woocommerce import.
Stars: ✭ 16 (-23.81%)
Mutual labels:  google-spreadsheet

CityBook

Join the chat at https://gitter.im/codeforamerica/citybook Build Status Stories in Ready

Make a searchable address book from a contact spreadsheet. http://codeforamerica.github.io/citybook

CityBook aims to make it easier for administrative staff who maintain contact lists to create a searchable, mobile-responsive web app that uses their spreadsheet as a data source.

Based on the CfA 2015 Richmond Fellowship team's Search-RVAHealth project.

Data Types

CityBook emphasizes simplicity and flexibility over adherence to a data standard. You can add any columns with any title to your CityBook spreadsheet and they will displayed. However, some column names are required or receive special treatment:

Organization Name (Required)

Displayed as an <h1> element. It corresponds to the main title of your entry.

Telephone

Displayed as a button that users can click or tap to launch a call. Cells should contain a single telephone number. Most mobile telephone applications are flexible in how they parse a phone number, so these may use any common telephone format (e.g. 123-456-7890, (123)456-7890, 1234567890, etc.).

Address

Displayed as a button that launches Google Maps directions to the location in the cell. It's a good idea to test the addresses you enter by searching for them in Google Maps. If your address is incomplete or does not return a result, the user may have difficulty finding the right location.

Other Data Types

All other data types are displayed in the "Show Details" section. The column header will appear as bold text with a colon (i.e. a Key-Value format).

Setup

git clone https://github.com/codeforamerica/citybook.git
cd citybook
npm install

Create a PostgreSQL databse named citybook, or edit the development block of config/config.js to the name of your database. Consider using http://postgresapp.com/.

psql
CREATE DATABASE citybook;
\q

node_modules/.bin/sequelize db:migrate

Development

Running in development mode enables WebpackDevServer hot-module-reloading on port 3000. Use port 8080 for testing back-end functionality.

npm run dev

Bundling for Production

Bundles everything into bundle.js.

npm install -g webpack
webpack
npm start
git remote add production https://git.heroku.com/citybook.git

(Open an issue to be added as a collaborator on heroku)

Database Migration

Make your changes, then run:

node_modules/.bin/sequelize db:migrate

What is this built with?

This project uses Tabletop.js for the spreadsheet access, Handlebars for some templating, List.js for the searchable list, and Bootstrap for the styles.

The instruction page template was generated by using the Cayman theme by Jason Long.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].