Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Analytical Dashboard

Project Done as an Internship Assignment

Assignment For Python Django Developer

Project Intro

In this assignment, the candidate is required to build a Responsive Django-powered analytics dashboard web application.

DATA:

You are provided with a single json file. https://s3.us-east-2.wasabisys.com/akshit/dataset-django/ft_assignment.json. Here’s a little bit of explanation of the data structured in the json file. Json file has a list of objects, each object having information such as app name, package_id and metrics like daily_active_users, installs and revenue. Each metric will have data for each date from May 1, 2022 to July 12, 2022.

Product Layout:

  • User login page, unauthorised page and one tab - Analytics.

Product Flow:

  • First when a user accesses the dashboard, he/she must login through google sign in
  • In the Analytics tab, there will be a form with input fields such as
  • Apps dropdown ( user can select any single app )
  • Date range ( user can select from and to date range, Example ( May 1, 2022 to May 30, 2022))
  • Submit button
  • After the submit button is clicked, users must be shown a line chart of each metric :- daily active users, installs and revenue. (Use ajax calls to do form request)

Data Scheduling:

  • Schedule a script that updates the data every 5 min

Tech stack to be used:

  • UI - Html, css, bootstrap, javascript ( jquery, angular.js, react.js - optional )
  • Analytics chart View - any interactive chart library chart.js, d3.js, plotly.js (preferred)
  • Backend - Django, Postgresql for database ( Mongodb if possible ), google sign in api
  • Deployment - Dockerize the application and deploy it in aws or heroku web server
  • Scheduling - Cron Job or celery

Solution

Tech Stack Used:

  • UI - Html, css, bootstrap, javascript
  • Analytics chart View - anychartJS
  • Backend - Django, Postgresql for database, google sign in api
  • Deployment - Dockerize the application and deployed it on Docker HUB.

Login Page:

image

Simple Button in Center to login with Google

Home Page/ Dashboard

image

Simple Home Page with Analytics Tab on top Left. And A Simple web form at center to select appName & Range image

Dashboard Chart view

image

Simple Chart with crosshair (using anychartJS). X-axis = Dates, Y-axis = Numbers in k's (1000), 3 Lines for installs, revenue & Daily active users

Video Overview

Analytics.Dashboard.mp4

How to Run

Using Docker Compose :

Download docker-compose.yaml and RUN

docker-compose up

Using Python :

Clone whole repo and RUN

python manage.py runserver

in Root directory of the project

About

Analytics Dashboard - A Django app that take input from a json file and display it in line Chart!

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Contributors

Languages