Git Product home page Git Product logo

fooodiyapp's Introduction

This is where your group will put your project, the Next Big Thing in apps!

General Requirements

You must implement the project in Swift, using SwiftUI for the View. You may not use external libraries or frameworks without prior approval. Firebase is an approved framework. If you wish to use functionality from UIKit or other built-in frameworks, you may, but the bulk of your interface must still be in SwiftUI. In particular, for UIKit, you should limit yourselves to the bare minimum functionality needed. When in doubt, ask.

Your project must go beyond the topics we covered in class in some significant way, and must somehow take advantage of features of a mobile device (mobility, camera, motion sensors, etc.).

Deliverables

You will need to submit the following things:

  1. a project proposal
  2. Milestone 1
  3. Milestone 2
  4. Milestone 3
  5. Final project, which must include
    • a working Xcode project
    • a 5-10 page report
    • a short (about 5 minutes) demonstration video

See below for details about these.

How to Submit

Your project will be a series of commits, starting with a project proposal. This proposal can be in markdown, plain text, or PDF, and should have an obvious name. In addition, you should include an Xcode project, as with the solo projects.

We will discuss your proposal with you, so that it is appropriately scoped for difficulty (not too easy, nor too hard), and has clearly-identified milestones, minimal goals, and stretch goals. There will be three milestone submissions before the final submission.

The final submission must include the following:

  • an Xcode project that builds and runs on the iPhone 12 simulator
  • a 5-10 page (roughtly 2500 to 5000 words) report describing not just your app, but your design process, and how your ideas evolved over the course of the project
  • a 5 minute screen recording of your app, including audio description; several apps will be selected for in-class demonstration based on these

Format of the Proposal

Your proposal should have the following format:

  • Project title
  • List of team members
  • General description of the app
  • Minimal Goals -- these are things your app must do
  • Stretch Goals -- these are additional functionality that might earn extra points
  • Project timeline, including development milestones

We have provided a sample proposal on ELMS that corresponds to the in-class exercises. Your proposal will obviously have to include functionality beyond what we will do for these exercises.

Format of the Milestones

Your milestone document should be named either MilestoneX.txt, MilestoneX.md, or MilestoneX.pdf, where X is the milestone number (1, 2, or 3). It must be committed to your repository and pushed to the server.

In this, list what you have accomplished, and if you did not meet your proposed target for the milestone, provide an updated schedule illustrating how you will complete the project on time. Feel free to include any design changes or lessons learned. These will be useful when putting together your final report.

Your code should also be up-to-date on the server, so that we can verify that actual progress is being made. It does not need to be completely functional.

Please note that any real-world project is likely to require at least slight schedule adjustments. Don't panic if you didn't meet all of your initial milestone goals! The purpose of the milestones is for us to check on your progress and provide feedback as needed.

Format of the Final Report

The final report for your project should be titled Final.txt, Final.md, or Final.pdf. It should have the following sections:

  • Title
  • Overview describing the motivation and high-level concept of the app
  • List of goals, where each is described, not just a bullet list
  • Walk-through of user interactions, including screen captures (the simulator has a built-in screenshot button)
  • Discussion of the development process, including when/how tasks were completed; any setbacks encountered; decisions and changes made to the initial plan; and what you learned, both about the development process and the features you used that were not covered in class
  • Potential future directions

fooodiyapp's People

Contributors

mamarsh avatar anant108 avatar

Watchers

 avatar

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.