Skip to content

migrate: CollegeMap -> apps/collegemap#3

Merged
PetalCat merged 9 commits into
mainfrom
migrate/collegemap
May 31, 2026
Merged

migrate: CollegeMap -> apps/collegemap#3
PetalCat merged 9 commits into
mainfrom
migrate/collegemap

Conversation

@PetalCat

@PetalCat PetalCat commented May 31, 2026

Copy link
Copy Markdown
Contributor

Migrates PetalNet/CollegeMap into apps/collegemap/ with history preserved, re-cut cleanly onto the finalized monorepo toolchain.

Commit structure

  • relocate + merge — original CollegeMap history, brought in under apps/collegemap/ via git merge --allow-unrelated-histories (untouched).
  • style: reformat — pure oxfmt pass (tabs / double quotes / semi / 80). Recorded in .git-blame-ignore-revs so it won't pollute blame.
  • fix: adapt to monorepo — one squashed logical commit:
    • scope name @petalnet/collegemap; drop prettier (repo uses oxfmt/oxlint) + redundant per-app .npmrc; sort scripts (eppj)
    • Svelte 5: bind:this targets (searchInputEl, mapContainer) -> $state, guard map init
    • real bug: live-user SSE handler self-assigned (liveUsers = liveUsers) so newly-added users never rendered -> proper replace-or-append
    • non-mutating toSorted(); un-export internal-only hashPassword; drop empty $lib/index stub
    • allow CSS side-effect imports in oxlint; exclude college data files from the spell checker (university names trip false positives)

Verified green in docker (node 26 + pnpm 11.5, DATABASE_URL stub)

oxlint --max-warnings=0, eslint --max-warnings=0, svelte-check (0 errors), pnpm -r build, knip, manypkg.

- Implemented GET endpoint for college info with caching from Wikipedia.
- Added event streaming API for real-time updates.
- Created geocoding API using Nominatim for location searches.
- Developed login and signup pages with form validation and session management.
- Created user profile page for college selection and logout functionality.
- Added Tailwind CSS for styling and layout improvements.
- Configured SvelteKit with necessary adapters and TypeScript support.
- Included robots.txt for search engine crawling permissions.
@PetalCat PetalCat requested a review from lishaduck as a code owner May 31, 2026 00:10
@lishaduck lishaduck mentioned this pull request May 31, 2026
18 tasks
PetalCat pushed a commit that referenced this pull request May 31, 2026
Per Eli's review of #3:
- renovate.json -> .github/renovate.json
- knip: drop entry/ignore overrides; trust framework detection (only the
  root vite.config.ts declared as entry — vite+ consumes it, knip can't tell)
- .gitignore: cleaned (it's recursive by default; dropped redundant **/ + noise)
- .vscode/settings.json -> settings.example.json (VSCode has no settings.local.json)
- lint: plain oxlint + eslint (vp lint has an alpha vite-config-discovery crash
  on nested SvelteKit; oxfmt via vp fmt still used)
- .oxlintrc.json: removed the apps/** rule-relaxing override

collegemap lint errors FIXED, not suppressed (codex, verified):
- deleted empty src/lib/index.ts (no bare $lib imports)
- searchInputEl / mapContainer -> $state<...>() for Svelte 5 bind:this
- +page.svelte: real bug — `liveUsers = liveUsers` no-op replaced with proper
  replace-or-append on the SSE user-added event (new users now actually appear)
- auth.ts: hashPassword un-exported (only used internally)
- eslint.config.ts: named import { configs } from eslint-plugin-package-json

CI: DATABASE_URL stub moved to workflow-level env so knip can load drizzle.config.
Janet added 5 commits May 30, 2026 22:46
Rename-only. Not pushed back to PetalNet/CollegeMap; only feeds the merge into
PetalNet/Monorepo.
Source: github.com/PetalNet/CollegeMap @ main, history preserved with original
authors + dates. `git log --follow apps/collegemap/...` walks back through the
pre-move tree. Originals stay live in PetalNet/CollegeMap until cutover.
Pure formatter pass over the migrated CollegeMap source. No logical changes.
Recorded in .git-blame-ignore-revs.
- scope package name to @petalnet/collegemap; drop prettier (repo uses
  oxfmt/oxlint) and redundant per-app .npmrc; sort scripts (eppj)
- Svelte 5: make bind:this targets (searchInputEl, mapContainer) $state
  and guard map init against an undefined container
- fix live-user SSE handler: it self-assigned (liveUsers = liveUsers) so
  newly-added users never rendered; now does a real replace-or-append
- use non-mutating toSorted() for ranking/timeline sorts
- rename a shadowed `users` param; un-export internal-only hashPassword;
  delete empty $lib/index stub and the now-unneeded app.d.ts empty export
- allow CSS side-effect imports in oxlint; exclude college data files
  from the spell checker (university names trip false positives)
@PetalCat PetalCat force-pushed the migrate/collegemap branch from 4c7da61 to 1fcb8d7 Compare May 31, 2026 04:01

@lishaduck lishaduck left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DM'd some followups but lgtm

@PetalCat PetalCat merged commit b3599e8 into main May 31, 2026
8 checks passed
@PetalCat PetalCat deleted the migrate/collegemap branch May 31, 2026 13:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants