Skip to content

MrAlekzI/Project-LP

Repository files navigation

Project-LP

My proposal for pjoject

  1. Локальные функционал (минимум): 1.1.Форматирование ввода через консоль или чтение из файла: a. сделать шаблон сайта где будет:( a.окно ввода, кнопка загрузки из файла, кнопка фоматирования, b. кнопка рандомной генерации, c. окно выбора длины тандемного повтора, d. чекбокс вложеных повторов, e. кнопка поиска повтора, f. окно где будет выводится таблица с найдеными повторами - тип потвора, длина звена, количество звеньев, позиции в последовательности g (Опционально) фрейм где возвращается введенная последовательность (не важно из какого источника) и тандемные повторы выделяются цветом h. кнопка проерки скользских сайтов i. окно с таблицей найденых скользких сайтов -тип потвора, длина звена, количество звеньев, позиции в последовательности (моежт совметсить с g.) j. (Опционально) фрейм где возвращается введенная последовательность (не важно из какого источника) и скользские повторы выделяются цветом (может совместить с g.) k. окно выбора диапазона подсчета GC состава l. кнопка подсчета GC состава m. место где показывают общий GC состав n. окно где будет выводиться график по GC состваву (по X - позциия в ДНК, единица деления - заданая длина искомого дипазона окна подсчета, по Y - процент GC))

     b. Предостваить выбор пользотаелю вводить через (консоль/окно на сайте) или загружать из файла (их выбор долден быть взаимоисключающим) перевод строки к одному регистру (.lower()) - привязка простых комманд к кнопкам на сайте
    
     c. проверка на не ДНК символы (через if или regex?), если находятся - выдать сообщение какие найдены и в каких позициях (или записать в лог?), удалить их, вернуть в окно ввода уже без этих символов (в случае загрузки из файла перезаписть не нужна, чтобы случайно не потереть файл если вдруг ошибка), вернуть длину последовательности. (Опционально) вернуть последовательность после форматирвоания в окне где указаны отсечки например длинам (ну или реализвовать пробелы для более легкого чтения - пока непонятно как)
    
     d. возможность рандомной генерации с заданой длиной - привязка к кнопке
    

    1.2. поиск повторов (перенести имеющуюся функцию) a. привязать к сделаным элементам сайта функцию b. добавить записать в лог c. вывести результаты в таблицу на сайте +(вертуть последовательность с окрашеными участками) d. понять куда девать формируемый json после показа результата на сайте (сохранять локально у пользователя или в базу данных???)

    1.3. Поиск скользких сайтов: a. проверить литературу - какие типы скользких сайтов известны b. фукнкция проверки через regex - привязать c. вывести результаты в таблицу +(вертуть последовательность с окрашеными участками) d. запистаь лог e. что-то положить в json

    1.4. Подсчет GC a. подсчет сумарного если не введено какое-то конкретное окно поиск - вывод на сайт b. подсчет в заданых диапазаонах - разбиеение последовательности по индексу в цикле например, подсчте на каждом участке, формирование списка GC% c. релизация графика (через какой0нибудь модуль), вывод картинки на сайт

  2. Авторизация юзеров (минимал) 2.1 Сдалать элементы на сайте: a. кнопка регистракции и входа b. создании базы с id пользователей c. записль json с результатами предыдущих поисков (и логами???) в базу данных пользователей d. создать страницу по вызову истории запросов пользователя - чтобы выводил номер запроса, его условия и результат

  3. Связь со сторонними ресурсами (минимум) 3.1. Связь с сайтом поиска палиндромов a. написать функцию которая будут запихивать последовательность из запроса через фронт на этот сайт b. написать функцию которая будет парсить данные ответа с сайта и запсиывать их в словарь c. элемент на сайте: ( a. кнопка запроса поиска палиндромов b. окна варьирвоания параметров c. кнопка поиска на cross-junction(то же что и выше только с некоторыми предустановлеными параметрами) d. таблица результатов поиска e. (опицонально) выводить в окне посделовательность с выделением цветом )

    3.2. Связь с сайтом поиска G-квадруплексов a. написать функцию которая будут запихивать последовательность из запроса через фронт на этот сайт b. написать функцию которая будет парсить данные ответа с сайта и запсиывать их в словарь c. элемент на сайте: ( a кнопка запроса поиска палиндромов b. окна варьирвоания параметров c. кнопка поиска на cross-junction(то же что и 3.2.a.a. только с некоторыми предустановлеными параметрами) d. таблица результатов поиска e. (опционально) выводить в окне посделовательность с выделением цветом )

    3.3. Реализация привязки к поиску по GeneBank: a. Элементы на сайте: a. нопка поиска по GeneBank, что за ген/группу генов/организм мы ввели b. результат поиска c. кнопка поиска в каком гене (или ближайший ген) находятся найденые повторы d. результат поиска места повтора e. окно и кнопка ввода последовательности по номеру в GeneBank (третий способ ввода данных) f. Функция подключения к базе данных и поиска по имени гена g. Функция подключения к базе данных и поиска последовательности h. Фуункция поиска малых участков с расширением пока не найдет ближайший ген

  4. Локальныке функции (опционально): 4.1. Элементы на сайте: a. кнопка расчета свободных энергий и констант b.вывод в виде значения (если коротки учатсток) - по алгоритму NN и HMM c. задание диапазона окон для вычисления энергий и констант в виде гарфика d. окно диапазона длинн тандемных повторов для поиска e. кнопка для поиска по интересующим или всем диапазонам f. таблица найденых повторов g. кнопка поиска всех однобуквенных повторов h. окно где устанваливается минимальная длина однобуквенного повтора i. окно с таблицей результаты поиска таких повторов j. кнопка расчета длины ДНК в нанометрах k. окно результатов такой длины 4.2 Функция расчета энергий по HH (ввесли верхнюю границу) 4.3. Функция расчета энергий по HMM (ввесли верхнюю границу) 4.4. Функция пересчета энегрий в константу 4.5. функция для поиска энергий по участвкам в последовательности -через простой цикл 4.6. поиск однобуквенных повторов либо через REGEX группировку либо через подсчет в цикле 4.7. результат записывается в json и в лог-файл(?) 4.8. функция подсчета длины как с линейным приближением, так и с учетом free-joint model 4.9. функция формирвоания отчета в виде csv, текстового файла

  5. Авторизаия юзеров (опционал) 5.1. формирвоание отчета по истории запроса

  6. Работа с БД (опционально) 6.1. Сделать аналогичные процедуры как и для GeneBank для других баз данных (Ensemnble например) 6.2. Сдеалать возможность api доступа к ресурсу

  7. Оконная структура (опицонально) 7.1 сделать программу в виде окна 7.2. как то скомпилировть этот файл чтобы он стал .exe

About

My proposal for pjoject

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •