# Lake Norman Towns > Civic data for the four towns around Lake Norman, North Carolina: Mooresville, Davidson, Cornelius and Huntersville. Upcoming meetings, events, town news, development and rezoning cases, budgets, property tax rates, staff directories and who represents whom. Every figure comes from a town's own published record. Read the markdown files below rather than the HTML. Each web page renders its data from an inline JSON blob, so fetching the HTML without running JavaScript returns a few hundred characters of chrome and none of the rows. Every data page has a twin at the same path with `.md` appended, carrying the full contents as tables. Three conventions worth knowing before quoting anything here. A dash in a table means the town publishes no such field, never that the value is zero. Where a figure is inferred rather than published, it is labelled as inferred; nothing here is inferred silently. And when a town's last refresh failed, its previous data is kept rather than dropped, so the page opens with a bolded caution naming that town and the date its copy was actually read; the JSON carries the same fact in a `stale` array, empty when every town was read this build. Trust that over the build date at the foot of the page. ## Data as markdown - [Upcoming meetings](https://lake-norman-development.pages.dev/upcoming.md): every public meeting the four towns have scheduled, soonest first, 33 rows - [Events](https://lake-norman-development.pages.dev/events.md): community events, separate from board meetings, 35 rows - [Town news](https://lake-norman-development.pages.dev/news.md): every announcement, dated, newest first, 186 rows - [Development and rezoning cases](https://lake-norman-development.pages.dev/projects.md): one row per case, with a table showing which towns publish which field, 107 rows - [The four towns compared](https://lake-norman-development.pages.dev/compare.md): general fund, population, spending per resident and property tax rate side by side - [Who represents me](https://lake-norman-development.pages.dev/who-represents-me.md): Mooresville's four wards, their commissioners and the elected board's contact details - [Who runs Mooresville](https://lake-norman-development.pages.dev/mooresville-staff.md): staff directory with department, title and contact details, 50 rows - [Who runs Davidson](https://lake-norman-development.pages.dev/davidson-staff.md): staff directory with department, title and contact details, 50 rows - [Who runs Cornelius](https://lake-norman-development.pages.dev/cornelius-staff.md): staff directory with department, title and contact details, 33 rows - [Who runs Huntersville](https://lake-norman-development.pages.dev/huntersville-staff.md): staff directory with department, title and contact details, 111 rows ## Data as JSON, RSS and CSV - [Upcoming meetings, JSON](https://lake-norman-development.pages.dev/data/upcoming.json): same rows as upcoming.md, one object per meeting - [Events, JSON](https://lake-norman-development.pages.dev/data/events.json): same rows as events.md - [Town news, JSON](https://lake-norman-development.pages.dev/data/news.json): same rows as news.md - [Development cases, JSON](https://lake-norman-development.pages.dev/data/projects.json): same rows as projects.md, including every field the town publishes - [Population and tax rates, JSON](https://lake-norman-development.pages.dev/data/compare.json): US Census population and the county property tax table, unrounded - [Upcoming meetings, RSS](https://lake-norman-development.pages.dev/meetings.xml): for subscribing rather than querying - [Development cases, RSS](https://lake-norman-development.pages.dev/projects.xml): for subscribing rather than querying - [Mooresville projects, CSV](https://lake-norman-development.pages.dev/mooresville_projects.csv): every field of the town's GIS layer, unedited ## Optional Charts and interactive maps. The figures behind them are already in the markdown above, so these can be skipped when a shorter context is needed. - [Mooresville projects map](https://lake-norman-development.pages.dev/mooresville): the same cases as projects.md, drawn on a map with filters - [Regional projects map](https://lake-norman-development.pages.dev/lakenorman): all four towns' cases on one map - [Mooresville budget](https://lake-norman-development.pages.dev/mooresville-budget): five years of budget against actual spending, by department and fund - [Davidson budget](https://lake-norman-development.pages.dev/davidson-budget): by department - [Cornelius budget](https://lake-norman-development.pages.dev/cornelius-budget): top-line figures only, which is all the town publishes - [Huntersville budget](https://lake-norman-development.pages.dev/huntersville-budget): by fund