{"id":27154371,"url":"https://github.com/mythrantic/vision-ai","last_synced_at":"2026-05-03T01:39:34.565Z","repository":{"id":226279302,"uuid":"768204332","full_name":"mythrantic/vision-ai","owner":"mythrantic","description":"a vision ai with a wide range of object detection and tracking, instance segmentation, image classification and pose estimation tasks","archived":false,"fork":false,"pushed_at":"2025-03-16T13:19:54.000Z","size":8647,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-08T17:51:18.968Z","etag":null,"topics":["ai","ansible","docker-compose","image-classification","instance-segmentation","object-detection","pose-estimation","terraform"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mythrantic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"github":["valiantlynx"],"patreon":"valiantlynx","open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"polar":null,"custom":null}},"created_at":"2024-03-06T16:54:36.000Z","updated_at":"2025-03-16T13:19:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"39eb69fb-82da-4bd5-8e75-566fbd8ec5ad","html_url":"https://github.com/mythrantic/vision-ai","commit_stats":null,"previous_names":["valiantlynx/vision-ai","mythrantic/vision-ai"],"tags_count":0,"template":false,"template_full_name":"mythrantic/python-development-environment","purl":"pkg:github/mythrantic/vision-ai","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mythrantic%2Fvision-ai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mythrantic%2Fvision-ai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mythrantic%2Fvision-ai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mythrantic%2Fvision-ai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mythrantic","download_url":"https://codeload.github.com/mythrantic/vision-ai/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mythrantic%2Fvision-ai/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279012641,"owners_count":26085158,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-12T02:00:06.719Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ansible","docker-compose","image-classification","instance-segmentation","object-detection","pose-estimation","terraform"],"created_at":"2025-04-08T17:33:14.851Z","updated_at":"2025-10-12T19:10:20.810Z","avatar_url":"https://github.com/mythrantic.png","language":"Python","funding_links":["https://github.com/sponsors/valiantlynx","https://patreon.com/valiantlynx"],"categories":[],"sub_categories":[],"readme":"# Python Project Environment Setup Template\r\n\r\nit has docker-compose for development and deploying. it also configured with .devcontainer så you can go into the container and work on it from there. another way is it has python environment using the commands in run.sh or run.bat.\r\n\r\n\r\n# a dev environment for python\r\n\r\n```bash\r\ndocker-compose up --build -d\r\ndocker-compose down\r\n```\r\n\r\n# (Optional) everything after this is optional\r\n# deployment\r\nthere are two ways. one is simpler using azure container. it just deploys the app to your azure account.\r\nthe 2nd option is more heavy duty but comes with more. while the first is just a container. the second one is a full on server. the server is a free tier ec2(if you only have one server).\r\nto choose, its the one in the workflows folder thats active. for azure have the deploy-azure.yml and vision-ai.yml in the folder and the other two in the extra_workflows folder.\r\nfor terraform have the deploy-terraform.yml, detroy.yml and vision-ai.yml in the workflow folder and deploy-azure.yml in the extra_workflows folder\r\n\r\nfor both you need docker hub account\r\n# docker hub \r\ngo to https://hub.docker.com/settings/security and create and copy the token. together with your username go to (your repository)https://github.com/valiantlynx/vision-ai/settings/secrets/actions and make these repository secrets\r\n- DOCKER_HUB_USERNAME = your username\r\n- DOCKER_HUB_PASSWORD = your docker access token\r\n\r\n# azure\r\nits just a github action that uses your dockerfile. \r\ngot to [azure](https://portal.azure.com/#home) and search for `web app for containers`\r\nchoose this:![web app for containers](assets/image.png)\r\n\r\nand then these details:\r\n![basic container](assets/image2.png)\r\n\r\nin the docker section choose what your docker details will be in docker hub. (username/container-name):\r\n![docker details](assets/image3.png)\r\n\r\nleave the rest as they are(yes even deployment can be done later) and review and create.\r\nafter the resource is built go to it then deployment center and choose this config(try to relly on azures auto fill to fill this form if possible):\r\n![config stuff](assets/image4.png)\r\nto remove that error so we can save. we need to set the variables in azure\r\ngot to configurations and edit the two docker stuff that are empty:\r\n![env in azure](assets/image5.png)\r\ngo to general settings tab and turn on SCM basic auth.\r\nsave it and go back to deployment center. your might have to redo some of the former step. then save\r\n\r\n\r\nwe need some env variables for authentication in git hub action. go back to overview and on the top is the option Download publish profile. copy the whole file and lets go to github\r\n\r\nfirst the login stuff. go to (your repository)https://github.com/valiantlynx/vision-ai/settings/secrets/actions and make these repository secrets(you might see two env variables azure made delete them)\r\nif your planing to use azure\r\n- AZUREAPPSERVICE_PUBLISHPROFILE = the thing you downloaded and copied\r\n\r\nnow the next time you commit to there is a succesfull pull or push to the main branch and the docker image is on docker hub then azure will redeploy\r\n\r\nto see the app azure provides a free url something like https://vision-ai.azurewebsites.net/ go there and you might have to wait like 10 min the first time around. or make a commit to main again a couple times\r\n\r\n# terrafrom\r\nthis does alot for and is simpler to set up. \r\n### what you get\r\nsimply put its IaC with terraform, config with ansible, monitoring with prometheus-grafana and service-check with uptime-kuma and container management with portainer.\r\nit all automated as well\r\n## setup\r\nyou need an aws account. in it make an s3 bucket called ´vision-ai´ it can be anything it just has to match with the one in terraform/provider.tf aws. \r\nand lastly access keys, you can get thenm in IAM. just create access key cause we need both the key and the secret\r\n![accesskey](assets/image6.png)\r\n\r\nthe login stuff. go to (your repository)https://github.com/valiantlynx/vision-ai/settings/secrets/actions and make these repository secrets\r\nif your planing to use azure\r\n- AWS_ACCESS_KEY = that you copied\r\n- AWS_SECRET_ACCESS_KEY = the secret you copied\r\n\r\n### this devops sets up everything even ssl. so edit the somain ports and images to your needs\r\nall the files you need to edit are in andible/roles/docker_deploy/files unfortunately for this you need some knowledge(basic is enough) in docker, nginx and certbot. \r\nspecifically, \r\nandible/roles/docker_deploy/files/docker/docker-compose.yml - for ports and which domain you want ssl for and containers. \r\nandible/roles/docker_deploy/files/docker/prometheus.yml - together with the one above for your monitoring needs\r\nandible/roles/docker_deploy/files/nginx/http.conf - both this and below need to be edited on each edit. for http edits. and where the containers are accessed. reverse proxy\r\nandible/roles/docker_deploy/files/nginx/https.conf - both this and above need to be edited on each edit. for https edits. and where the containers are accessed. reverse proxy\r\n\r\nyou can look at my git is some of my repos logs to get an idea of how i do or contact me for help.\r\n\r\nnow the next time you commit to there is a succesfull pull or push to the main branch and the docker image is on docker hub then terraform with deploy the infra and ansible will configure everything all the way to ssl.\r\nthis means the first time its building it might fail. that cause the domains that certbot is trying to get ssl for might not be pointing to the newly created ec2. you need to go to your dns and point it to the correct ip.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmythrantic%2Fvision-ai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmythrantic%2Fvision-ai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmythrantic%2Fvision-ai/lists"}