Khaaz / AxonCore

The best fully featured discord bot framework for javascript (eris, discordjs or detritusjs)!
https://khaaz.github.io/AxonCore
MIT License
72 stars 19 forks source link

More database support #16

Open Khaaz opened 5 years ago

Khaaz commented 5 years ago

Adding support for more Database could be a super interesting features.

Suggestion: Embeded:

NoSQL: Others NoSQL engine?

SQL:

All contributions are welcome. The Database Service just offer an interface with the DB for AxonCore since it uses Database natively. It needs to replicate the current behavior with a different Database engine.

Aervyon commented 5 years ago

If i may, what is the point of inclduing NeDB? It is very similar to a JSON database.

Santhosh-Annamalai commented 5 years ago

NeDB is a database management solution written in javascript which will be integrated into the application "AxonCore" (since it is an embedded database). So you needn't install standalone databases like MongoDB and use drivers like "MongoDB Node.js driver" for interacting with your database.

NeDB and JSON are highly different because you have to develop methods for doing CRUD operations in a JSON file by yourself. Whereas NeDB has a subset of MongoDB API methods which you'll find very useful and could save a lot of development time and effort. NeDB database is also stored in memory so your application could access data pretty fast (Obviously that won't put a strain in memory resources since data stored in NeDB is quite small usually). You can think of NeDB as SQLite for MongoDB projects. Plus if your data grows over a period of time and when NeDB read / write speeds are insufficient, you can export NeDB data to a MongoDB collection using an utility. Hope it is clear!

Khaaz commented 5 years ago

Updating on this: Best thing to add would be a support for sequelise which is a SQL ORM that seems pretty powerful.

Obviously any other native support that could be added is also welcome. Make sure to PR for the dev-v2 branch.