cadin / panels

Build interactive comics for the Playdate console.
Creative Commons Attribution 4.0 International
158 stars 8 forks source link

yet another getting started guide #7

Closed headwinds closed 1 year ago

headwinds commented 1 year ago

I'd like to contribute yet another hand-holding guide. I found your guide excellent but struggled because I haven't used sub modules before and needed to break it down a bit more. Once I got it working, I thought I could share what I did exactly. This is what I'd like to contribute:

Step by Step Guide with Nova & the Playdate SDK

The goal is to create your own comic using the template repo and experience it running in the Playdate Simulator via the Playdate SDK. The main repo is used as submodule within your template project.

  1. Open a terminal and clone the template repo - click Use this template and then Create a new repository under your GitHub profile
  2. cd into this new repo panels > source > libraries - go ahead and delete the existing panels folder
  3. Clone the main repo into this libraries folder so that you have a new panels folder and can use it as submodule
  4. from within this libraries directory: git submodule init which will initialize the panels folder

At this point, the template project is ready to be built with Nova using the Playdate extension task.

Within Nova, open your panels template project. Add the Playdate Simulator as new task and configure it.

Screenshot 2023-08-11 at 9 30 14 AM

Then click the hammer to build the project and it should build successfully.

Screenshot 2023-08-11 at 9 54 28 AM

Finally, click the Play button to see it in the Playdate simulator.

Screenshot 2023-08-11 at 9 30 52 AM
cadin commented 1 year ago

Thanks for this.

I'm trying to leave out directions for any specific tool, especially platform-specific ones like Nova. I don't want to mislead people into thinking Panels requires specific tooling (and I also don't want to have to try to field tool-related support questions).

Adding clearer instructions to the submodules portion is a good idea (though that can vary depending on git client vs cli, etc). I think if you're using the terminal and modern git the simplest method would be
git clone --recurse-submodules https://github.com/cadin/panels-project-template.git
(Sub in your repo if you copied the template).

I think it might make sense to create a separate page under Get Started that details in clearer language how to deal with the submodules bit. Then link to that from the submodules step on the main getting started page. What do you think about that?

If you're interesting in writing up a detailed guide to working with Panels in Nova on your devblog or elsewhere, I'd be happy to link to that from the main docs.

headwinds commented 1 year ago

this makes a lot of sense - I'm going to close this and simply link to the closed issue via a larger Dev.to blog post about what I'm learning as a Lua n00b. Once published it could be the first of a potential new Community links section of your readme or wiki.

Currently, I'm finding the tooling challenging for VS Code and noticed you also a published a template to the help with that. With Nova, I was up and running within 10 mins but have now spent about an hour failing to do the same with my preferred editor VS Code so it feels like there is need of more documentation on that front.

cadin commented 1 year ago

That sounds great. Let me know when your post is done so I can link it.

Nova is definitely a smoother experience (of course). It took me a while to figure out how to get VS Code set up. I think there is a Playdate extension now that makes things easier(?). At the time I was starting the only extension I could find didn't seem to work.

But yeah, all of that is more "Playdate development" than "Panels development". Maybe it's dumb to try to separate the two, but my hope is that there are enough Playdate dev resources out there to help folks with that bit.