How dmartins21/myfilms works
MyFilms is a film-catalogue and community application: users browse, search and filter films, manage favorites and profiles, and publish or read posts; administrators can manage the catalogue. The browser routes requests through frontend pages and API clients to ASP.NET controllers, which use repositories and an Entity Framework context for persistence. The graph preserves auth, profile/favorites, posts and film discovery as distinct capabilities. Backend controller and repository links are evidenced by the source index and excerpts; frontend-to-API links are shown only where the index or excerpts support them.
Main entry points: route.jsx Route access · AppDbContext.cs Entity context · UnityOfWork.cs Unit of work · submitFilm.jsx Film submission
Components 30
Web application
- Route access
frontend/myfilms/src/routes/route.jsx - Film browsing
frontend/myfilms/src/pages/Filmes/index.jsx - Film details
frontend/myfilms/src/pages/Filmes/details.jsx - Film submission
frontend/myfilms/src/pages/Filmes/submitFilm.jsx - Post browsing
frontend/myfilms/src/pages/Posts/index.jsx - Post details
frontend/myfilms/src/pages/Posts/details.jsx - Post authoring
frontend/myfilms/src/pages/Posts/newPost.jsx - Account pages
frontend/myfilms/src/pages/Login/login.jsx - Profile and favorites
frontend/myfilms/src/pages/User/myFavFilms.jsx - Film API client
frontend/myfilms/src/services/filmesApi.jsx - Post API client
frontend/myfilms/src/services/blogPostApi.jsx - Account API client
frontend/myfilms/src/services/loginApi.jsx - User API client
frontend/myfilms/src/services/userApi.jsx
Backend API
- Film endpoints
backend/myfilms/Controllers/FilmeController.cs - Post endpoints
backend/myfilms/Controllers/BlogPostController.cs - Client endpoints
backend/myfilms/Controllers/ClientController.cs - Authentication endpoints
backend/myfilms/Controllers/AuthController.cs
Domain and persistence
- Film queries
backend/myfilms/Repositories/FilmeRepository.cs - Post queries
backend/myfilms/Repositories/BlogPostRepository.cs - Client and favorites
backend/myfilms/Repositories/ClientRepository.cs - Unit of work
backend/myfilms/Repositories/UnityOfWork.cs - Entity context
backend/myfilms/Context/AppDbContext.cs - Application database
backend/myfilms/Context/AppDbContext.cs - Film records
backend/myfilms/Models/Filme.cs - Post records
backend/myfilms/Models/BlogPost.cs - Client records
backend/myfilms/Models/Client.cs
Identity
- Identity user
backend/myfilms/Models/User.cs - Token service
backend/myfilms/Services/TokenService.cs - Token contract
backend/myfilms/Services/ITokenService.cs
Other components
- Visitor
Connections 33
- Visitor → Route access: opens routes
frontend/myfilms/src/routes/route.jsx - Route access → Film browsing: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Film details: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Film submission: role-gates
frontend/myfilms/src/routes/route.jsx - Route access → Post browsing: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Post details: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Post authoring: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Account pages: routes to
frontend/myfilms/src/routes/route.jsx - Route access → Profile and favorites: routes to
frontend/myfilms/src/routes/route.jsx - Film submission → Film API client: calls
frontend/myfilms/src/pages/Filmes/submitFilm.jsx - Post details → Post API client: calls
frontend/myfilms/src/pages/Posts/details.jsx - Account pages → Account API client: calls
- Profile and favorites → User API client: calls
frontend/myfilms/src/pages/User/myFavFilms.jsx - Film API client → Film endpoints: HTTP requests
- Post API client → Post endpoints: HTTP requests
- User API client → Client endpoints: HTTP requests
- Account API client → Authentication endpoints: HTTP requests
- Film endpoints → Unit of work: uses repositories
backend/myfilms/Controllers/FilmeController.cs - Post endpoints → Unit of work: uses repositories
backend/myfilms/Controllers/BlogPostController.cs - Client endpoints → Unit of work: uses repositories
backend/myfilms/Controllers/ClientController.cs - Authentication endpoints → Token service: issues tokens
backend/myfilms/Controllers/AuthController.cs - Unit of work → Film queries: exposes
- Unit of work → Post queries: exposes
- Unit of work → Client and favorites: exposes
- Film queries → Entity context: queries
backend/myfilms/Repositories/FilmeRepository.cs - Post queries → Entity context: queries
backend/myfilms/Repositories/BlogPostRepository.cs - Client and favorites → Entity context: queries
backend/myfilms/Repositories/ClientRepository.cs - Entity context → Application database: persists entities
backend/myfilms/Context/AppDbContext.cs - Entity context → Film records: maps
backend/myfilms/Context/AppDbContext.cs - Entity context → Post records: maps
backend/myfilms/Context/AppDbContext.cs - Entity context → Client records: maps
backend/myfilms/Context/AppDbContext.cs - Entity context → Identity user: maps
backend/myfilms/Context/AppDbContext.cs - Token service → Token contract: implements
backend/myfilms/Services/TokenService.cs