{"id":17965945,"url":"https://github.com/aladser/yalink","last_synced_at":"2026-05-07T11:31:09.379Z","repository":{"id":258962450,"uuid":"875979965","full_name":"Aladser/yalink","owner":"Aladser","description":"Просмотр файлов публичной ссылки Яндекс Диска. Django","archived":false,"fork":false,"pushed_at":"2024-10-28T09:46:07.000Z","size":1286,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-05T13:41:16.336Z","etag":null,"topics":["celery","django","postgresql","redis-cache","yandex-api"],"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/Aladser.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-21T07:45:57.000Z","updated_at":"2024-10-28T09:46:06.000Z","dependencies_parsed_at":"2024-10-26T13:53:22.321Z","dependency_job_id":null,"html_url":"https://github.com/Aladser/yalink","commit_stats":null,"previous_names":["aladser/yalink"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aladser%2Fyalink","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aladser%2Fyalink/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aladser%2Fyalink/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aladser%2Fyalink/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Aladser","download_url":"https://codeload.github.com/Aladser/yalink/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230039179,"owners_count":18163369,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["celery","django","postgresql","redis-cache","yandex-api"],"created_at":"2024-10-29T13:06:15.107Z","updated_at":"2026-05-07T11:31:09.334Z","avatar_url":"https://github.com/Aladser.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Публичные файлы Яндекс Диска\n\n#### Настройки проекта\n+ создать файл *.env* по аналогии c *.env.example*\n+ ``pip install -r requirements.txt``\n+ создать базу данных PostgreSQL *yalink*\n+ ``python manage.py migrate``\n+ ``python manage.py makeusers``\n+ запуск проекта:\n  * локальный сервер ``python manage.py runserver``\n  * настройки для nginx в папке *install* для имени сайта *yalink.local*\n\n#### Описание\n\nПроект предназначен для просмотра папок и файлов публичных ссылок Яндекс Диска. Для этого не используется токен доступа.\nРекурсивный просмотр файлов. Реализовано так, что можно посмотреть содержимое вложенных папок, но не загрузить их полностью.\n\n+ Индексная страница\n\n  ![index](/readme/index.png)\n+ Если нажать на получение файлов ссылки Яндекс Диска без авторизации, редирект на страницу авторизации. \n  Два вида авторизации:\n  * логин-пароль \n  * Яндекс\n\n  ![auth](/readme/auth.png)\n+ Открытие ссылки. У файлов есть кнопка *Скачать*. Можно скачать все содержимое и открыть для просмотра содержимого.\n\n  ![search](/readme/search.png)\n+ Открытие вложенной папки. В пути появляется GET-параметр path - путь до папки внутри ресурса\n\n  ![search2](/readme/search2.png)\n+ Можно скачать несколько файлов. Реализовано через JS(*index.js*): программное нажатие кнопок *Скачать* у соответствующих файлов \n  ![search_download](/readme/search_download.png)\n  + Можно отфильтровать файлы по их типу. Реализовано через JS(*index.js*): показываются только элементы, соответствующие фильтру.\n  ![search_filter](/readme/search_filter.png)\n#### Приложения\n+ ``authen`` - аутентификация пользователя\n+ ``main`` - главная страница\n\n#### Представления\n+ ``main``\n  * ``MainView``(`` get_context_data()`` ) - представление главной страницы\n      + перенаправление на страницу авторизации, если идет запрос на получение содержимого ссылки без авторизации\n      + проверка корректности ссылки\n      + получение списка файлов ссылки из кэша, если ранее было запрос на их получение\n      + если нет кэша, то получение списка элементов ссылки из внешнего ресурса\n+ ``authen``\n  * ``UserLoginView`` - авторизация логин-пароль через БД\n  * ``yalogin`` - авторизация через Яндекс\n  * ``RegisterView`` - регистрация пользователя в БД\n  * ``ProfileView`` - профилья пользователя\n  * ``CustomPasswordResetView`` - сброс пароля - отправка ссылки на почту\n  * ``CustomUserPasswordResetConfirmView`` - сброс пароля - ввод нового пароля\n  * ``CustomPasswordResetCompleteView`` - сброс пароля - проверка ввода нового пароля\n  * ``VerificateEmailView`` - подтверждение почты\n  * ``RegisterCompleteView`` - завершение регистрации\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faladser%2Fyalink","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faladser%2Fyalink","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faladser%2Fyalink/lists"}