komitywa / wysadzulice.pl Goto Github PK
View Code? Open in Web Editor NEWDjango-based application that run http://wysadzulice.pl
License: MIT License
Django-based application that run http://wysadzulice.pl
License: MIT License
Instead of vendor.js and planting.js we need to use main.js
JAKO Uczestnik
CHCĘ na zaproszeniu kliknąć w link Więcej o projekcie
ŻEBY w tym oknie zobaczyć szczegóły planting, które podał wcześniej Inicjator
JAKO Inicjator
CHCĘ dostać pole "Kto i kiedy zdecyduje o realizacji Waszego planting" (150 znaków)
ŻEBY wpisać tam np. "Rada Osiedla Jeżyce, w lutym" lub "Mieszkańcy głosujący w ramach Budżetu Obywatelskiego w październiku"
JAKO Uczestnik
CHCĘ zobaczyć na widoku planting warstwę z zaproszeniem
ŻEBY dowiedzieć się, kto i dlaczego to wysłał
W lewej kolumnie:
Zdjęcie Jacka (które dodał z FB)
Tekst: Chcesz zmienić to miejsce? Wstaw rzeczy, których tu brakuje!
W prawej kolumnie:
Mapa okolicy z zaznaczonym miejscem
Poniżej, obok siebie
Link: Więcej o projekcie
Przycisk: OK, zaczynam!
JAKO internauta
CHCĘ stworzyć wysadzenie w ramach kampanii
ABY podzielić się swoim pomysłem na zagospodarowanie przestrzeni
Lista kroków:
JAKO Inicjator
CHCĘ razem z linkiem dostać podpowiedź
ŻEBY wiedzieć, co zrobić z linkiem do mojej kampanii
Tekst podpowiedzi:
Prześlij ten link mieszkańcom, których chcesz spytać, czego brakuje im w tym miejscu.
JAKO Uczestnik
CHCĘ kliknąć w plusik
ŻEBY dodać przedmiot, którego brakuje
Kiedy Uczestnik dojdzie do końca przedmiotów na suwaku, pojawi się przycisk +
Przycisk powinien otwierać warstwę z katalogiem przedmiotów, gdzie widać, które wybrał Inicjator, a które może teraz dodać Uczestnik.
JAKO administrator kampanii
CHCĘ wydrukować plakat
ABY zaangażować mieszkańców offline
Strona wysadzulice.pl powinna składować dane w bazie PostgreSQL zamiast Sqlite.
Sqlite jako bezserwerowy silnik bazodanowy nie powinien być wykorzystywany.
Więcej informacji dostępnych pod adresami:
Przed wykonaniem tego zadania powinniśmy też odseparować konfigurację strony wysadzulice.pl od reużywalnej aplikacji Django (https://docs.djangoproject.com/en/1.8/intro/reusable-apps/)
JAKO Inicjator
CHCĘ zobaczyć katalog przedmiotów
ŻEBY wybrać z nich te, które zaproponuję mieszkańcom w swoim planting
Aplikacja na serwerze produkcyjnym powinna być podpięta pod serwer WWW (Apache) a nie serwowana za pomocą serwera wbudowanego w Django.
Więcej informacji można znaleźć na stronach:
JAKO Inicjator
CHCĘ zobaczyć podpowiedź "Zaznacz rzeczy, które zaproponujesz mieszkańcom"
ŻEBY wiedzieć, co tu mogę zrobić
JAKO Inicjator
CHCĘ pod wybranymi meblami zobaczyć przycisk "Opisz planting"
ŻEBY kliknąć go, przenieść wybrane elementy do puli mojego planting i zająć się opisem planting
JAKO Uczestnik
CHCĘ kliknąć w przycisk OK, zaczynam
ŻEBY usunąć warstwę z zaproszeniem i zobaczyć wybrany przez Inicjatora widok ulicy i narzędzia do jego zmiany
JAKO internauta
CHCĘ się zarejestrować
ABY mieć dostęp do narzędzi aplikacji
Podaję mejla i wybieram hasło. Dostaję komunikat, że rejestracja się powiodła lub że istnieje już konto na tym mejlu.
JAKO Inicjator
CHCĘ dostać link do swojej kampanii
ŻEBY przesłać go tym, których chcę zaangażować
JAKO internauta
CHCĘ zagłosować na wysadzenie
ABY pokazać poparcie dla danego wysadzenia
After some cleaning of production environment update method doesn't collect static files.
JAKO zarejestrowany uzytkownik
CHCĘ stworzyć kampanię
ABY przedstawić jaki obszar chcemy zmienić
Kampania:
JAKO internauta
CHCĘ zobaczyć listę kampanii
ABY zaangażować się, zaproponować wysadzenie w ramach kampanii
Galeria kampanii:
JAKO internauta
CHCĘ zobaczyć jakie są wysadzenia
ABY poznać pomysły innych
W celu szybkiego budowania środowiska produkcyjnego należałoby stworzyć w repozytorium kodu źródłowego plik fabfile.py, który pozwoli budować środowisko zdalnie za pomocą połączenia ssh.
Więcej pod adresem http://www.fabfile.org/
JAKO Inicjator
CHCĘ wybrać widok ulicy
ŻEBY zaproponować go mieszkańcom w planting
Every campaing shoul be link
JAKO Inicjator
CHCĘ zobaczyć bulletpointy z krótkimi polami tekstowymi "Dlaczego warto zmienić to miejsce" na 80 znaków każdy
ŻEBY wpisać tam uzasadnienie
Rozwijana aplikacja powinna być dostępna światu pod adresem http://wysadzulice.pl
Aplikacja powinna być uruchamiana przez serwer www (Apache) w trybie mod_wsgi.
Więcej można znaleźć pod adresami:
Należy zdefiniować obiekty, które będą serwowane za pomocą REST API.
Docelowo dokumentacja ma trafić pod adres wiki: https://github.com/komitywa/wysadzulice.pl/wiki/REST-API
Ponieważ chcemy iść w stronę "single page app", i logika będzie wykonywana po stronie JS, to należałoby ustalić zestaw obiektów, które będzie udostępniał serwer.
Więcej na:
JAKO organizator kampanii
CHCĘ tworzyć aktualności
ABY informować wysadzaczy i innych interesariuszy o postępach kampanii
JAKO uczestnik
CHCĘ zobaczyć listę zdjęć wysadzeń
ABY wybrać jedno z nich (i zapoznac się ze szczegółami)
In simplest way.
JAKO Internauta
CHCĘ obejrzeć kampanię
ABY zdecydować, czy chcę się zaangażować poprzez wysadzenie/głosowanie/szerowanie
Interesuje mnie:
JAKO organizator kampanii
CHCĘ zamknąć kampanię
ABY nie pozwolić na dodawanie nowych wysadzeń i powiadomić wysadzaczy o końcu
Jako uczestnik (wysadzający)
CHCĘ dowiedzieć się o celu kampanii
ŻEBY zdecydować, czy się w nią zaangażować
JAKO administrator serwisu
CHCĘ wyróżnić kampanię
ABY była lepiej zauważalna na dla mieszkańców
JAKO interenauta
CHCĘ otrzymywać maile z aktualnościami dotyczącymi kampanii
ABY być poinformowanym o jej losach
Kroki:
Działająca instancja Django
JAKO Inicjator
CHCĘ wskazać elementy katalogu
ŻEBY zapisać je do puli mojego planting
One button that will create campaing with unique id.
JAKO Inicjator
CHCĘ żeby apka sama zaznaczyła mi link do kampanii
ŻEBYM mógł od razu go skopiować (a nie najpierw zaznaczać)
JAKO organizator kampanii
CHCĘ obejrzeć statystyki
ABY poznać najważniejsze potrzeby mieszkańców
Statystyki takie jak:
JAKO Inicjator
CHCĘ pokazać w projekcie swoje zdjęcie z FB
ŻEBY mieszkańcy zobaczyli je w zaproszeniu, które pokaże się po kliknięciu w link mojego planting
projections, manifesto.json and forviewer.json need to be serverd from outside of engine's directory
Jako admin (ngo) chcę
. wskazać miejsca do wysadzenia
. opisać uczestnikom cel kampanii
. pokazać uczestnikom miejsca na mapie i dać im call to action
JAKO organizator kampanii
CHCĘ zorganizować głosowanie
ABY wybrać najlepsze projekty
Strona powinna automatycznie przy każdym commit'cie/pull requeście budować się w Travis CI, wykonywać testy jednostkowe, ustalać pokrycie kodu testami jednostkowymi i wysyłać się dane o pokryciu do CodeCov.
Dzięki temu zapewnimy stabilność strony, wyższą jakość kodu (można będzie podpiąć lintery i przy każdym pull requeście sprawdzać zgodność).
Linki do usług:
JAKO Inicjator
CHCĘ dostać pole "Kto i kiedy zdecyduje o realizacji Waszego planting" (150 znaków)
ŻEBY wpisać tam np. "Rada Osiedla Jeżyce, w lutym" lub "Mieszkańcy głosujący w ramach Budżetu Obywatelskiego w październiku"
JAKO Inicjator
CHCĘ zobaczyć licznik znaków, które zostały w polu "Dlaczego warto..."
ŻEBY wiedzieć, ile mogę jeszcze wpisać
JAKO internauta
CHCĘ się zalogować
ABY mieć dostęp do narzędzi aplikacji
-logowanie poprzez pdoanie maila i hasła
-logowanie nie powiodło się -> 'ekran ponownego logowania'
Without any restriction allow planting and save it under particular campaign.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.