-: Welcome to the last video of this section.
so we finished the Mapty project,
but to finish the section,
I just wanted to quickly address some additional features
that we could have implemented in this application.
And basically, I'm gonna leave them for you as challenges
if you'd like to spend some more time on this project.
And the first couple of features that you could implement
would be the ability to edit any workout
or to delete a workout
or also to delete all the workouts right from
the user interface.
So this is something that you can do
in most Web applications.
And so therefore, you could also add that ability here.
We didn't implement this together in this application
because I just wanted to keep things more simple here
and not to create a super huge application
that would take ages to build.
Now next up, you could add the ability
to sort workouts by a certain field,
for example, by distance or by duration.
And this one would be probably a little bit tricky
to implement, but you can take inspiration
from the Bankist application where I believe
we did something like this.
Now, another thing that you could do is to actually rebuild
the Running and Cycling objects that are coming
from Local storage.
So basically you could fix that problem that we run into
by the end of the last lecture
where the objects coming from local storage
were now regular objects
and no longer running and cycling objects.
So this would be a nice challenge for you to do
and to basically fix that error.
Another nice touch that you could use to this application,
is to create more realistic error messages
and confirmation messages.
So we just used a simple alert window
to display an error message when the input data
was not valid.
Right?
But that's kind of ugly and not really real world like.
And so therefore,
you could implement more realistic messages
and maybe you could even have them fade out
after some time.
So that would be a nice use case of some of the things
that we already learned before.
Okay, so these are the more easier ones.
Let's take a look at a couple of hard ones.
So first, you could add the ability to position the map
so that it shows all the workouts.
So let's say that you went to a different country
and did some workouts there.
And so your workouts are all over the map.
And so therefore, it would be nice to have a button
which shows all the workouts on the map at once.
However, to solve this problem,
you would probably have to do a lot of Googling
about the Leaflet library
and dig deep into the documentation.
Because of course, this functionality would depend entirely
on the Leaflet library.
Right?
Okay, but still, this would be actually nice to see,
but let's see another one,
which would probably be even harder,
which is the ability to draw lines and shapes
instead of simply having a point for each workout.
So this would be a real challenge
and maybe it wouldn't be such a good idea
to actually try this one out.
But still, I wanted to just leave this here
as a potential improvement to this application.
So when you go on a run, of course, the run is not just
on a point, but it's more like on a line
or maybe like a circular shape or something like that.
And so it would be nice to have that
instead of just a point.
And finally, I have two more challenges
to improve this project that you could only implement
after the next section.
But let me still show them here.
So you could Geocode location from the coordinates.
So you could use a third party API
to plug in the coordinates,
and that would then give you back the real location.
So, for example, you could then call the run,
a "Run in Faro, Portugal"
Because the third party Web API
would give you that location data.
So a description of the location,
not just the raw coordinates.
And then besides that, you could also use a third party API
to display the weather for the work out time and place.
But again, these two you can maybe tackle after
the end of the next section,
if you feel like improving this project even more.
All right.
So it would be really great to see some of these features
actually implemented by you.
And if you do one of them or even more,
then make sure to share your results in the course Q&A
or even on Twitter.
And there you can use one of the hashtags
that I mentioned earlier.
But anyway, that's it for this video and for the section
and for this project.
So once again, congratulations
for reaching the end of this project
and even more for sticking with this course
all the way up to this point.
What an amazing achievement, really.
I cannot overstate this, and I'm really happy for you
and for all your progress.
And now just keep going, because the next section
is actually one of the most important ones
in the whole course.
So I hope to see you there very soon.