Funding Public Safety explores how Oakland spends Measure Z’s approximately $24 million annual budget, so Oaklanders can better understand the City’s approach to public safety and violence prevention. We're a project of OpenOakland, a volunteer collective that bridges community and technology for a thriving and equitable Oakland.
See the live site for this project.
- Eleventy (11ty) static site generator
- Nunjucks templating (but 11ty accepts multiple templating languages if you prefer your own comfort zone)
- Bootstrap 5.1 css styles
All contributors are expected to adhere to OpenOakland's Code of Conduct. This emphasizes a collaborative, participatory approach to project development. We're here to support each other as a community and we take this CoC seriously. We appreciate your understanding and shared commitment.
These instructions assume you have a beginner-level familiarity with GitHub and the command line.
On your local system:
- Create a fork of the original repo from
https://github.com/openoakland/funding-public-safety
- Clone your fork of the
funding-public-safety
repo to create a local copy of the code.
In Terminal or other command line interface:
- Navigate to local directory:
cd ~/{file-path}
- Install necessary packages:
npm install
- Build the site:
npm run-script build
- Run the server:
npm start
In your web browser:
- Visit
localhost:8080
to view the site locally. You should now be up and running!
_Running into issues? Reach out in the #project-active-funding-public-safety Slack channel (see instructions for joining Slack).
Assumes you're using Terminal/command line and have completed the Getting Started
section above...
- Navigate to your local directory:
cd ~/{file-path}/funding-public-safety
- Create and check out a new branch based on
main
branch:
git status
(tells you which branch you're on)git checkout main
(checks out themain
if you're not already there)- Pull in the latest changes from the
main
(upstream) repo. See these instructions for how to do this via Github UI or command line. git checkout -b {new-branch-name}
(creates and checks out a new branch based onmain
; branch name should reflect a concise summary of the general changes being implemented; e.g.update-about-content
orfeature-polling
)
-
Design/build changes should be made within the
/src
directory using your preferred text editor. Site-wide configuration changes should be made with caution inpackage.json
andeleventy.js
files. -
When your changes are ready for review, open a pull request in GitHub and request a review from anyone on the team. Please give us about 48 hours to follow up.
We track all issues in the Proof of Concept kanban board.
- Select an issue to work on from the "Ready to Work On" column (or add your input to any issue in the "Icebox" column).
- Assign the issue to yourself and move it to the "In Progress" column.
- Once your PR has been approved and merged, you can close the issue and move it to the "Done" column in the Project kanban.
- Site pages are built in markdown using Nunjucks templating (but Eleventy accepts lots of templating languages so if you have a preference you may use what you're comfortable with).
- All pages must include specific front matter:
layout
: which layout template to use from_includes
(usuallypage.njk
)title
: page title, which will show up as an<h1>
headerkey
: Label to use in global nav (if you want the page to appear here)order
: Position of the page in the global nav menu
- Our default styling uses Bootstrap 5.1. Customizations can be added to
/src/css/style.css
.
- The FPS team can be reached at [email protected].
- OpenOakland leadership can be reached at [email protected].
- Everyone is welcome to join our weekly meetups.