{"id":49225616,"url":"https://github.com/calesi19/crossdbcrudflow","last_synced_at":"2026-04-24T07:03:51.480Z","repository":{"id":111475963,"uuid":"515445750","full_name":"Calesi19/CrossDBCrudFlow","owner":"Calesi19","description":"Python program lets you connect three different NoSQL databases; DynamoDB, Firestore, and MongoDB. It provides a CRUD interface for all three, and data transfer between them.","archived":false,"fork":false,"pushed_at":"2024-03-08T05:17:57.000Z","size":96,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-10T11:41:52.196Z","etag":null,"topics":["database","dynamodb","firestore","mongodb","nosql","python"],"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/Calesi19.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}},"created_at":"2022-07-19T05:24:10.000Z","updated_at":"2024-02-22T03:50:46.000Z","dependencies_parsed_at":"2024-02-21T20:49:36.258Z","dependency_job_id":null,"html_url":"https://github.com/Calesi19/CrossDBCrudFlow","commit_stats":null,"previous_names":["calesi19/crossdbcrudflow"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Calesi19/CrossDBCrudFlow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Calesi19%2FCrossDBCrudFlow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Calesi19%2FCrossDBCrudFlow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Calesi19%2FCrossDBCrudFlow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Calesi19%2FCrossDBCrudFlow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Calesi19","download_url":"https://codeload.github.com/Calesi19/CrossDBCrudFlow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Calesi19%2FCrossDBCrudFlow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32212812,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T03:15:14.334Z","status":"ssl_error","status_checked_at":"2026-04-24T03:15:11.608Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["database","dynamodb","firestore","mongodb","nosql","python"],"created_at":"2026-04-24T07:03:46.264Z","updated_at":"2026-04-24T07:03:51.465Z","avatar_url":"https://github.com/Calesi19.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![banner](docs/banner.png)\n\n# Overview\n\n\nThis program is CRUD (CREATE, READ, UPDATE and DELETE) interface I made for some noSQL databases. The program allows you to enter data into a database, as well as read from it, update it, and delete from it.\n\nThere are three different databases connected and the user is able to switch out at any moment which database they are manipulating.\n\nI made this program to familiarize myself with how noSQL databases work.\n\nIn the following link, you can find a short video demonstration of the program.\n\n[Software Demo Video](https://youtu.be/y8pfxCFzHF4)\n\n# Cloud Database\n\nFor this program, I'm using Amazon's DynamoDB, Google's Firestore, and MongoDB as my databases.\n\nEach of the databases have their own class. Each class has constructors that import all the necessary libraries and establish the connection with the databases. Each class has methods that allow the user to perform some basic databases like creating, reading, updating, and deleting entries. All of the database classes use the same method names so that Polymorphism can be applied.\n\n# Development Environment\n\nI used Visual Studio Code as my IDE for this program and Python 3.9 as my languange.\n\nThe following are the libraries that are being used in the program:\n* pymongo\n* MongoClient\n* pprint\n* certifi\n* constants\n* firebase_admin\n* boto3\n* requests\n\n# Useful Websites\n\nThe following are some resources that were useful when creating this project:\n* [Firestore Documentation](https://firebase.google.com/docs/firestore/quickstart)\n* [MongoDB Documentation](https://www.mongodb.com/docs/)\n* [DynamoDB Documentation](https://docs.aws.amazon.com/dynamodb/?id=docs_gateway)\n* [Firebase vs MongoDB](https://www.youtube.com/watch?v=f49B0Ez8JkQ)\n* [SQL vs NoSQL](https://www.youtube.com/watch?v=t0GlGbtMTio)\n* [Choosing the best database for your project](https://www.youtube.com/watch?v=cODCpXtPHbQ)\n\n\n# Future Work\n\nSome features that can be added in the future are the following:\n* More NoSQL Databases\n* SQL Databases","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcalesi19%2Fcrossdbcrudflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcalesi19%2Fcrossdbcrudflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcalesi19%2Fcrossdbcrudflow/lists"}