Giter Club home page Giter Club logo

badeseen's Introduction

badeseen

Qualität der Badeseen im Landkreis Gießen

Build Status devDependency Status Stories in Ready

Development

Bevor es an die Arbeit geht, bitte vorher hier schauen ob tasks als Ready deklariert wurden und dann daran arbeiten. Die Tags ready und help wanted zeigen an, dass hier gerne geholfen werden darf. Tasks die unter In Progress stehen bitte nicht in angriff nehmen.

Vorbereitungen

Um mit dem Entwickeln zu beginnen müssen über den Node Package Manager (npm) zunächst alle Abhängigkeiten installiert werden. Diese erlauben das automatische Testen des Codes, das Compilen des SASS-Codes und das Testen der Quelltexte gegen die Sprachspezifikationen (JShint, CSSLint).

npm install

(setzt eine funktionierende Nodejs-Installation voraus)

Bevor mit der Entwicklung begonnen wird, sollte grunt watch gestartet werden. So wird nach jeder Änderung auf Syntaxfehler etc. geprüft, sowie SASS compiled — damit ist im Browser direkt live der aktuellste Entwicklungs-Stand einsehbar.

Die Entwicklung findet im development branch statt, master repräsentiert immer einen stabilen Zustand. git workflow

Nach Änderungen

Nachdem Änderungen vorgenommen worden sind, sollte make test ausgeführt werden und ggf. notwendige ignore-Anweisungen für jshint hinzugefügt werden (aber nur wenn bewusst ist, was das für Auswirkungen hat!). Neuer Code ist mit Tests auszustatten, die Modulweise in ./test zu finden sind.

Um den JavaScript-Code zu standardtisieren, muss grunt beautify ausgeführt werden. So werden z.B. Einrückungen usw. angepasst.

Wenn alle Tests durchlaufen und der JS-Code beautified ist, kann der Code ins Remote-Repository eingepflegt werden.

Achtung: grunt deploy ruft ebenso den beautify-Task auf.

Font-Awesome

Wenn an den SASS-Dateien von Font-Awesome etwas angepasst wurde, müssen diese erneut in CSS umgewandelt werden, was durch grunt sass:fontawesome erledigt werden kann. Dieser Task muss explizit aufgerufen werden und wird nicht automatisch ausgeführt.

Releases

Releases werden nach dem git workflow mit Hilfe der semantischen Versionierung versioniert. Minor-Releases reichen aus um in den master branch gemerged zu werden, patch releases jedoch sind development releases und verbleiben im development branch. Jedes Release wird mit einem Tag markiert und Major/Minor Releases werden in GitHub als solche eingetragen (mit zip).

Deployment

Eine auslieferbare Kopie der App kann über grunt deploy generiert werden. So wird ein .zip-Archiv erstellt (in dist/), ohne die Nodejs-Abhängigkeiten, den SASS-Code, die Tests usw.

Deployment als GitHub-Page

Im Verzeichnis des Quelltextes: git checkout gh-pages && git merge --no-ff master && git checkout master && git push um zu deployen. Nicht zur staging area hinzugefügte Änderungen müssen vorher gestasht werden! Achtung: vorher make test ausführen und Funktion sicherstellen.

Redeployment

Um das Projekt an andere OK Labs anzupassen müssen lediglich die Variablen in public/js/values.js angepasst werden. Der Footer passt sich automatisch den gegebenen Informationen bzgl. der Grid-Größe an.

badeseen's People

Contributors

christiansch avatar waffle-iron avatar

Stargazers

Ismael avatar Vincent Wagner avatar

Watchers

James Cloos avatar Ismael avatar  avatar Jan avatar

badeseen's Issues

Rendering issues caused by delayed geolocation permission approval

Map does not render correctly after switching tabs.

How to repoduce:

  1. Set the permission for the "Location-Tracking" of your browser to ask. Your browser should now ask you to use your location.
  2. Reload the page and click on the "Liste" Tab
  3. Now allow the locationtracking (works best in chrome) The list should now contains entries
  4. Switch back to the map and now it should look like on the screenshot below.

map_bug

Reproduced with chrome 36 and ff 31 both on linux.

I had the same problem with gmaps. To fix it I had to fire the resize event. For leaflet there is something similar -> Leaflet/Leaflet#1564

write tests

write those things nobody likes to write.

improve the footer column count calculation

$scope.footerColumns = (12 / footCols); leads to weird results when footCols is like 5, 7 or something. Not very future proof. Needs improvement. Note: 1, 2, 3 are working fine. I guess 4, 6 and 12 either.

fix the map sizing in a non-hacky way

the leaflet map inside the .tab-pane is not shown if not all parent elements are sized explicitly. this shouldn’t be done with height: 99% for all elements.

Remove HTML validation test

html validation index page should have no html errors: is caused by angular bootstrap directives (and specific angular tags) like <tabset>. HTML validation should be made as kind of a review instead of a test.

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.