B-G101 / Team-BRS

Tri 1: Python and Flask Intro
0 stars 0 forks source link

Team BRS

Scrum Board

Github Repository


Tasks Contributors Github ID/ Profile Scrum Board Commits Pair Journal
Bria B-G101 Tasks Scrum Board Commits Bria and Riya's Peer Journal
Riya ranand2445 Tasks Scrum Board Commits
Valerie Distilled Vinegar Tasks Scrum Board Commits Valerie and Sreeja's Pair Journal
Sreeja SreejaVad Tasks Scrum Board Commits

Ideation:

This minilab is all about guessing songs. Samples of songs from different genres will be played to participants, requiring them to select from a list of songs, one of which contains the correct answer. Different difficulties can be selected with various complicating factors, such as the nicheness of the artist, minor distortions to the song, or only shorter snippets being played. Alternatively, the auditory experience could be entirely foregone, and participants would have to guess the song and/or complete lyrics after only being given the lyrics in writing.


Sprint 4 Week 7 and 8

Week 7 and 8Week 7 Review Video
Week 7 Review Ticket
Job Person Assigned Commits
Scrum Master, ASCII to unicode Riya Link to Scrumboard with Issues
Link to Scrumboard with Issues
Pair Journal activities + Color Code Bria and Riya Bria and Riya Pair Journal
beginnings of cc working
color code working!
Unicode

Pair Journal activities + Logic Gates Sreeja and Val Valerie & Sreeja Pair Journal
Signed Addition
Unsigned Addition
Logic Gates

Multiply and Divide by 2 Bria Shift Done



Sprint 3 Week 5 and 6

Week 5 and 6
Job Person Assigned Commits
Scrum Master Riya Link to Scrumboard with Issues
Pair Journal activities + greyscale, manipulating images Bria and Riya Pair journal for this week with TPT activities
Working Grayscale OnClick
Greyscale fully fixed + Invert fixed
Text Written on Image Plus Image Manipulation (Enhanced Filter)

Pair Journal activities + New documentation, + Backend, text on images, Big O notation notes Sreeja and Val Pair journal for this week with TPT activities
Documentation Assignment
Val's Spongebob IP address Image manipulation
Python Pillow
Big O Notation Notes
Base RGB working and Base64 research Bria, Sreeja RGB working!
Base 64 Research


Sprint 2 Week 3 and 4`

Week 3: Prototype Layout
Job Person Assigned Commits
Team Designer/Coder Pair Bria and Riya Animation - Test musical knowledge
Added buttons and multiple choice option in game for genre
Added menu
added instructions on block strip in game and removed background
added spookgoose and JS functionality when images are clicked
new background design!
gallery strip
song bank and redirect feature!
Team Designer/Coder Pair Val and Sreeja Embeded content on the mini labs page and added table
Embeds of the brainwrite, etc
Edded the navigation bar to the minilabs.html tab
100 songs list
Individual Coding Bria, Riya, Sreeja, Val Geese
Binary: hackathon images added
Binary: lightbulb
Binary: ASCII Added

Sprint 1 Week 1 and 2

Week 1
Job Person Assigned Commits
Scrum Master Riya Link to Scrumboard with Issues
Designer Bria and Riya Renamed navbar options (about us, game, home project)
Wireframes
Bootstrap Dropdowns in Navbar

Technical Lead Sreeja TPT - Poway Restaurants Brainwrite
Shared Google Drive
Brainwrite

Developers Bria and Valerie Greet function integrated
Video Journal Integration


Flask Portfolio Starter

Runtime link: https://portfolio.nighthawkcodingsociety.com/

Idea

Starter code should be fun and practical.

Visual thoughts

Organize with Bootstrap menu

Add some color and fun through VANTA Visuals (birds, halo, solar, net)

Show some practical and fun links (hrefs) like Twitter, Git, Youtube

Show project specific links (hrefs) per page

Implementation progress (August 13th, 2021)

Project entry point is main.py, this enables Flask Web App and provides capability to renders templates (HTML files)

The main.py is the Web Server Gateway Interface, essentially it contains a HTTP route and HTML file relationship. The Python code constructs WSGI relationships for index, kangaroos, walruses, and hawkers.

The project structure contains many directories and files. The template directory (containing html files) and static directory (containing js files) are common standards for HTML coding. Static files can be pictures and videos, in this project they are mostly javascript backgrounds.

WSGI templates: index.html, kangaroos.html, ... are aligned with routes in main.py.

Other templates support WSGI templates. The base.html template contains common Head, Style, Body, Script definitions. WSGI templates often "include" or "extend" these templates. This is a way to reuse code.

The VANTA javascript statics (backgrounds) are shown and defaulted in base.html (birds), but are block replaced as needed in other templates (solar, net, ...)

The Bootstrap Navbar code is in navbar.html. The base.html code includes navbar.html. The WSGI html files extend base.html files. This is a process of management and correlation to optimize code management. For instance, if the menu changes discovery of navbar.html is easy, one change reflects on all WSGI html files.

Jinja2 variables usage is to isolate data and allow redefinitions of attributes in templates. Observe "{% set variable = %}" syntax for definition and "{{ variable }}" for reference.

The base.html uses combination of Bootstrap grid styling and custom CSS styling. Grid styling in observe with the "" markers. A Bootstrap Grid has a width of 12, thus four "Col-3" markers could fit on a Grid row.

A key purpose of this project is to embed links to other content. The "href=" definition embeds hyperlinks into the rendered HTML. The base.html file shows usage of "href={{github}}", the "{{github}}" is a Jinja2 variable. Jinja2 variables are pre-processed by Python, a variable swap with value, before being sent to the browser.

IDE management (things that happened beyond plan)

Recall on ".gitignore" solution to the pains of temporary files. Start a ".gitignore" and avoid promoting temporary files to Git, for instance IDE xml files.

A project needs to establish a "requirements.txt" to keep track of Python packages used by the project. This help in other IDEs and Deployment. IntelliJ has menu Tool -> Sync Python Requirements to start file.

-------------------

Ideation Begins Here:

This minilab is all about guessing songs. Samples of songs from different genres will be played to participants, requiring them to select from a list of songs, one of which contains the correct answer. Different difficulties can be selected with various complicating factors, such as the nicheness of the artist, minor distortions to the song, or only shorter snippets being played. Alternatively, the auditory experience could be entirely foregone, and participants would have to guess the song and/or complete lyrics after only being given the lyrics in writing.