{"id":21522403,"url":"https://github.com/teddyoweh/beardb","last_synced_at":"2025-04-09T22:24:32.894Z","repository":{"id":61959668,"uuid":"555168436","full_name":"teddyoweh/Beardb","owner":"teddyoweh","description":"Database system utilizes AES encryption for JSON data, providing secure and easy remote access, management, and deployment.","archived":false,"fork":false,"pushed_at":"2023-03-19T03:45:30.000Z","size":232,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-22T04:17:07.317Z","etag":null,"topics":["beardb","database","json"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/Beardb/","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/teddyoweh.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":"2022-10-21T04:11:19.000Z","updated_at":"2025-02-11T13:42:16.000Z","dependencies_parsed_at":"2024-11-24T02:00:21.200Z","dependency_job_id":null,"html_url":"https://github.com/teddyoweh/Beardb","commit_stats":{"total_commits":32,"total_committers":1,"mean_commits":32.0,"dds":0.0,"last_synced_commit":"18bd2431b669df91d0f4ac4d995f1f07a1f5a7c4"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teddyoweh%2FBeardb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teddyoweh%2FBeardb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teddyoweh%2FBeardb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teddyoweh%2FBeardb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teddyoweh","download_url":"https://codeload.github.com/teddyoweh/Beardb/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248121159,"owners_count":21051088,"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":["beardb","database","json"],"created_at":"2024-11-24T01:10:23.067Z","updated_at":"2025-04-09T22:24:32.872Z","avatar_url":"https://github.com/teddyoweh.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![logo](https://www.beardb.net/assets/logo.d0f8a85f.png)\n# bearDB\nDatabase system implementing AES encrypted versions JSON of data. Easy to access, manage and deploy remotely\n\n[Web Documentation](https://beardb.net)\n\n ## Database Architecture\n \n ```\nProject\n  -Database\n    -Bucket\n       -Data\n ```\n## Outline\n- [Install Libraries](#install-libraries)\n- [Import Libraries](#import-libraries)\n- [Initialize Project](#initialize-project)\n- [Insert Data into Bucket](#insert-data-into-bucket)\n- [Fetch Data From ID](#fetch-data-from-id)\n- [Fetch Data From Query](#fetch-data-from-query)\n- [Updata Data in Bucket From Query](#updata-data-in-bucket-from-query)\n- [Update Data From Bucket From ID](#update-data-from-bucket-from-id)\n- [Delete Data From Bucket From Query](#delete-data-from-bucket-from-query)\n- [Working With BeardbAPI](#working-with-beardbapi)\n\n### Install Libraries\n```sh\n$ python3 -m pip install bearDB\n```\n\n#### Import Libraries\n```py\nfrom beardb import Beardb\nfrom beardb import Bucket\n```\n#### Initialize Project\n```py\n\nproject = Beardb('projectname')\nproject.load_database('class') \n```\n#### Initialize Bucket(DataBase File)\n\n```py\nusers = Bucket(project=project, bucket_name='users') # Project variable defined in the initialization \n```\n\n#### Insert Data into Bucket\n```py\ndata = {\n       'name':'Teddy Oweh',\n       'Random Data':'Golf'\n}\nusers.insert(data=data)\n \n```\n \n \n\n#### Fetch Data From ID\n```py\n\nuserinfo = users.fetchbyID(id=\"ae0ca44e-5301-11ed-8d24-a6bd5a94b3a6\")\n\n```\n\n\n#### Fetch Data From Query\n```py\nquery= {\n       'name':'Teddy Oweh',\n       'Random Data':'Golf'\n}\nuserinfo = users.fetchData(query=query)\n\n```\n\n#### Updata Data in Bucket From Query\n```py\nquery= {\n       'name':'Teddy Oweh',\n       'Random Data':'Golf'\n}\nnewdata = {\n       'name':'Teddy Oweh',\n       'Random Data':'Ping Pong',\n       'Added Data':'College'\n       \n}\n\nusers.update(query=query,data=newdata)\n\n```\n\n#### Update Data From Bucket From ID\n```py\n  \nnewdata = {\n       'name':'Teddy Oweh',\n       'Random Data':'Ping Pong',\n       'Added Data':'College'\n       \n}\n\nusers.updatebyId(id='ae0ca44e-5301-11ed-8d24-a6bd5a94b3a6',data=newdata})\n```\n\n#### Delete Data From Bucket From Query\n\n```py\nquery= {\n       'name':'Teddy Oweh',\n       'Random Data':'Golf'\n}\n \n\nusers.delete(query=query})\n \n```\n#### Delete Data From Bucket From ID\n\n```py\n\nusers.deletebyId(id=\"ae0ca44e-5301-11ed-8d24-a6bd5a94b3a6\")\n\n\n### Test Code\n```py\nbeardb_ = Beardb('projects')\nbeardb_.load_database('computers')\ncomputers=Bucket(beardb_,'computers')\ncomputers.insert({'model':'lenovo','ram':'8gb','hdd':'1tb','processor':'i5'})\n\n\n```\n## Working with BeardbAPI\n\nIn Order to communicate with the microservice [beardbAPI](https://github.com/teddyoweh/beardb-api) deploys when launched. This client Library consumes APIs effienctly and returns the data and status code.\n\n## Outline\n- [Import Library](#importing-library)\n- [Initialize Client Object](#initialize-client-object)\n- [Get User Data](#get-user-data)\n- [Create New Project](#create-new-project)\n- [Create New Database](#create-new-database)\n- [Create New Bucket](#create-new-bucket)\n- [Insert Data](#insert-data)\n- [Fetch Data by Query](#fetch-data-by-query)\n- [Fetch Data by ID](#fetch-data-by-id)\n- [Update Data by Query](#update-data-by-query)\n- [Update Data by ID](#update-data-by-id)\n- [Delete Data by Query](#delete-data-by-query)\n- [Delete Data by ID](#delete-data-by-id)\n- [Get Buckets](#get-buckets)\n- [Get Databases](#get-databases)\n- [Get Projects](#get-projects)\n\n\n### Importing Library\n```py\nfrom beardb import Client\n```\n\n### Initialize Client Object\nWhenever a new user is created, is always returns the secret to be able to access the data.\n\n```py\nhost='127.0.0.1'\nport=5555\nemail='teddyoweh@gmail.com'\nsecret='3687065edf2fdc64bbeb8cdac409ac352fdb65f01423159842d19283309cb70c'\nclient = Client(\n                host=host,\n                port=port,\n                email=email,\n                secret=secret\n              )           \n```\n\n### Get User Data\n```py\ncient.mydata()\n```\n\n### Create New User\n```py\nemail='teddyoweh@gmail.com'\npassword='myrealpassword'\nfullname='Teddy Oweh'\n\nclient.createnewuser(\n                     fullname=fullname\n                     email=email\n                     password=password\n)\n```\n\n### Create New Project\n```py\nproject='TestProject'\nclient.createnewproject(\n                       project=project\n)\n```\n### Create New Database\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nclient.createnewdatabase(\n                         project=project,\n                         database=database\n)   \n```\n\n### Create New Bucket\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\nclient.createnewbucket(\n                         project=project,\n                         database=database,\n                         bucket=bucket\n)   \n```\n### Insert Data\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\ndata={'name':'teddy',age:1}\nclient.insertdata(\n                         project=project,\n                         database=database,\n                         bucket=bucket\n)   \n```\n\n### Fetch Data by Query\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\nquery={'name':'teddy',age:1}\nclient.fetchdata(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         query=query\n)   \n```\n\n### Fetch Data by ID\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\nid='b419840a-7e04-11ed-84f8-324d38bf6d75'\nclient.fetchBYID(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         id=id\n)   \n```\n\n\n### Update Data by Query\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\ndata={'name':'teddy',age:1}\nquery='{name':'teddy'}\nclient.updatedata(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         data=data,\n                         query=query\n)   \n```\n\n\n### Update Data by ID\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\ndata={'name':'teddy',age:1}\nid='b419840a-7e04-11ed-84f8-324d38bf6d75'\nclient.updatebyid(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         data=data,\n                         id=id\n)   \n```\n\n### Delete Data by Query\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\nquery={'name':'teddy',age:1}\nclient.deletedata(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         query=query\n)   \n```\n\n### Delete Data by ID\n```py\nproject='TestProject'\ndatabase='TestDatabase'\nbucket='TestBucket'\nid='b419840a-7e04-11ed-84f8-324d38bf6d75'\nclient.deletebyid(\n                         project=project,\n                         database=database,\n                         bucket=bucket,\n                         id=id\n)   \n```\n\n### Get Buckets\n```py\nclient.getbuckets()\n```\n\n### Get Databases\n```py\nclient.getdatabases()\n```\n\n### Get Projects\n```py\ncient.getprojects()\n```\nLicense\n----\n\nMIT License\n\nCopyright (c) 2022 Teddy Oweh\n\n`teddyoweh built it`\ndi","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteddyoweh%2Fbeardb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteddyoweh%2Fbeardb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteddyoweh%2Fbeardb/lists"}