Local Anvil Development Options/How Do You Develop on Anvil

Forgive me if this is duplicated somewhere but I didn’t really see this in the forums anywhere and its kind of going off the GitHub doc stuff.

So I currently follow the dev/prod example in the docs with github. My question is if I wanted to do local development and test things, etc then push up, etc is that even an option?

Do most people just use the anvil IDE, etc? I know I’ve heard from some here already on their testing stuff which I’m working on setting up soon just trying to figure this out. Anvil is super easy for me with little to no frontend experience but the DevOps guy in me wants to automate a bunch of stuff here and get tests setup etc and wasn’t sure if I can realistically do that in the current github or if I have to setup another one something for ties to github actions etc.

I also have some future cases here soon using anvil uplink with pi’s for sensor data from snake rooms etc so I will want to tie some tests in for those things as well so just thinking now about how all this might work together.

Sorry if none of this makes sense but I’m just curious what people’s normal development process is here cause I love anvil and its making my life super easy to build out this app fast, I just want to ensure I put the proper things in place like logging (already another discussion on this), and other requirements I see needing to be there for this to be successful as a one man show running it and not breaking it :slight_smile:

Are you referring to these docs?

I think that is what is covered under “general workflow” in those docs. For example:

  • Work on ‘App Dev’ either in the browser or locally
  • Make a note of any changes you make to your Data Table schema
  • When ‘App Dev’ works, pull it to your local repository
  • Now you’re ready to push to Production
  • Reflect any changes made to your Data Tables schema in ‘App Prod’
  • Push to Prod
    • Refresh ‘App Prod’ in your Browser, and you’ll see it’s been updated for the changes you made to App Dev.

I think folks have lots of different ways of dealing with all of this depending on their specific needs. If you search for “dev prod” in the forum you should find many several posts on the topic. That should give you an idea of what others are doing and what may potentially fit your use case. Here are a bunch of those posts:

https://anvil.works/forum/search?q=dev%20prod

1 Like

Not exactly, I’m already doing this now for pushing up my changes and keeping them in sync. I was more curious ok can I have my own github repo with github actions running before it updates, etc which I’m guessing no.

I guess I’m trying to fit typical software/development processes into a system that doesn’t really work the same way. I already read the docs and forum posts before I posted this.

I was more curious if anyone actually develops locally and how that could actually look, do you just use uplink to test the server code to datatables, then other test options people have made for clients?

Maybe I’m not asking my question properly but I’m just used to doing normal python development workflows in github with my tests and other stuff as a part of my workflow in github actions before it ever makes it to my code that is “live”.

My concern is the more I build this out and all the other pieces I am planning (snake sale store, uplink for raspberry pi temp readings, etc.) I wanted to have some automated mechanism or better way of this instead of it being in just some git repo I don’t really have as much control over.

I guess I’ll try to find a process that works for me, if anyone has any existing processes you use I’m all ears.

1 Like