CREATIVE HUB
B.S. (SE)-18 Project Report
Submitted by: Ms Sana
Kiran Ejaz
Javeria Ali
Urooj Amjad
Hira Raees Khan 1822129
July 2021
DEPARTMENT OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING
JINNAH UNIVERSITY FOR WOMEN
5-C NAZIMABAD, KARACHI 74600
Table of Contents
Project Summary...............................................................................................................1
ERD...................................................................................................................................1
Project Flow......................................................................................................................2
Code Explanation............................................................................................................18
Screenshots......................................................................................................................19
PROJECT SUMMARY
Our project defines the talent of amateurs. The inventive trade is one amongst the foremost necessary
and wide-reaching industries within the world. Our creative hub application can host information
related to painting, fashion designing and interior designing. Fashion designers, interior designers and
painters show creative work in platform, sell and generate revenue .We tend to aim to produce a
platform for amateurs, designers, painters and housewives. Our project is consumers-to-consumers
model (C2C) based on web and mobile application. The graduate and under graduate and students has
a lot of talent but customer will not provide work because they don’t know about them. Hence these
amateurs take lot of time to expand and furnish their business. We provide the platform for under
graduate and graduate student to create their profile and display their creative work. This will give
them an opportunity to gain professional rating and ultimately a rise in their business ventures.
GITHUB LINK
Provide GitHub link here
ENTITY RELATIONSHIP DIAGRAM
Entity Relationship diagram
PROJECT FLOW
Creative hub flow diagrams based on three entities and different levels.
O-level
The data flow diagram (dfd) is describing the whole system. The (o) level dfd describe
the all user module that operate the system. Below data flow diagram of creative hub
shows the two user can operate the system admin, user and artist.
Figure: 0 O-level
1st-level: Admin
This is 1st level explain the admin role of creative hub.
Figure: 1 1st-level
1st-level: User
This is 1st level explain the user role of creative hub.
Figure: 1.1 1st-level
1st-level: Artist
This is 1st level explain the artist role of creative hub.
Figure: 1.2 1st-level
2nd-level: level-3.0
This is 2nd level explain the admin role of creative hub.
Figure: 2 level-3.0
2nd-level: level-2.0
This is 2nd level explain the user role of creative hub.
Figure: 2.1 level-2.0
2nd-level: level-2.0
This is 2nd level explain the artist role of creative hub.
Figure: 2.2 level-2.0
3rd-level: level-3.0
This is 3rd level explain the user role of creative hub.
Figure: 3 level-3.0
4th-level: level-4.0
This is 4th level explain the user role of creative hub.
Figure: 4 level-4.0
CODE
main.java
package com.example.kiran.creativehub;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
public class main extends AppCompatActivity {
TextView sin;
LinearLayout circle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
circle = (LinearLayout)findViewById(R.id.circle);
sin = (TextView)findViewById(R.id.sin);
circle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent it = new Intent(main.this,signup.class);
startActivity(it);
}
});
sin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent it = new Intent(main.this,signin.class);
startActivity(it);
}
});
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ab">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/sin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Sign In"
android:textSize="25dp"
android:textColor="#54abee"
android:gravity="center"
android:fontFamily="cursive"
android:layout_alignParentBottom="true"
android:layout_marginBottom="45dp"
/>
<TextView
android:id="@+id/imac"
android:layout_width="192dp"
android:layout_height="136dp"
android:layout_centerInParent="true"
android:background="@drawable/logoo" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/account"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Already have an account?"
android:textSize="16dp"
android:textColor="#c4c5c9"
android:gravity="center"
android:layout_above="@id/sin"
android:paddingBottom="16dp"
/>
<LinearLayout
android:id="@+id/circle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/circleangle"
android:padding="16dp"
android:orientation="horizontal"
android:layout_marginTop="140dp"
>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="1dp">
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
app:srcCompat="@drawable/angle2"
/>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
app:srcCompat="@drawable/logoo"
android:paddingLeft="3dp"
android:layout_gravity="center"
/>
</FrameLayout>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/signupforfree"
android:fontFamily="cursive"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Sign Up For Free"
android:textSize="28dp"
android:textColor="#fff"
android:layout_gravity="center"
android:layout_marginLeft="16dp"/>
</LinearLayout>
</RelativeLayout>
</FrameLayout>
Splash.java
package com.example.kiran.creativehub;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class splash extends AppCompatActivity {
private static int Spalshtimeout=4000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent intent=new Intent(getApplicationContext(),main.class);
startActivity(intent);
finish();
}
},Spalshtimeout);
}
}
Activity_splash.java
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".splash">
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/logoo" />
</androidx.constraintlayout.widget.ConstraintLayout>
Signup.java
package com.example.kiran.creativehub;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
public class signup extends AppCompatActivity
{
ImageView sback;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signup);
sback = (ImageView)findViewById(R.id.sback);
sback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
Intent it = new Intent(signup.this, main.class);
startActivity(it);
}
});
}
}
Activity_signup.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ab">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/timg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="37dp"
android:layout_marginLeft="30dp">
<ImageView
android:id="@+id/sback"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/left"
android:padding="10dp"
android:layout_gravity="center"
/>
</LinearLayout>
<ImageView
android:layout_width="208dp"
android:layout_height="162dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="110dp"
android:background="@drawable/logoo" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true">
<androidx.appcompat.widget.AppCompatEditText
android:textSize="16dp"
android:id="@+id/fname"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Fullname"
android:textColorHint="#ADCCE2"
android:textColor="#ADCCE2"
android:layout_marginLeft="22dp"
android:inputType="text"
android:background="#0000"
android:padding="16dp"
android:layout_marginRight="35dp"/>
<View
android:layout_width="match_parent"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_height="1dp"
android:background="#ADCCE2" />
<androidx.appcompat.widget.AppCompatEditText
android:textSize="16dp"
android:id="@+id/mail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Email"
android:textColorHint="#ADCCE2"
android:textColor="#ADCCE2"
android:layout_marginLeft="22dp"
android:inputType="text"
android:background="#0000"
android:padding="16dp"
android:layout_marginRight="35dp"/>
<View
android:layout_width="match_parent"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_height="1dp"
android:background="#ADCCE2" />
<androidx.appcompat.widget.AppCompatEditText
android:textSize="16dp"
android:id="@+id/usrusr"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Username"
android:textColorHint="#ADCCE2"
android:textColor="#ADCCE2"
android:layout_marginLeft="22dp"
android:inputType="text"
android:background="#0000"
android:padding="16dp"
android:layout_marginRight="35dp"/>
<View
android:layout_width="match_parent"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_height="1dp"
android:background="#ADCCE2" />
<androidx.appcompat.widget.AppCompatEditText
android:textSize="16dp"
android:id="@+id/pswrd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Password"
android:textColorHint="#ADCCE2"
android:layout_marginLeft="22dp"
android:inputType="textPassword"
android:maxLength="12"
android:textColor="#ADCCE2"
android:background="#0000"
android:padding="16dp"
android:layout_marginRight="35dp"/>
<View
android:layout_width="match_parent"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_height="1dp"
android:layout_marginBottom="10dp"
android:background="#ADCCE2"/>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/sin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/angle"
android:text="Create"
android:textSize="16dp"
android:textColor="#fff"
android:gravity="center"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:padding="16dp"
android:layout_alignParentBottom="true"
android:layout_marginBottom="28dp"
android:layout_marginTop="32dp"
/>
</LinearLayout>
</RelativeLayout>
</FrameLayout>
Signin.java
package com.example.kiran.creativehub;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
public class signin extends AppCompatActivity {
ImageView sback;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signin);
sback = (ImageView)findViewById(R.id.sinb);
sback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent it = new Intent(signin.this,main.class);
startActivity(it);
}
});
}
}
Activity_signin.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ab">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/timg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="37dp"
android:layout_marginLeft="30dp">
<ImageView
android:id="@+id/sinb"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/left"
android:padding="10dp"
android:layout_gravity="center" />
</LinearLayout>
<ImageView
android:layout_width="144dp"
android:layout_height="136dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="140dp"
android:background="@drawable/logoo" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="365dp"
android:layout_alignParentBottom="true"
android:layout_marginTop="202dp"
android:layout_marginBottom="103dp"
android:orientation="vertical">
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/usrusr"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="22dp"
android:layout_marginTop="20dp"
android:layout_marginRight="35dp"
android:background="#0000"
android:drawableRight="@drawable/user"
android:hint="Username"
android:inputType="text"
android:padding="16dp"
android:textColor="#ADCCE2"
android:textColorHint="#ADCCE2"
android:textSize="16dp" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:background="#ADCCE2" />
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/pswrd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="22dp"
android:layout_marginRight="35dp"
android:background="#0000"
android:drawableRight="@drawable/pasword"
android:hint="Password"
android:inputType="textPassword"
android:maxLength="12"
android:padding="16dp"
android:textColor="#ADCCE2"
android:textColorHint="#ADCCE2"
android:textSize="16dp" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_marginBottom="10dp"
android:background="#ADCCE2" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/sin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginLeft="40dp"
android:layout_marginTop="32dp"
android:layout_marginRight="40dp"
android:layout_marginBottom="28dp"
android:background="@drawable/angle"
android:gravity="center"
android:padding="16dp"
android:text="Sign In"
android:textColor="#fff"
android:textSize="16dp" />
</LinearLayout>
</RelativeLayout>
</FrameLayout>
CODE EXPLANATION
Submit the code over GitHub. In this section, add code snippet in terms of functions and explain the
purpose of each function.
SCREENSHOTS
SPLASH SCREEN
This is our main activity whenever the app will start this screen will be open as it is a splash
screen so it will automatically change after 3 seconds.
Figure: 1 Splash Screen
MAIN SCREEN
In the main screen, user will sign up by input their email, password. And if user has already
an account then just login by click below link which redirect to login page.
Figure: 2 Main Screen
SIGNUP SCREEN
In the signup screen, user will sign up by input their email, password. And if user has
already an account then just login by click below link which redirect to login page.
Figure 3 Signup Screen
LOGIN SCREEN
In the login screen, user will login by input their email and password. And if they don’t
have an account on creative hub then user will must register first by click on below link
which will redirect to register page.
Figure 4 Login Screen