{"id":17900338,"url":"https://github.com/radser2001/filmvault","last_synced_at":"2026-05-08T00:34:54.153Z","repository":{"id":258621624,"uuid":"874213817","full_name":"Radser2001/FilmVault","owner":"Radser2001","description":"A .NET API for managing movies","archived":false,"fork":false,"pushed_at":"2024-10-17T14:05:47.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-11T15:54:00.800Z","etag":null,"topics":["aspnetcore","dotnet","entity-framework","rest-api","sqlite"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Radser2001.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-17T12:50:08.000Z","updated_at":"2024-10-17T14:11:39.000Z","dependencies_parsed_at":"2024-10-19T22:01:45.045Z","dependency_job_id":null,"html_url":"https://github.com/Radser2001/FilmVault","commit_stats":null,"previous_names":["radser2001/filmvault"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Radser2001/FilmVault","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Radser2001%2FFilmVault","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Radser2001%2FFilmVault/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Radser2001%2FFilmVault/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Radser2001%2FFilmVault/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Radser2001","download_url":"https://codeload.github.com/Radser2001/FilmVault/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Radser2001%2FFilmVault/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32762279,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aspnetcore","dotnet","entity-framework","rest-api","sqlite"],"created_at":"2024-10-28T16:00:59.881Z","updated_at":"2026-05-08T00:34:54.114Z","avatar_url":"https://github.com/Radser2001.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FilmVault 🎬\nFilmVault is a .NET API for managing a movie catalog. It provides functionalities for adding, retrieving, updating, and deleting movies, along with managing directors and genres. This project demonstrates skills in API development using ASP.NET Core and Entity Framework Core.\n\n## Purpose\nThe primary goal of this project is to enhance my skills in .NET development, particularly in building RESTful APIs. By working on FilmVault, I aim to gain practical experience with ASP.NET Core, Entity Framework Core, and database management.\n\n## Features\n- **Movies**: Add, retrieve, update, and delete movies.\n- **Directors**: Manage movie directors, including their award-winning status (CRUD operations planned for future implementation).\n- **Genres**:  Categorize movies with multiple genres (CRUD operations planned for future implementation).\n- **Database**: Uses SQLite for persistent data storage.\n- **API Endpoints**: RESTful API design for seamless client interaction.\n\n## Technologies Used\n- **ASP.NET Core**: For building the web API.\n- **Entity Framework Core**: ORM for database interactions.\n- **SQLite**: Lightweight database for persistent data storage.\n- **Swagger**: API documentation and testing interface.\n- **Dependency Injection**: For service management and scalability.\n\n## Setup and Installation\n\n1. **Clone the repository**:\n\n    ```bash\n    git clone https://github.com/Radser2001/FilmVault\n    cd FilmVault\n    ```\n\n2. **Install dependencies**:\n\n    ```bash\n    dotnet restore\n    ```\n\n3. **Configure the database connection** in `appsettings.json`:\n\n    ```json\n    \"ConnectionStrings\": {\n    \"FilmVaultDb\": \"Data Source=FilmVault.db\"\n    }\n    ```\n\n4. **Apply database migrations**:\n\n    ```bash\n    dotnet ef database update\n    ```\n\n\n## Running the Application\n\n1. Run the API locally:\n\n    ```bash\n    dotnet run\n    ```\n\n2. Access the API via:\n    - `http://localhost:5041`\n    - `https://localhost:5041` (for HTTPS)\n\n\n## API Endpoints\n- `GET /movie`: Get all movies\n- `GET /movie/{id}`:  Get a movie by ID\n- `POST /movie`: Add a new movie\n  - Example JSON request:\n\n    ```json\n    {\n        \"title\": \"Inception\",\n        \"directorId\": 1,\n        \"genres\": [1, 2],\n        \"isAvailableIn4K\": true\n    }\n    ```\n\n- `PUT /movie/{id}`: Update an existing movie\n- `DELETE /movie/{id}`: Delete a movie\n\n\n## Future Enhancements\n- Add Genre Management.\n- Add Director Management.\n- Add user authentication and authorization.\n- Implement search and filtering for movies.\n- Add more advanced features like movie reviews and ratings.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradser2001%2Ffilmvault","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fradser2001%2Ffilmvault","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradser2001%2Ffilmvault/lists"}