Developing a small web application

Assignment Help Marketing Research
Reference no: EM132190749

Project

For your course project, you will be responsible for developing a small web application, using the knowledge you gained from the course so far. You can choose one of the following options, with more details below on each option:

1. Book Catalogue ­ A web application that helps a user record details about the books they own. The application allows a user to login and type in an ISBN, which will instigate a search using the Google Books API. The server will save some of the information to a database, which will be used to show the user their list of books.

2. A Blogging Application ­ A web application that allows a user to manage their own blog. A blog is simply a collection of "posts" (textual content), typically displayed in reverse chronological order.

3. Custom ­ If you have an idea for your own project, thats great! As long as it meets the criteria listed below, there should be no problem. However, you will need to pass this idea by me, and have my approval before starting.

Useful Reminders

1. Read the project descriptions over a few times. At least twice. It always helps to have a clear picture of the overall assignment when understanding how to build a solution.

2. Think about the problem for a while, and even try writing or drawing a solution using pencil and paper or a whiteboard.

3. Make sure to put in a lot of effort to think about the ‘model', or the database schema, before you start working on the code. What is it that you are trying to model? What relationships and properties do you need to model?

Project Option 1: Book Catalogue Details:

The purpose of this web application is to provide the end user with a fuctional interface that will allow the user to keep track of the books they own. The primary screen, after logging in, will show the user the books they have saved so far. Initially, this list will be blank. Users are also presented a form to search for books by ISBN. Once filled out, the application will use the Google Book API to search for the book via ISBN.

For now, we only need to show and store for the user the title, the author, page count and average rating. If there is any error in processing the JSON, you should return an appropriate error to the user. Sometimes, the API will come back with multiple results. For now, you can use the first result that comes back.

The application should also allow the deletion of books. This will allow the user to delete a book from their list (either because they made a mistake, or they sold the book, etc).

Extra Credit:

1. Extend the application to support multiple users: You do not have to worry about supporting a full registration workflow. Use a table in the database to store users and their credentials, and use this table to support logins from many accounts. Please note: storing passwords that are unencrypted is a bad idea, security wise. However, there is no need for us to delve into that.

2. Save links to thumbnails: Use the JSON data to save the URL of a thumbnail, and show this thumbnail when listing out a user's set of books

3. Handling multiple responses from Google: If the Google API gives you many responses for a single ISBN number, show the user the list of results and allow them to choose which one is the one they want to add to their list

4. Allow searching by title: Figure out how to use the Google API to search by title.

Project Option 2: Blog Application Details

The purpose of this web application is to give a user the ability to run their own blog. A blog is just a series of posts made by an author. Each post has a title, a published date, an author, and textual (HTML) content. When first loading the application at the root URL, the user should be presented with a list of available posts listed in reverse chronological order (newest posts first). The application should allow a user to login via the ‘/login' URL, which gives that user the ability to make changes to the blog.

After logging in, the user should be sent to the ‘/dashboard' page, which presents the user with an interface that:

1. Shows a list of their posts in a table. This list just shows the title of the post, with buttons labeled ‘Edit' and ‘Delete'. This edit button will take the user to a page that allows them to update the post. The delete button will simply delete that post.

2. Allows the user to add a new post (This can be done either directly on the dashboard page or on a new page).

Extra Credit

1. Extend the application to support multiple users: You do not have to worry about supporting a full registration workflow. Use a table in the database to store users and their credentials, and use this table to support logins from many accounts. Please note: storing passwords that are unencrypted is a bad idea, security wise. However, there is no need for us to delve into that.

2. Perma­links: Most blogs have a feature called ‘permalinks', which is a unique URL for every blog post. Construct URLs for each blog post, and display this perma­link for each blog post.

3. Allow a user to ‘un­publish' a post: Lets say the user would like to make changes to a post but would like for the post to not show up on the website. Create another button called ‘Unpublish', which keeps the post in the database but stops it from being published on the website.

4. Add a category feature: Posts may have an associated ‘category' name. Allow the user to set up their own list of categories. Update the ‘add' and ‘edit' forms for posts to allow the user to create posts in that category. When displaying the post, make sure to display the category as a link; this link should go to a view that shows only posts in that category

Project Option 3: Custom Details

You can work on your own idea for your own project, as long as it meets certain criteria:

1. You must pass this idea by me, and have my approval over email before starting. Please do this as early as you can, as to maximize the time you have to work on the project.

2. The project must be an web based application written in Flask.

3. The project must include a database model.

4. The project should incorporate as much knowledge from the class as possible. Downloading data from the web, parsing HTML using BeautifulSoup, regular expressions, etc are all things you can incorporate into your project

Requirements

1. You need to make sure to deliver all needed files in a github repository.

2. I should be able to checkout your project repository, run python app.py and expect a working version of your project. Opening a web browser to the application main URL should have it bring up your project.
a. For extra credit, you can host your project on PythonAnywhere (which is covered in Week 15 of the lectures)

3. Please include a README file with a few paragraph explaining your solution, how it works and details about your model.

Reference no: EM132190749

Questions Cloud

Post your general impressions of the artifact : Visit the "Bayeux Tapestry" site. (During class, we will see a short film that used the tapestry as a historical source.) Post your general impressions.
Description of nature of contract for goods or services : A description of the nature of the contract for goods or services.
The c-ferst program of community : Taking a look at Essex County as a whole for my local area, the top pollutants found were ozone pollution or smog and fine particulate matter.
How much will walters communication capitalize : In 2017, Walters Communication had the $72,000 in marketing and sales for the new cable system. How much will Walters Communication capitalize
Developing a small web application : IS211 Course Project - Developing a small web application, using the knowledge you gained from the course so far. You can choose one of the options
Analyze the relative stability and power of each monarchy : Analyze the relative stability and power of each monarchy that developed in France, England, and Germany during this time period.
Discussion about the chemical pollution : In the west when one buys a property with a creek, you cannot use that creek for irrigation. In other states the water is sold when the land is sold.
What were total production costs for the month : The Completion Department transferred 8,000 units to the finished goods storeroom during a month. What were total production costs for the month
Determine plank constant from the photoelectric effect : The objective of the lab was to determine plank's constant from the photoelectric effect. A voltmeter was used in this experiment to measure volts.

Reviews

Write a Review

Marketing Research Questions & Answers

  What type of problem are you investigating

The user should be able to select a character and left-click the mouse at a location to have the character move to that new location.

  Identify the literary or art form in modern times

Identify the work that you have chosen, and describe the way in which the composition expresses the specific qualities of the Classical music style.

  Discuss the market research plans

Show how the research answer will impact upon the business decision. Discuss how the business decision will affect the success of the business.

  Explain the role of the jobs-to-be-done framework

Explain what you learned that adds new understanding to product development and/or product management (this week's topics); explain the role of the jobs-to-be-done framework and how it can be used for segmentation and targeting (in the "science of ..

  Matching structure with strategy i am working on matching

i am working on matching structure with strategy and the question is ltbrgt ltbrgteven in an industry that is not so

  Discuss what new things you have learned form the reading

Discuss what new things you have learned form the reading and how you might apply the use of these tools in your work/school/home.

  How to align organizational structure with the work process

Select an organization of your choice and examine the structure. Then, briefly describe the type of structure the organization has and explain how it is effective in accomplishing the organization's goals. Discuss the advantages and disadvantages ..

  What is the essence of marketing

What acronym refers to the ratio of money generated in sales by a marketing campaign relative to the amount of money invested?

  How does nike promote value in their custom tennis shoes

Marketing is about the creation and exchange of value. The consumer and business user determine what really constitutes value. Marketing and sales personnel facilitate the exchange. marketing follows and is congruent with organizational strateg..

  Conduct a brand and market audit

MKT30017 - Branding, Innovation and Design - In engaging in this task, you should incorporate and draw upon the collective findings uncovered through the analysis of assessment one and positioning of the Apple Car in the market.

  Producing and marketing a product without regard to ethical

Producing and marketing a product without regard to ethical, legal, and social considerations is detrimental to the overall success of any company.

  The product life cycle of your clients three top sellers

Evaluate key pricing considerations and strategies relative to the product life cycle of your client's three (3) top sellers.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd