Comp510 Project 3
GUIs to Display Data Part II
Due: April 7th 2024 by 11:59pm
Summary: lets practice GUIs by visualizing some data and implementing a
CRUD application. This time we will take your experience with project 2
and adjust the program to use a different data store and add an additional
data visualization.
Details:
Create a new project. Make sure it has your name in it somewhere in the
project name.
Your program should have the following functionality
- open the Project3Data.xlsx file and
read it in. (it looks like the Project2 data file with a few changes)
- put the data into an sqlite3 database.
- embed the sqlite3 database into your executable using go:embed
- Create/reuse your project2 GUI using Fyne to
- display a short form of the job data in a list on your application
- When the user selects a list item, display the full record somewhere
in the User Interface.
- Allow the user to delete a record. When the user does so, that
record should be removed from the database.
- and remove it from the list.
- Allow the user to add a record.
- make sure the new record is added to the list and to the database.
- Allow the user to update a record.
- make sure the updated information is reflected in the UI and the
database
- Display an image with the locations of jobs on a map in the image,
use different colored pins based on the number of jobs in that
town/city. (hint - work through the recorded lecture for March 25th to
get a strong hint on this one)
- Build your application into web assembly and include the supporting
files needed to view the program as a web assembly program.
Be sure to include the go.mod file with any external libraries you might
be using (but not the go.sum since that is platform specific)
Create a Readme file which explains to me (someone not involved in your
program)
- Your name
- How do I run the program
- How do I do each of the operations
- A paragraph comparing how easy/hard
this was to do with squlite3 compared to just using excel
- Anything left undone.
Submitting the project.
submit the project by putting it on github and sending me a collaboration
invite. As before.