{"id":19664166,"url":"https://github.com/lokie-codes/music-app","last_synced_at":"2026-05-04T18:36:36.739Z","repository":{"id":175539428,"uuid":"654061171","full_name":"Lokie-codes/Music-App","owner":"Lokie-codes","description":"The Music App is a Django Rest Framework-based application designed for sharing music with others. With three types of access levels (public, protected, and private), users can sign up using their email, log in securely, and enjoy a seamless music-sharing experience.","archived":false,"fork":false,"pushed_at":"2023-06-15T10:10:52.000Z","size":2453,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-20T18:26:24.357Z","etag":null,"topics":["api-rest","django","django-rest-auth","django-rest-framework","python","testing"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Lokie-codes.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":"2023-06-15T09:58:47.000Z","updated_at":"2023-06-15T10:05:04.000Z","dependencies_parsed_at":"2023-06-27T11:30:39.640Z","dependency_job_id":null,"html_url":"https://github.com/Lokie-codes/Music-App","commit_stats":null,"previous_names":["lokie-codes/music-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Lokie-codes/Music-App","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokie-codes%2FMusic-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokie-codes%2FMusic-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokie-codes%2FMusic-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokie-codes%2FMusic-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lokie-codes","download_url":"https://codeload.github.com/Lokie-codes/Music-App/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokie-codes%2FMusic-App/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32620173,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-04T10:08:07.713Z","status":"ssl_error","status_checked_at":"2026-05-04T10:08:02.005Z","response_time":58,"last_error":"SSL_read: 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":["api-rest","django","django-rest-auth","django-rest-framework","python","testing"],"created_at":"2024-11-11T16:16:50.375Z","updated_at":"2026-05-04T18:36:36.731Z","avatar_url":"https://github.com/Lokie-codes.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Music App\n\nThe Music App is a Django Rest Framework-based application that allows users to share music with others. \\\nIt provides three types of access for the shared music: public, protected, and private. \\\nUsers can sign up with their email and log in using their email and password. All files accessible by the user are visible to them. \\\nThe application utilizes django-rest-auth for authentication and user registration.\n\n## Routes\n\n- User Registration: `POST` [http://127.0.0.1:8000/auth/register/](http://127.0.0.1:8000/auth/register/)\n- User Login: `POST` [http://127.0.0.1:8000/auth/login/](http://127.0.0.1:8000/auth/login/)\n- List of Accessible Music: `GET` [http://127.0.0.1:8000/api/music-list/](http://127.0.0.1:8000/api/music-list/)\n- Add Music: `POST` [http://127.0.0.1:8000/api/music-list/](http://127.0.0.1:8000/api/music-list/)\n- User Logout: `POST` [http://127.0.0.1:8000/auth/logout/](http://127.0.0.1:8000/auth/logout/)\n\n## Features\n\n1. **User Registration**: Users can create an account by providing their email and password. The registration endpoint accepts a `POST` request to `/auth/register/`. Successful registration returns the user details and a token for authentication.\n\n2. **User Login**: Users can log in to the application using their email and password. The login endpoint accepts a `POST` request to `/auth/login/`. Successful login returns the user details and a token for authentication.\n\n3. **List of Accessible Music**: Users can retrieve a list of music accessible to them. The endpoint accepts a `GET` request to `/api/music-list/` and returns a list of music files based on the user's access level (public, protected, or private).\n\n4. **Add Music**: Users can upload music files to share with others. The endpoint accepts a `POST` request to `/api/music-list/` and requires the necessary information for the music file (e.g., file name, access level). Upon successful upload, the file becomes accessible based on the specified access level.\n\n5. **User Logout**: Users can log out of the application, invalidating their authentication token. The logout endpoint accepts a `POST` request to `/auth/logout/` and logs the user out.\n\n## User Authentication and Registration\n\nThe Music App utilizes django-rest-auth for user authentication and registration. Users are required to sign up with their email and password to create an account. They can then log in using their registered email and password. The authentication mechanism relies on tokens, which are returned upon successful registration and login. These tokens should be included in the request headers for subsequent authenticated requests.\n\n## Testing\n\nThe Music App includes tests to ensure the application functions correctly. All test cases have been executed and passed successfully.\n\nFeel free to explore the functionalities of the Music App and share your favorite music with others! If you encounter any issues or have any suggestions, please let us know.\n\n---\n\n## Getting Started\n\nTo get started with the Music App, follow these steps:\n\n1. Clone the repository:\n```\ngit clone https://github.com/Lokie-codes/Music-App.git\n```\nFollowing instructions work on Linux OS environments.\n2. Create Virtual Environment\n```\npython3 -m venv .env\n```\n3. Activate virtual environment\n```\nsource .env/bin/activate\n```\n4. Install the project dependencies:\n```\npython -m pip install -r requirements.txt\n```\n5. Apply the database migrations:\n```\npython manage.py migrate\n```\n6. Run the development server:\n```\npython manage.py runserver\n```\n7. Access the application through your browser at `http://127.0.0.1:8000/`.\n\nTo gain administrative access, you can utilize the following command:\n```\npython manage.py createsuperuser\n```\nWhen prompted, you should enter the desired username, email address, and password for the admin account. This information will be used to create the superuser account with administrative privileges.\nadmin site can be accessed at `http://127.0.0.1:8000/admin/`\n\n---\nEnjoy using the Music App!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokie-codes%2Fmusic-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flokie-codes%2Fmusic-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokie-codes%2Fmusic-app/lists"}