Tax Increment Financing (TIF) is one of those dry, abstract governmental issues that has powerful effects on how we live. TIF was originally conceived to promote economic development in marginalized areas, recently, it has been used primarily to build higher income apartments and condos. Thus, the issues with using TIF policy include gentrification, relocating (rather than reducing) poverty, using public funds for private gain and governmental accountability and transparency, among others. That's why it's important to have information easily available for citizens to review and reach informed opinions.
Long run, aim would be to provide information on connections. Maybe to put together a power structure database or force graph. Potential bits of information includes:
- Which city council members voted on these projects
- Who has donated to their campaigns
- Other connections those city council members have to construction firms, developers, etc..
- Nebraska Dept of Revenue TIF Annual Reports
- Omaha City Council - Better Agendas source code
The website allows users to explore TIF data by county, city, and individual TIF projects, with visualizations powered by Google Charts. The project uses Perl to generate static HTML files from an SQLite database, served via GitHub Pages.
For live preview during development, install the following:
- entr (file watcher):
- macOS:
brew install entr
- macOS:
- http-server (Node.js-based static server):
npm install -g http-server
- Optional:
browser-sync
(for automatic browser refresh):npm install -g browser-sync
-
Clone the Repository:
git clone https://github.com/opennebraska/tif.git cd tif
-
Prepare the Database:
- Follow the instructions in the
/db
directory to download or build a local copy of the SQLite database (db/db.sqlite3
). - Ensure the database is placed in the
db/
directory.
- Follow the instructions in the
-
Generate the Static Site:
- From the project root directory, run:
perl static-www/scripts/generate_www.pl
- This generates the static site into the
static-www/www
directory.
- From the project root directory, run:
-
Verify the Output:
- Check the generated files in
static-www/www
to ensure your changes are correct.
- Check the generated files in
-
Deploy to GitHub Pages (Optional):
- Commit the generated files to the
static-www
branch:git checkout static-www git add static-www/www git commit -m "Update static site" git push origin static-www
- SSH into
nebraska.tif.report
and rungit pull
to update the live site.
- Commit the generated files to the
To see changes in real-time during development (e.g., edits to templates or scripts), use the provided live preview scripts. These scripts monitor changes to scripts, templates, and the database, automatically regenerate the site, and serve it locally.
For automatic browser refresh, use browser-sync
:
-
Save the following script as
watch_and_serve.sh
in the project root:#!/bin/bash PROJECT_ROOT=$(pwd) STATIC_DIR="$PROJECT_ROOT/static-www/www" SCRIPT_DIR="$PROJECT_ROOT/static-www/scripts" TEMPLATES_DIR="$PROJECT_ROOT/static-www/templates" DB_DIR="$PROJECT_ROOT/db" echo "Starting browser-sync at http://localhost:3000..." browser-sync start --server "$STATIC_DIR" --files "$STATIC_DIR/**/*" --port 3000 --no-notify & BROWSER_SYNC_PID=$! echo "Watching for changes in scripts, templates, and database..." find "$SCRIPT_DIR" "$TEMPLATES_DIR" "$DB_DIR" -type f | entr -r bash -c "perl $SCRIPT_DIR/generate_www.pl && echo 'Site regenerated at $(date)'" kill $BROWSER_SYNC_PID
-
Make the script executable:
chmod +x watch_and_serve.sh
-
Run the script:
./watch_and_serve.sh
-
The browser will open
http://localhost:3000
automatically. Changes will trigger site regeneration and browser refresh.
This is an open-source project. To contribute or report issues, visit the GitHub repository.
There are two protected branches in git, which share no common history:
main
- the source code to generate the website.static-www
- the static website HTML/CSS/JS etc. Generated by the source code in themain
branch. Deployed automatically (Netlify) to https://nebraska.tif.report.
We also have a branch to preview / QA / debug new features we're in the process of adding:
static-www-preview
- Deployed automatically (Netlify) to https://tif-preview.netlify.app. That URL is not intended for public consumption.
This project is licensed under the MIT License. See the LICENSE file for details.