Well, my friends, that is it for this course, we have built our application, we have deployed it,
and now all of your friends or whoever else can install and run this by executing that simple NPCs book
or whatever you called it, package, they can run that very easily on their own machine and see exactly
what you've done here.
At this point in time.
I kind of consider the course to be over, but there are definitely some extra areas where we might
decide to put in an extra little bit of effort.
So in this video, I just want to quickly go over a couple of items that are a little bit awkward right
now or some areas that we could definitely improve the application.
OK, so a couple of different things here, the first thing I recommend you try doing is making a very
small change to the project.
This could be just adding in some extra text or really anything inside of, say, the project alone.
You could also try maybe adding in some more descriptive help information to our server command.
At any rate, try making a change to the project and then republish it by running, learn to publish
again.
When you do that, you might run into an issue or two when you try to see the updated changes.
When you run NPCs guestbook again, you might not actually see your changes appear at all, but recommend
you do a little bit of research into that and try to figure out why that is.
Next up right now, we are writing all of our different cells into a JSON file, which definitely works
out just fine, but it's kind of hard for users to take that JSON file.
Open it up and have some idea of what's going on inside of it.
So maybe one way to kind of improve that user experience would be to serialize all of our cells in some
slightly different fashion.
So here's one idea, one little prototype I put together to pull it onto the screen really quickly.
So this is a notebook file, essentially very similar to the current JSON that we are writing out into
a file right now.
Inside of here, you'll notice that I've got some amount of a tech cell, then a code cell and then
another code cell down here.
Every single one of these cells has a little barrier or breaker between each of them.
It's a comment that says text and it has the ID of that particular cell.
So whenever I try to load up some contents of a notebook file and display to the user, I am parsing
the contents of this file, finding these different comments, extracting the IDs right there, and
then getting all this content and serving up as a Texel and then a code cell and then another code cell
down here.
So maybe try giving that a shot, try serializing all of this written cell contents into a real JavaScript
file, that it can actually potentially be executed directly by a user.
Next up, something that's a little bit smaller, but something that just bugs me a little bit right
now, whenever a user adds in a code cell, the code cell is always created with a fixed height.
And that is true even if a user adds in some amount of code to it, they're just adding one line of
code like so and then refresh the page.
That's a lot of vertical space being eaten up by just a tiny bit of code.
Actually, a user can very easily kind of resize this thing, but it would be a little bit nicer if
maybe we dynamically resize the ED on our own based upon how much code a user writes inside of here.
Don't leave that to you to try to figure out how to approach that.
And then finally, something that I mentioned a little bit earlier, whenever a user creates a new notebook,
we start off with an empty screen.
That's not super helpful.
I think it might be a little bit better if we instead show some kind of intro screen or something,
some kind of pre-built notebook that it clearly explains to a user what is going on.
Let me show you my attempt at that.
I'm going to run another copy of our book.
And so I'm going to do daybook at latest here.
I forgot the Derb command again, let me add in that, sir.
There we go.
And now if I go back over and refresh, so here's kind of my attempt at putting in some kind of default
content, I've got some Dotan here just to describe to a user what's going on.
I've got some sample code and then another little bit of sample code down here as well.
So adding in some stuff like this to show to a user by default, if they are trying to create a brand
new notebook, this goes a really long way because it helps them understand what this tool is all about.
OK, so that's pretty much it, some additional ways to expand this application in a very small way,
just make it a little bit easier to use and I'm going to leave all these different tasks up to you.
These are your things.
We're not going to go for solution in this course is up to you to figure out a good way to put these
things together.
Having said that, that is pretty much it for this course in general.
I hope you enjoyed this application.
I hope you enjoyed the course overall.
This has been a lot of fun for me in particular.
I really enjoyed this application and I'm really happy with how it came together.
I hope you enjoyed it as well.
And I hope to see you again at some point in time in the future.