Coder Social home page Coder Social logo

myownshelf's People

Contributors

marecki90 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

myownshelf's Issues

Wiadomości prywatne

Wyświetlanie nowych wiadomości w dropdownie po kliknięciu na ikonę (AJAX).
Możliwość wyświetlenia wszystkich wiadomości na oddzielnej stronie.
Działanie wiadomości prywatnych jak chat na oddzielnej stronie.

Stworzenie modeli aplikacji

Stworzyć modele następujących aplikacji:

  • administration
  • archive
  • conversation
  • feed_post
  • group
  • main_resource
  • notification
  • poll
  • rental
  • shelf
  • user

Wyszukiwarka

Jako użytkownik chcę mieć możliwość wyszukiwania książek w mojej kolekcji.
Jako użytkownik chcę mieć możliwość wyszukiwania książek w kolekcjach moich znajomych.
Jako użytkownik chcę mieć możliwość wyszukiwania książek w kolekcjach znajomych moich znajomych.
Jako użytkownik chcę mieć możliwość wyszukiwania książek w publicznie udostępnionych kolekcjach.

Jako użytkownik chcę mieć możliwość wyszukiwania użytkowników.
Jako użytkownik chcę mieć możliwość wyszukiwania książek danego autora.
Jako użytkownik chcę mieć możliwość wyszukiwania grup.

Jako product owner chcę dać możliwość domyślnego wyszukiwania pośród kolekcji użytkownika i jego znajomych.
Jako product owner chcę dać użytkownikowi możliwość ustawienia prywatności kolekcji i poszczególnych jej elementów.
Jako product owner chcę dać użytkownikowi możliwość domyślnego ustawienia prywatności (domyślne dla serwisu: publiczne).

Strona główna - aktualności

  • znajomy dodał książkę do biblioteki
  • ktoś pożyczył książkę od znajomego
  • ktoś oddał książkę znajomemu
  • znajomy pożyczył książkę od kogoś
  • znajomy oddał komuś książkę
    (uwaga na duble, kiedy znajomy pożycza/oddaje znajomemu)
  • znajomy szuka książki
  • znajomy chcę mieć książkę

Front-end strony głównej (HTML+CSS+JS)

Stworzyć stronę główną z przykładowymi danymi: pasek nawigacyjny, główny strumień aktualności, edytowalny pasek boczny, dropdowny dla wiadomości i powiadomień.

Profil użytkownika

  • avatar
  • liczba książek w kolekcji - link do książek
  • liczba pożyczeń
    • w sumie - link
    • teraz - link
  • liczba wypożyczeń
    • w sumie - link
    • teraz - link
  • reputacja na dzielni
  • znajomi - kilka avatarów i pokaż wszystkich
  • achievementy

Strona książki

Informacje znajdujące się na stronie:

  • tytuł
  • autor
  • ocena
  • czy użytkownik ma książkę, jeśli ma to:
    • ile egzemplarzy
    • na której półce są te egzemplarze
  • recenzja z zewnętrznego serwisu
  • przyciski:
    • szukam / nie szukam
    • mam / gdy użytkownik ma to dropdown: *nie mam | *edytuj informacje
  • chcę mieć / nie chcę
  • znajomi mający tę książkę
    • jeśli nie ma takich, to przycisk: szukaj wśród znajomych znajomych

Powiadomienia

Jako użytkownik chcę mieć możliwość wyświetlenia powiadomień bez odświeżania strony.
Jako użytkownik chcę mieć możliwość wyświetlenia wszystkich powiadomień wraz z historią na oddzielnej stronie.

Powiadomienia o:

  • propozycji dodania do znajomych
  • dodaniu komentarza związanego z użytkownikiem
  • chęci wypożyczenia książki
  • przypomnienie o nieoddanej przez użytkownika książce
  • przypomnienie o nieoddanej przez znajomego książce
  • potwierdzenie przyjęcia/prośba o przyjęcie do grupy
  • przypomnienie o premierze książki, na którą czekasz

Strona główna - boczne panele

  • lista pożyczonych użytkownikowi
  • lista wypożyczonych przez użytkownika
  • najbliższe premiery obserwowanych gatunków, autorów i książek
  • rekomendacje (algorytm)
  • lista grup z licznikiem nieprzeczytanych nowych wiadomości
  • statystyki użytkownika
  • ankieta
  • nowości - ogólne z całej bazy
  • ogólne statystyki - najpopularniejszy auto, książka, gatunek...

Konfiguracja bazy danych i debug toolbara

Zadanie dla wszystkich - zainstalować postgresa i django_debug_toolbar:

  1. pobrać i zainstalować najnowszą nie-betę postgresa - w tej chwili (9.5.3)
  2. przy instalacji poprosi o podanie hasła do lokalnego serwera bazy danych - będziecie musieli je wpisywać przy uruchamianiu klienta do obsługi bazy podczas "ręcznego" z niej korzystania oraz zapisać w tajnym pliku, o którym później; instalator będzie pytał też o port i coś tam, zostawiłem domyślne, przy jednym kliencie bazy danych na lokalu nie ma to większego znaczenia
  3. nie instalowałem tego rozszerzenia, o którym zakomunikował
  4. po instalacji odpalacie "pgAdmin III" - najszybciej za pomocą szukajki na starcie
  5. dwuklik na "PostgresSQL 9.5 (localhost:5432)" (w lewej kolumnie) - poprosi o hasło
  6. ppm na "Bazy Danych" -> "Nowa baza danych" - nazwałem "myownshelf", ale jak chcecie
  7. w konsoli wklepać: "pip install psycopg2" - potrzebne, żeby python ogarniał postgresa
  8. w konsoli wklepać: "pip install django-debug-toolbar" - dodatek do przeglądania statystyk i działania strony
  9. spullować brancha ze zmianami
  10. w głównym katalogu projektu (tam gzie manage.py) dodać plik secrets.json, a w nim:
    {
    "DB_NAME": "nazwa_bazy_danych",
    "DB_USER": "postgres",
    "DB_PASSWORD": "hasło_do_bazy",
    "DB_PORT": "port_domyślnie_5432",
    "DEBUG_USERNAME": "dopiero_zostanie_stworzony_może_zostać_puste"
    }
  11. dodać ten plik do gitignora

Database filler

  1. Pobrać dane za pomocą API GoodReads lub ISBNDB albo napisać scrapper do Iblist (analiza - wybranie odpowiedniego źródła i sposobu pozyskania danych).
  2. Napisać odpowiedni skrypt do pobrania wyżej wymienionych danych.
  3. Zapisać dane do bazy danych z książkami.

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.