{"id":18479612,"url":"https://github.com/devopsinsiders/pytodobackendmonolith","last_synced_at":"2025-04-08T16:30:35.748Z","repository":{"id":205519520,"uuid":"714408580","full_name":"devopsinsiders/PyTodoBackendMonolith","owner":"devopsinsiders","description":"🐍 PyTodoBackendMonolith 💼repository serves as the backbone for the Todo application's backend, written in Python, embracing a monolithic architecture. It orchestrates data storage, executes business logic, and exposes unified API endpoints to the frontend. With a singular focus, it encapsulates the entire backend functionality,","archived":false,"fork":false,"pushed_at":"2024-06-30T09:13:01.000Z","size":26,"stargazers_count":4,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-07-01T21:11:19.948Z","etag":null,"topics":["api","monolithic","python","todoapp"],"latest_commit_sha":null,"homepage":"https://devopsinsiders.com","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/devopsinsiders.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"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,"publiccode":null,"codemeta":null}},"created_at":"2023-11-04T20:14:12.000Z","updated_at":"2024-07-01T21:12:17.951Z","dependencies_parsed_at":null,"dependency_job_id":"a8d9dc14-631c-4f95-a329-2ecff5d3062b","html_url":"https://github.com/devopsinsiders/PyTodoBackendMonolith","commit_stats":null,"previous_names":["devopsinsiders/todoapp-backend-py","devopsinsiders/pytodobackendmonolith"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devopsinsiders%2FPyTodoBackendMonolith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devopsinsiders%2FPyTodoBackendMonolith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devopsinsiders%2FPyTodoBackendMonolith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devopsinsiders%2FPyTodoBackendMonolith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devopsinsiders","download_url":"https://codeload.github.com/devopsinsiders/PyTodoBackendMonolith/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223335064,"owners_count":17128521,"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","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":["api","monolithic","python","todoapp"],"created_at":"2024-11-06T12:15:39.972Z","updated_at":"2024-11-06T12:15:40.544Z","avatar_url":"https://github.com/devopsinsiders.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Running the Python Application on Azure VM\n\nThis guide will walk you through the process running a Python application using FastAPI, which interacts with a Microsoft SQL Server database using PyODBC.\n\n## Prerequisites\n\nBefore getting started, make sure you have the following prerequisites installed on your system:\n-  source_image_reference = {\n      publisher = \"Canonical\"\n      offer     = \"0001-com-ubuntu-server-focal\"\n      sku       = \"20_04-lts\"\n      version   = \"latest\"\n    }\n- Python\n- pip\n\n## Step 1: Clone the Repository\n\nClone the application's source code from your version control system or download it as a zip archive and extract it to your local machine.\n\n```bash\ngit clone \u003crepository_url\u003e\ncd \u003crepository_directory\u003e\n```\n\n## Step 2: Update Connection String\n\nEdit the `app.py` file to update the `connection_string` variable with the appropriate connection details for your SQL Server database. Update ODBC Version to 17\n\n## Step 3: Run Below Commands to make the application running\n\nTo Run the Application, open a terminal, navigate to the project directory, and run the following command:\n\n```bash\n\nsudo su\napt-get update \u0026\u0026 apt-get install -y unixodbc unixodbc-dev\ncurl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -\ncurl https://packages.microsoft.com/config/debian/10/prod.list \u003e /etc/apt/sources.list.d/mssql-release.list\napt-get update\nACCEPT_EULA=Y apt-get install -y msodbcsql17\npip install -r requirements.txt\nuvicorn app:app --host 0.0.0.0 --port 8000\n```\n\n## Step 4: Access the Application\n\nYour Python application is now running. You can access it by opening a web browser or sending HTTP requests to `http://localhost:8000` or by using VM's Public IP.\n\n## API Endpoints\n\n- `/api/tasks`: List all tasks (GET)\n- `/api/tasks/{task_id}`: Retrieve a single task by ID (GET)\n- `/api/tasks`: Create a new task (POST)\n- `/api/tasks/{task_id}`: Update an existing task by ID (PUT)\n- `/api/tasks/{task_id}`: Delete a task by ID (DELETE)\n\n## Conclusion\n\nYou've successfully run a Python application. Feel free to make changes to the application and deploy it to your preferred environment.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevopsinsiders%2Fpytodobackendmonolith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevopsinsiders%2Fpytodobackendmonolith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevopsinsiders%2Fpytodobackendmonolith/lists"}