How carocamblor/taylor-swift-lyric-search works
This is an Express-based Taylor Swift lyric-search and album/song browsing application. Visitors can search lyrics, optionally filter by album, browse album and song details, and register, log in, or post comments. The main flow is HTTP routing to controllers, which query the in-memory catalog or Firebase and render EJS pages. Firebase supports authentication and comment/profile data. The README is empty, and some source excerpts are partial; the graph reflects only evidenced wiring and documented dependencies.
Main entry points: indexController.js Search and account · app.js Express app · albumsController.js Album details · songsController.js Song details
Components 13
Web application
- Express app
app.js - Home routes
routes/index.js - Album routes
routes/albums.js - Song routes
routes/songs.js
Catalog and search
- Search and account
controllers/indexController.js - Album details
controllers/albumsController.js - Song details
controllers/songsController.js - Song catalog
data/songs.js - Album catalog
data/albums.js
Accounts and comments
- Firebase Auth
- Cloud Firestore
Rendered pages
- EJS pages
views
Other components
- Visitor
Connections 20
- Visitor → Express app: sends requests
- Express app → Home routes: mounts at /
- Express app → Album routes: mounts at /album
- Express app → Song routes: mounts at /song
- Home routes → Search and account: dispatches
- Album routes → Album details: dispatches
- Song routes → Song details: dispatches
- Search and account → Song catalog: searches
- Search and account → Album catalog: reads
- Album catalog → Song catalog: gets album songs
- Album details → Album catalog: finds album
- Song details → Song catalog: finds song
- Search and account → Firebase Auth: authenticates
- Search and account → Cloud Firestore: writes profiles
- Album details → Cloud Firestore: reads and writes comments
- Song details → Cloud Firestore: reads and writes comments
- Search and account → EJS pages: renders
- Album details → EJS pages: renders
- Song details → EJS pages: renders
- EJS pages → Visitor: returns pages