Giter VIP home page Giter VIP logo

mtuci-attendance's Introduction

Посещаемость МТУСИ

Страница посещаемости Главная страница

Приложение предназначено для подсчёта количества часов, проведенных студентами на занятии и состоавления соответствующей статистики.

Кто ты?

В репозитории почти всё, что необходимое для того, что бы просто клонировать его и помочь улучшить приложение. Но кое-что сделать всё-таки придётся. Во-первых, создать виртуальное окружение. Если есть желание потестить на Azure, то создавать нужно 32-битную windows версию. А далее установить все зависимости из requirements.txt. Во-вторых, сейчас в настройках секретный ключ и информация о базах данных импортируется из модуля private, которого в репозитории, естественно, нет, поэтому необходимо сгенерировать собственный ключ а базой данных указать sqlite3 (в репозитории уже есть пара старых, можно использовать одну из них, но обязательно применить все миграции).

Что внутри

Django-проект разделен на следующие приложения:

  • Accounts - приложение для аутентификации с моделями пользователей и групп.
  • App - основное приложение (и свалка мусора), всё, что сложно отнести к одно из других приложений здесь. А именно: основной шаблон, страница старосты, главная страница, многие статические файлы, страницы ошибок, модели последних и запланированных изменений.
  • Attendance - приложение посещаемости. Содержит единственное представление на основе шаблона и 300 строк представления для отдачи статистики в виде json.
  • Manager - (в других местах manage) приложение для панели управления, закрытой от большинства пользователей.

Остальные файлы и папки:

  • cache - для файлов кэша (сейчас включен locMemCache)
  • temporary - для временных файлов (которых теперь, впрочем, нет)
  • wheelhouse - папка с бинарниками пакетов, которые хрен установишь через pip или easy_install обычным способом. На данный момент там только драйвера для MySQL.
  • .pyproj, .sln - проект и решение для Visual Studio (PTVS обязателен)
  • requirements.txt - файл со списком необходимых пакетов (чуть подробнее ниже)
  • runtime.txt - необязательный файл для Azure, указывающий версию Python
  • .config - Конфиги для IIS

Подробнее о requirements.txt

--find-links wheelhouse указывает, что прежде чем лезть на PyPi необходимо посмотреть в папке wheelhouse. Виртуальное окружение не входит в репозиторий, поэтому это важно. В папке wheelhouse обязательно должен лежать исходник пакета с драйвером для MySQL.

Список используемых технологий и фреймворков

  • Microsoft Azure и ClearDB - хостинги для веб-приложения и для базы данных MySQl соответственно
  • Django - Python фреймворк
  • JQuery - основной javascript фреймворк
  • Materialize, Bootstrap - фреймворки для адаптивной вёрстки
  • Hammer.js (в том числе в составе Materialize) - для контроля за жестами на сенсорных экранах
  • Chartist - для построения отзывчивых svg графиков
  • Offline.js - для постоянного контроля за подключением к серверу (т.к. многие функции работают через ajax это необходимо)
  • OudatedBrowser.js - для просветления пользователей IE6
  • Material Design for Bootstrap, Snackbar.js - дополнения для Bootstrap
  • Animate.css - для быстрого создания анимаций
  • WOW.js - для анимаций при прокрутке
  • Google Fonts - хостер веб-шрифтов
  • Md-preloader - простенький svg прелоадер в стиле Material
  • Twitter Typeahead - для удобного поиска в панели управления
  • Google Material Icons - материальные иконки от Google
  • Fontello - немного недостающих иконок
  • Modernizr - для проверки поддержки браузером (пока только на главной)
  • SVG.js - для простых анимаций svg
  • SvgPorn - источник нескольких svg изображений

И, конечно же:

  • stackoverflow.com
  • tympanus.net/codrops
  • Atom - прекрасный редактор от GitHub на Electron (спасибо ему за линтинг моего говно низкокачественного кода)
  • Inkscape - отличный редактор векторной графики

Послесловие

Я не постоянный житель GitHub (посмотрите профиль, господи), поэтому Pull request'ы или еще что-нибудь могу не заметить. В связи с этим пишите мне на [email protected] или в vk.com/gogamwar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.