JApi

JApi

Backend development made easy

The problem JApi solves

JApi is a termianl app written using shell, python and django. It is an easy way to create your own backend server where the code for the same can also be accessed. It writes the code automatically depending on the json which is being provided by the user. It also provides the user with endpoints depending on the json which is being provided by the user. Django along with the Django Rest Framework are used the same. We can change the primary keys and can also describe connection between the databses, hence establishing a connection. The tables will be autogenerated and it's name and other details and the table can be changed whenever needed. TUI is made using the package click, fascilitating work on the terminal.

Challenges we ran into

The major challange we faced was implementing the project. Backend development is considered an important task and automating it makes it all the more complex. We had our share of doubt on our ability to implement it but we motivated each other and decided to take on this difficult task. We decided to approach it step by step. We started with implementing a simple Model and then build on it.
The most difficult job we faced was implementing the connectioon between the databases. There aare many variable to this so we understood the complexity of the problem and thought to cope it asynchronously. We thought of it as an enhancement and only one member of our project decided to work on it while rest implemented required feature. So we coped with this by our amazing team word and unmoced determination.
Thinking of automation is difficult so we wrote many dummy backend servers and then tried to find the connection once we found the connection it was easy to automate from there.
We faced many error with writing to python file given the love of the language for indentation. So we faced our fair share of identation error. We solved it by using consistent tabs and spaces. This was obviously irritating so we might build an app to write code to python file in our next hackathon :)

Discussion