AsteroidDB
Hi Koders!
I want to introduce you my new project called AsteroidDB which helps you save data online (like Firebase, Airtable etc.) but AsteroidDB is much simplier to setup and its source is open-source.
Its structrue is based on TinyWebDB, and it is a cloned and improved project from Pavitra’s TinyWebDB repository which made with Python. I added new methods and named it as AsteroidDB, because it is not a “Tiny” database service anymore As it is improved version of TinyWebDB, it works with App Inventor apps directly.
I thought AsteroidDB can be useful for your apps, so I wanted to create this topic.
How data is stored?
AsteroidDB is 2 column data table, tags and values. When you want to get/delete or modify the value of a record you need to know its tags. Like you do in TinyDB, Firebase etc.
Features
-
A lot of methods
It has +10 methods to manage your database easily such as get all tags, set password, format… -
Password Protection
AsteroidDB has built-in password protection. So if you set a password for database, all modify operations will require a password parameter. -
Use Everywhere
As you need to make HTTP requests to the AsteroidDB called GET, POST etc. You can manage your database almost every programming language.
Methods
TinyWebDB has only 2 methods for now; get value and store value.
But AsteroidDB has more methods than TinyWebDB:
-
Store
- Stores a new record or changes existing one. -
Get Value
- Returns one record. -
Get All Data
- Returns all tags along with values. -
Get All Tags
- Returns all tags. -
Delete
- Deletes one record. -
Format
- Deletes all records. -
Set Password
- Sets a new password or changes the current one. -
Unlock
- Removes password protection. -
Count
- Counts records. -
Is Locked
- Returnstrue
if database is locked with a password. Otherwise,false
. -
Is True
- Returnstrue
if database password is same with entered password, useful for checking the password before connecting to the database.
And as I said, AsteroidDB works with App Inventor directly. So I created an App Inventor extension to access your AsteroidDB instance. So don’t worry about integrating that to App Inventor.
Detailed descriptions can be found on AsteroidDB Docs.
Get Started
You can have your AsteroidDB instance with Heroku’s one-click to deploy feature. Just enter an app name after clicking that button.
After deploying your app open your project, import the AsteroidDB extension and fill the properties.
After that, you can now use blocks to manage your database! That’s it! As you deployed your app on Heroku, it uses your Heroku account’s plan. And Heroku is a cloud application platform.
However, Heroku’s free plan offers 10.000 rows/records and maximum connection limit is 20. You should pay for Heroku if you want more storage. If you don’t want to host on Heroku, you can host AsteroidDB in somewhere else you know as its written in Python, Flask.
Example
Resources
Extension: AsteroidDB for App Inventor Extension (version v1.1)
Docs: AsteroidDB Docs
Source code:
Let me know if you have any questions about AsteroidDB.