Resolved Issues #54 (Multiple references to Oakland), #60 (Rewrite Compare page with newer version of React.js), #62 (Civic.json file addition), and #83 (Add 2026 budget)#87
Conversation
…set it up properly.
…appropiate and also added myself as a contributor. So far, I have solved open issues opensacorg#83 and opensacorg#54.
…ost all dead links, cleaned up the grammar, and fixed some mistakes in the previous commits
…licious injection at About page
… up most dead code, and added an appropriate civic.json to this repository.
…, and inconistencies in the website. Now, the website is almost complete.
…, and fixed some other small errors. Now, it should be fully functional, although the documentation is still lacking.
There was a problem hiding this comment.
Pull request overview
This PR modernizes the Open Budget: Sacramento static site and data assets while addressing multiple tracked issues (Oakland reference cleanup, Compare page rewrite, civic.json addition, and adding the FY26 budget dataset).
Changes:
- Modernizes the Compare page stack (React/Chart.js ecosystem) and updates supporting scripts/build instructions.
- Adds/updates FY25–FY26 budget datasets for the flow/tree/compare visualizations plus helper data-generation scripts.
- Rebrands numerous pages/templates/links from Oakland to Sacramento and adds
civic.jsonmetadata.
Reviewed changes
Copilot reviewed 76 out of 83 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Adds build notes (Sass rebuild, WSL tips) and data-splitting instructions. |
| Dockerfile | Updates Node base image for container builds. |
| civic.json | Adds civic.json project metadata. |
| .gitignore | Ignores generated site output and Windows Zone.Identifier streams. |
| _src/who-we-are.pug | Updates org/event copy and remaining Oakland references. |
| _src/what-we-do.pug | Updates Oakland references and external link attributes. |
| _src/tools-projects.pug | Refreshes resources list and updates external links/targets. |
| _src/templates/tree-template.jade | Updates General Fund copy and Disqus shortname. |
| _src/templates/flow-template.jade | Updates flow intro copy and Disqus shortname. |
| _src/sacramento-budget-basics.pug | Renames Oakland Budget Basics content to Sacramento. |
| _src/partials/treeScripts.pug | Adds FY25/FY26 to treemap dropdown defaults. |
| _src/partials/treeIntro.pug | Updates General Fund “budget process” link. |
| _src/partials/layout.pug | Updates header/footer/nav links and Sacramento branding. |
| _src/partials/disqus.pug | Updates Disqus shortname to Sacramento forum. |
| _src/package.json | Upgrades core dependencies (React/Chart.js/Eleventy/Webpack) and adds a prod script. |
| _src/package-lock.json | Locks updated Node dependencies for reproducible installs. |
| _src/news.pug | Updates Oakland news references/links to Sacramento equivalents. |
| _src/measure-z.pug | Updates Measure Z wording and adds rel attributes for external links. |
| _src/js/sacramento_v2.json | Adds placeholder JSON for Sacramento sankey data. |
| _src/js/old/main1.js | Updates legacy OpenSpending dataset name to Sacramento. |
| _src/js/old/main.js | Updates legacy OpenSpending dataset name to Sacramento. |
| _src/js/flow.js | Adds FY26 wrangling case for flow diagram parsing. |
| _src/js/compare/utils.jsx | Registers Chart.js v4 components and updates chart options API. |
| _src/js/compare/Trend.jsx | Updates Chart.js options API usage for tooltips/scales. |
| _src/js/compare/Total.jsx | Migrates from HorizontalBar to Bar (horizontal via indexAxis). |
| _src/js/compare/index.jsx | Rewrites Compare root mounting (createRoot) and replaces react-bootstrap tabs with custom nav. |
| _src/js/compare/DiffTable.jsx | Migrates from HorizontalBar to Bar (horizontal via indexAxis). |
| _src/js/compare/Breakdown.jsx | Updates lifecycle method and replaces spinner with inline loading text. |
| _src/js/compare/api.js | Cleans Oakland references and uses descending from d3-array. |
| _src/index.pug | Updates homepage copy and clarifies custom queries scope. |
| _src/images/home/sacramento_night.jpg | Adds Sacramento home splash image asset. |
| _src/flow.jade | Removes legacy flow test page. |
| _src/feedback.pug | Updates Wufoo/Disqus identifiers from Oakland to Sacramento. |
| _src/data/tree/Approved.Revenue.FY26.json | Adds FY26 revenue tree JSON dataset. |
| _src/data/tree/Approved.Revenue.FY25.json | Adds FY25 revenue tree JSON dataset. |
| _src/data/tree/Approved.Expense.FY26.json | Adds FY26 expense tree JSON dataset. |
| _src/data/tree/Approved.Expense.FY25.json | Adds FY25 expense tree JSON dataset. |
| _src/data/split_csv.py | Removes eval usage; replaces with named transforms for safer CSV splitting. |
| _src/data/generate_budget_assets.py | Adds script to generate compare/tree JSON assets from the master CSV. |
| _src/data/flow/FY26.csv | Adds FY26 flow CSV input data. |
| _src/data/compare/fiscal-years-revenue/depts/FY26.json | Adds FY26 revenue-by-dept compare dataset. |
| _src/data/compare/fiscal-years-revenue/depts/FY25.json | Adds FY25 revenue-by-dept compare dataset. |
| _src/data/compare/fiscal-years-revenue/depts/FY24.json | Adds FY24 revenue-by-dept compare dataset. |
| _src/data/compare/fiscal-years-revenue/depts/FY23.json | Adds FY23 revenue-by-dept compare dataset. |
| _src/data/compare/fiscal-years-revenue/account-cats/FY26.json | Adds FY26 revenue-by-category compare dataset. |
| _src/data/compare/fiscal-years-revenue/account-cats/FY25.json | Adds FY25 revenue-by-category compare dataset. |
| _src/data/compare/fiscal-years-revenue/account-cats/FY24.json | Adds FY24 revenue-by-category compare dataset. |
| _src/data/compare/fiscal-years-revenue/account-cats/FY23.json | Adds FY23 revenue-by-category compare dataset. |
| _src/data/compare/fiscal-years-expenses/totals.json | Updates totals to include FY23–FY26 and reformats JSON. |
| _src/data/compare/fiscal-years-expenses/depts/FY26.json | Adds FY26 spending-by-dept compare dataset. |
| _src/data/compare/fiscal-years-expenses/depts/FY25.json | Adds FY25 spending-by-dept compare dataset. |
| _src/data/compare/fiscal-years-expenses/depts/FY24.json | Adds FY24 spending-by-dept compare dataset. |
| _src/data/compare/fiscal-years-expenses/depts/FY23.json | Adds FY23 spending-by-dept compare dataset. |
| _src/data/compare/fiscal-years-expenses/account-cats/FY26.json | Adds FY26 spending-by-category compare dataset. |
| _src/data/compare/fiscal-years-expenses/account-cats/FY25.json | Adds FY25 spending-by-category compare dataset. |
| _src/data/compare/fiscal-years-expenses/account-cats/FY24.json | Adds FY24 spending-by-category compare dataset. |
| _src/data/compare/fiscal-years-expenses/account-cats/FY23.json | Adds FY23 spending-by-category compare dataset. |
| _src/data/City_of_Sacramento_Approved_Budgets.csv | Updates/introduces the master Sacramento budget CSV source. |
| _src/css/_homesplash.scss | Switches home splash background image to Sacramento. |
| _src/contact.pug | Updates contact page branding and link set for Open Sacramento. |
| _src/compare.jade | Removes legacy Compare page template (replaced by compare.pug). |
| _src/CNAME | Updates site domain to openbudgetsac.org. |
| _src/budget-visuals.pug | Rebrands visualization page copy to Sacramento. |
| _src/budget-process.pug | Updates budget-process timeline heading to Sacramento. |
| _src/adopted-budget-flow.pug | Adds FY26 flow file and enables FY13 flow data input. |
| _src/2019-21-adopted-budget-tree.jade | Updates data source link text for Sacramento. |
| _src/2019-21-adopted-budget-flow.pug | Updates commented data source labels for Sacramento. |
| _src/2017-19-proposed-budget-tree.jade | Updates data source link text for Sacramento. |
| _src/2017-19-proposed-budget-flow.jade | Updates data source link text for Sacramento. |
| _src/2016-17-adjusted-budget-tree.jade | Updates “Data provided by…” copy for Sacramento. |
| _src/2016-17-adjusted-budget-flow.jade | Updates “Data provided by…” copy for Sacramento. |
| _src/2015-17-proposed-budget-flow.jade | Updates open data host reference to Sacramento. |
| _src/2015-17-adopted-budget-tree.jade | Updates data source, General Fund copy, and Disqus shortname. |
| _src/2015-17-adopted-budget-flow.jade | Updates adopted policy budget source link to Sacramento. |
| _src/2014-15-adjusted-budget-flow.jade | Updates open data host and keeps datafile list. |
| _src/2013-2015-adopted-budget-flow.jade | Updates open data host reference to Sacramento. |
| _src/2013-15-adopted-budget-landing.jade | Updates landing page title to Sacramento. |
| _src/2013-14-proposed-budget-tree.pug_bak | Removes legacy backup page content. |
| _src/2012-2013-sankey.jade | Renames embedded data variables and updates Disqus identifiers/copy. |
| _src/.eleventy.js | Adds Pug plugin, passthrough copies, and sets template formats/output dir. |
| _src/_layout.jade | Updates legacy layout branding/links and comments out GA create call. |
| _src/_data.json | Updates global metadata and page titles from Oakland to Sacramento. |
| _src/_compile.sh | Ensures webpack build runs before Eleventy output is generated. |
Comments suppressed due to low confidence (1)
_src/js/compare/Breakdown.jsx:6
axiosis imported but never used in this component (data fetching goes throughfetchBreakdownData). Removing the unused import will avoid dead code and make future refactors clearer.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…urrent state of the project and resolved all the issues that GitHub Copilot brought up.
…aScript software engineering standards by rewriting the whole codebase with testers/linters and adding my own documentation through JSDoc. The only outstanding issues left are the Feedback and Compare page glitches. Other than that, everything seems perfect.
…ery single NPM package to its latest version, completing the JSDoc documentation, the removal of the broken Wufoo Feedback Section, a fix for the X/Twitter footer link, upgrades to the testing harness/infrastructure, an overhaul of the CI/CD Workflow and the README/PERFORMANCE GitHub MarkDown documents, general code-quality improvements, and the partial implementation of i18n for Latin American Spanish.
…st complete i18n translation
…sh and Latin American Spanish
…amento from JavaScript to TypeScript for security and maintaince reasons. Cleaned up legacy code, perfected documentation, and now have robust testing/linting/benchmarking infrastructure. Everything now works properly, except for the Feedback form (requiring the Open Sacramento's official approval) and the Custom Queries (reuiring the City of Sacramento's official approval). No more re-writes are needed anymore, as the website is now WAI-ARIA/a11y, American English/Latin American Spanish/i18n, US Government's OPM Plain Language Standard, Clean Code Principles, 10 Usability Heuristics for User Interface Design Standard, Standard Readme, Google TypeScript Style Guide, Pythonic PEP8 Standard, JSDoc, and Standard JavaScript compliant. This makes it easier to develop new features, maintain old code, and debug for any future developer.
|
Here is a Google Form for feedback https://docs.google.com/forms/d/e/1FAIpQLSdqkhIp5XphvsjA5eWFmuT-gvzlItz-Lww8fpmwvwgtC5JXpA/viewform?usp=dialog. |
|
I was able to build this locally with Docker. I will merge now and see if the deployment works to openbudgetsac.org. Edit: Check the Action logs for details. We can try to resolve this in our next iteration. Before updates: Deploy / Build Static Site (Pages, non-Docker) (push) Failing after 54s After my attempt to fix: CI / Validate NPM Scripts (push) Failing after 41s |
Good Evening,
I have resolved Issues #54 (Multiple references to Oakland), #60 (Rewrite Compare page with newer version of React.js), #62 (Civic.json file addition), and #83 (Add 2026 budget) while also modernizing the website, removing dead code and links, and ensuring that the website is almost complete. I love to give back to the Sacramento community, so thank you all for your previous feedback.