TunJing Ang's Portfolio

Backend Developer

Role & Task

My main task for this application is creating a functionality working backend server website.

The task I done

  • Create A Working Server To Provide API
    • River List API
    • Hardware Data API
    • UserLogin & Register API
    • Sample Record API
    • Insect API
    • Insect Group API
    • Problem Report API
  • Building The Admin Site
    • 2 Level Role Admin and Staff, Admin having full access to the admin site
    • Able to Create, Read, Update, Delete the data in the database
    • Activity Map according to all the sample record in the database taken by all user
    • Page accepts CSV file and registers user
    • Function to Filter and Export the Sample Record to CSV file.
  • Create A Appriopiate Database to Store the data
    • Using PostgreSQL and currently hosting AWS RDS.
  • Host the Server to Let User Connect To

Major Output

  • 1 Project that having a functional backend server
  • 1 python Django server which is hosting using AWS EB ( Amazon Web Service Elastic Beanstalk)
  • 1 Domain register using freenom.com and having domain name cccmi-aquality.tk
  • 1 PostgresSQL Database hosting on AWS RDS ( Amazon Web Service Relational Database System)
  • 2 Role Admin site which having an admin got full control on it and a staff role which the admin can decide what permission can have.
  • 7 API able to access including river list, hardware data, user login, river sample record, insect list, insect group and also the problem report.
  • 9 Table Inside the database which construct all the relationship about the backend server.

Technology Used

 

 python.png Python Language use to build the backend server
 django-logo.png Django I using Django framework to build the backend server
 simpleui.png SimpleUI Used to apply frontend layout on admin site
 html5.png

HTML5

The language use to develop webpage 
 bootstrap.png

Bootstrap 5

Using to apply css on webpage written in HTML5
 eb.jpg

AWS Elastic Beanstalk

Use to host the backend server application
 awsrds.png

AWS Relational Database System

Use as our application database.

Aquality V2.0 Admin Site Demo Walk Through

API LIst

Details

Database Schema

Details

Django Server

At this project, we are using Django framework which is based on python.

It having the advantage that 

  • Easy to build
  • Low learning curve
  • Nice documentation
  • Wide range functionality support
  • Immensely scalable
  • Provide Security

Now we used the Django to migrate database and also creating REST API that connect our frontend, Arduino hardware, AI model and our database.

Beside that, we also use django buildin admin function act as our admin site, and index page.