Music Band Application – Tecorb

Music Band Application

Major Modules Modules Sub Modules Description
User App      
Registration Social Media / Email / Phone number 1). User can register through social media or by using the email id/phone number (OTP) verification
Login Social Media 1). User can login into the application via  credentials used for authentication
Home 1). Songs, navigation menu and other top songs list
    Lyrics 1). Available on home screens along with description (singer, lyrics given by etc.)
    Chord Chart 1). Available for people who are interested in music
    Voice Memo 1). Short voice clip
    Recording Videos 1). User can record their video and upload into the app
    Favorite/Like 1). User can mark the music band/lyrics/song as favorite or can upvote/like
    Sharing option 1). Sharing of songs, concert, recording etc on social media
    Upcoming Events 1). Informs about the latest events that are going to be held in near future
    Stage Performance Concert 1). This section holds the info about stage performance tobe conducted by their favorite band
    Event Change Notifications 1). User will be notified if there is any delayed in band performance
    Event Reminders 1). App will remind the user for upcoming events held shortly
    Expense Tracker 1). User can keep track of his/her expenditure on the music concert in few steps
    History 1). User can keep track of task in the app
    Notification 1). App notifies the user for any update/inform about any event
Music Band      
  Login : Music band will be approved Admin Panel 1). Admin Will approve music band and there password and username will be send to their registered Email ID.
    Home 1). Songs, navigation menu and other hit songs list
    Lyrics 1). Available on home screens along with description(singer, lyrics given by etc)
    Chord Charts 1). Available for new/old band who are interested in music
    Voice Memos 1). Upload Short voice clips
    Recording Videos: Band can record their video and upload into the app Recording Videos: Band can record their video and upload into the app
    Favorite/like 1). Band can mark their favorite music band/lyrics/song or can upvote/like
    Sharing option 1). Sharing of songs, concert, recording etc. on social media
    Upcoming Events 1).  Informs about the latest events that are going tobe held in near future
    Booking Contracts 1). Contains the list of contracts booked
    Stage Performance Contracts 1). This section holds the info about stage performance tobe held by particular band
    Availability Requests 1). Band can accept/reject the user’s request else user has to select another band
    Event Change Notifications 1). Band will be notified if there is any delayed in band performance
    Event Reminders 1). App will remind the Band people for upcoming events held shortly
    Income/Expense Tracker 1). Band can keep track of their earning expenditure on the music concert in few steps
Admin panel (Web)
Manage Use 1). Admin have the rights to see band and user
  Upload Lyrics, Voice Memos 1). Permission to upload the required docs
    Chord Charts 1). Available for new/old band who are interested in music or want to learn
    Accept/Reject Requests 1). Admin needs to manage the request according to band availability
    Bulk notification 1). Share the info to band or user via single click
    Manage History 1). History can be managed day, week, month, year
    Manage Event Reminder 1).  Update on the reminder set for
    Income/Expense tracker management 1). Admin can manage the income / expense of user or band
       
  Static Pages   1). Rate Us
2). About Us
3). Term & Conditions
  Other Pages   1). Notifications
2). Admin dashboard
3). Review and Rating
       
  Mobile Application iOS Swift 4 with X-Code
    Android Java/kotlin with Android Studio
       
  Web Application For Browsers with Mobile / iPad Responsive Twitter bootstrap with ROR or PHP, Database PostgreSQL
       
  Server Any Cloud Server AWS
or
Atlantic.net (4 GB of Ram 80 GB Space, Linux Server with Ubuntu)
Dependencies
Social Plugins And APIs Facebook, Google login,Google Map, Location, etc.
3rd party Gateway Payment gateways For Credit / Debit card Stripe or Any Gateway which is working in South America
  SMS gateway Twilio preferred http://www.twilio.com
Deliverable & Deployable
 Deliverable a). Source Code
b). Documentation of implemented functionality
Deployment Mobile Application iOS & Android Deployment of application on Appstore or Google play would be done by us.
  Web Application Admin Panel Deployment of Web application would be done by us.

If you are, looking to Develop and design for your project then feel free to contact us at any time

  • Call Us- +91 9910781148, +1 8033353593
  • Email: company@tecorb.com
  • Skype- tecorb

 

Advertisements

Install and Use Redis Server

Sort Introduction

Redis is an extremely fast, atomic key-value store. It allows the storage of strings, sets, sorted sets, lists and hashes. Redis keeps all the data in RAM, much like Memcached but unlike Memcached, Redis periodically writes to disk, giving it persistence. It is quite useful as both a cache store and as a full-fledged, NoSQL data store.

This blog describes getting Redis working on your rails application.

Initial setup

  1. Start off by updating all of the apt-get packages:
    $ sudo apt-get update
  2. Now Download a compiler with build essential which will help us install Redis from source:
    $ sudo apt-get install build-essential
  3. Now in the last we need to download tcl:
    $ sudo apt-get install tcl8.5

Redis Installation

Thats all… Finish Now try to run the redis server into your machine

$ redis-serverredis

Stop redis server running in background :

  • $ killall redis-server

OR

  • sidekiqctl

If you are, looking to Develop and design for your project then feel free to contact us at any time

  • Call Us- +91 9910781148, +1 8033353593
  • Email: company@tecorb.com
  • Skype- tecorb

“We maintain transparency with our customers. Our values and business ethics has given us repeated customers. We tend are proud to be a reliable outsourcing partner for many clients across the World.”

SMO (Social Media optimization)

SMO (Social Media Optimization) is the way to fetch traffics on websites from Social Media like Twitter, LinkedIn, Facebook, and Pinterest. Now a day’s SEO (Search Engine optimization) and SMO (Social Media optimization) become more important part of business strategy.

Everyone wants his business on top of the major search engine such as Google, Yahoo, Bing etc.

Social-Media-Marketing

Social Media Marketing

Social Media Marketing: Social media marketing (SMM) refers to the process of gaining traffic through social media websites; some top social media websites are given below;

  • Facebook
  • Google+
  • Twitter
  • Pinterest
  • Linkedin
  • Instagram

 Why does my company need social media?

Whether you can running a small, local operation, or heading a global, enterprise-level effort, the statistics above make it clear: Your customers are online. They are interacting in social media with their friends, colleagues, and other brands in search of information, recommendations, and entertainment.

If your company is not around to answer then your competitor will be use social media for increase own business.  By using social website like Facebook, Google+, LinkedIn, and some other social sites you can increase own business and you can connect with new person for getting new ideas.

How can social be a springboard for success in other marketing channels?

Capturing your company’s voice and sharing it with the world through social media website will open up unique opportunities in all other websites of inbound marketing, including SEO, branding, public relations, sales, and more.

advocacy

Relationships

Some of the most successful SEOs/SMO and public relations professionals earn their popularity. To get the most out of social media, make the relationships you build with it your end goal. The relationships built with customers are the foundations upon which other aspects of your business can and will flourish.

Feedback

Information are often shared through social media website at associate quick pace, and users are more and more turning to social website to share info in present time. This info usually takes the shape of opinions, thus if you can listening for the proper cues from your audience, social media will become a useful supply of insights and feedback

feedback

Also Read- Model View Controller (MVC) Pattern

Case Study of Laundry Application

You may not think of laundry as a high-tech industry, but at Laundry we’ve invested large quantity in technology to transform the laundry room experience for our customers.

The result is drove towards the intelligent systems that allow for real-time connectivity, easy to use mobile apps, and quicker service response, remote laundry monitoring and smart-card payment.

Being dynamic, multi-national business, technology enables us to maximize laundry room profits, deliver superior service, keep a pulse on what’s important to our customers, and maintain the lifetime customer retention rate.

Phases of Laundry Application

A.) Pick  

pick up

B.) Wash 

laundryD application Development company

C.) En-Route  

   

En-Route

                                                                    

D.) Drop  

                                       drop                                                

Save time. Save money. Save the environment. It’s an easy choice. Revolutionize your laundry process today by signing up for Simply Laundry’s door-to-door laundry and dry cleaning delivery service!

Features of LaundryD App:

  • One tap (Request on the Home Pick Button) to complete all your laundry requirement
  • You can Track status of your laundry request whenever you want.
  • Order history of your current and previous orders.
  • You will receive Apps notifications on your mobile. After successful completion of your laundry request.
  • You can mark your pickup and delivery time slot at the time of placing the request.
  • Live location tracking of pickup/delivery persons.
  • Simplified and secured advanced payment options.

 

Working of Laundry:

PICK: This section is again divided in to 3 sub-sections with a progress form, where contractor have to add details of laundry, like type, unit and Quantity, than contractor have to Submit date for DROP, on last sub-section, contractor have to get sign of a assigned person and submit form.

WASH: After getting laundry, Contractor supply this laundry to washing unit. Taking washing unit authority signature. (Here authorities can check laundry details).

EN-ROUTE: On Getting, Laundry from washing unit, contractor can add notes for laundry.

DROP: This section is again divided in to 2 sub-sections with a progress form, where contractor have to add details of DROPED laundry, like type, unit and Quantity, than contractor have to get sign of a assigned person than contractor submit form.

Conclusion

Here, at Laundry, we believe that each of the laundry order – no matter big or small – is an opportunity to provide better service. We make it a point to collect data and feedback from user, and act on it as fast as we can. Also, we make sure that our presented laundry must know our customers’ standards and that you people as customers get the very best out of it. We trust in giving you the best and most remarkable experience – that even though doing your laundry is our job, it becomes a smooth and unified experience every time, without flop.

Deploy Ruby on Rails project with Passenger and Nginx

I’m assuming that you have installed ruby and rails at your server and have a Ruby on rails project to deploy with Passenger and Nginx

Step 1 –  First of all, we need to add a Sudo User to our system so user can have privilege to access the files.

create a user if not exists, in this example, I will explain to create a root user

tecorb@tecorb-Lenovo-B40-80:~$  adduser root

(this will ask few questions like your password etc.)

Step 2 – Now we have to add this new user to the sudo group

Syntex:

tecorb@tecorb-Lenovo-B40-80:~$ gpasswd -a root sudo

Step 3 – Now we need to install Passenger and Nginx

First of all we will install a PGP (Pretty Good Privacy) key:

tecorb@tecorb-Lenovo-B40-80:~$  sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 561F9B9CAC40B2F7

Now we have to create an APT (Advanced Packaging Tool) source file

tecorb@tecorb-Lenovo-B40-80:~$  sudo vim /etc/apt/sources.list.d/passenger.list

And insert the following line in the file:

deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main

Press ESC then :wq and hit enter, Now our file has been saved through vi editor

Now we need to change the owner and permissions for this passenger.list file:

tecorb@tecorb-Lenovo-B40-80:~$  sudo chown root: /etc/apt/sources.list.d/passenger.list

tecorb@tecorb-Lenovo-B40-80:~$  sudo chmod 600 /etc/apt/sources.list.d/passenger.list

Now we have to update our APT cache:

tecorb@tecorb-Lenovo-B40-80:~$   sudo apt-get update

And finally, we will install Passenger with Nginx:

tecorb@tecorb-Lenovo-B40-80:~$  sudo apt-get install nginx-extras passenger

Step 4- In this step we will open the Nginx configuration file for some changes:

tecorb@tecorb-Lenovo-B40-80:~$  sudo vim /etc/nginx/nginx.conf

now file will be open in vi editer, Uncomment given line, These lines will look like this:

# passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;

# passenger_ruby /usr/bin/ruby;

uncomment these lines and update the path mentioned in the passenger_ruby line and add default user :

passenger_default_user root;

passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;

passenger_ruby /usr/local/rvm/gems/ruby-2.3.0/wrappers/ruby;

Note if you are unable to get what is your path to ruby then follow these steps:

tecorb@tecorb-Lenovo-B40-80:~$   which passenger-config

this will return a path like: /usr/bin/passenger-config

If you are on RVM and use Ruby 2.2.1 (version can be whatever you are using)

tecorb@tecorb-Lenovo-B40-80:~$  rvm use 2.3.0

Now finally, we will invoke passenger-config with its full path, passing –ruby-command as parameter like:

tecorb@tecorb-Lenovo-B40-80:~$  /usr/bin/passenger-config –ruby-command

This will show you something like:

  To use in Apache: PassengerRuby /usr/local/rvm/wrappers/ruby-1.8.7-p358/ruby

  To use in Nginx : passenger_ruby /usr/local/rvm/wrappers/ruby-1.8.7-p358/ruby

  To use with Standalone: /usr/local/rvm/wrappers/ruby-1.8.7-p358/ruby /opt/passenger/bin/passenger start

From here you will get path for your passenger_ruby (Nginx). This path will use at passenger_ruby in nginx.conf

Now finally we will save our file and exit by Press ESC then type :wq and hit enter.

Step 5- Now we have almost done, we need to disable the default Nginx configuration at Nginx config file:

tecorb@tecorb-Lenovo-B40-80:~$  sudo vim /etc/nginx/sites-available/default

Findout these lines and comment them:

# listen 80 default_server;

# listen [::]:80 default_server ipv6only=on;

Save this config file, Press ESC then type :wq and hit enter.

Step 6- Now we will create an Nginx configuration file for our application (like our app name is tecorbapp):

tecorb@tecorb-Lenovo-B40-80:~$  sudo vim /etc/nginx/sites-available/tecorbapp

Add the following server block into this file:

server {

  listen 80 default_server;

  server_name tecorbdomain.com http://www.tecorbdomain.com;

  passenger_enabled on;

  passenger_app_env development;

  root /home/rails/tecorbapp/public;

}

In this file we enable listening on port 80, set our domain, enable Passenger, set the application environment here we have used development environment and set the root to the public directory of our ruby on rails project.

If you don’t want to add your domain to the application, you can skip the server_name line from this file, or if you want to use any IP address you can replace

tecorbdomain.com http://www.tecorbdomain.com with your ip address.

Now we will save this config file, Press ESC then type :wq and hit enter.

Step 7- Now finally we will create a symlink this file:

tecorb@tecorb-Lenovo-B40-80:~$   sudo ln -s /etc/nginx/sites-available/tecorbapp /etc/nginx/sites-enabled/tecorbapp

and Restart our Nginx:

tecorb@tecorb-Lenovo-B40-80:~$  sudo nginx -s reload

Now our application should be accessible from our domain, go to your browser and hit the domain.

Also Read- AngularJs with Ruby on Rails Task-1

If you are, looking to Develop and design for your project then feel free to contact us at any time

  • Call Us- +91 9910781148, +1 8033353593
  • Email: company@tecorb.com
  • Skype- tecorb

“We maintain transparency with our customers. Our values and business ethics has given us repeated customers. We tend are proud to be a reliable outsourcing partner for many clients across the World.”

About UICollectionView in IOS

UICollectionView, Manages an ordered collection of data item and present them using customizable layouts.

UICollectionView is same as the UITableView. UITableView manages a collection of data or information and display then on the screen in a single column layout whereas UICollectionView offers developers flexibility to present item using customize layout.

UICollectionView has three components:-

  1. Cell:

It is an instance of UICollectionViewCell . It represent a single item in the data collection.

  1. Supplementary views:

It is optional and usually used to implement the header or footer view of the sections.

  1. Decoration views:

It is another type of supplementary view but for decoration purpose only. It is not related to data collection. We create decoration view to enhance the visual appearance of the CollectionView.

Step 1:

Open the Excode and select the Single View Application.

UI Collection View

Step 2:

Create project with “ExCollectionView” name.

ExCollectionView

Step 3:

Open the StoryBoard and there is a ViewController and drag the CollectionVIew inside the ViewController .

And set the Add New Constraints.

UIViewController1

Step 4:

Select now the cell inside the UIViewController and add the UIImage in the UICollectionView cell and also set the UIImage constraints.

ViewController.swift

UICollectionView2

And open the ViewController.swift and add the extension of  UICollectionViewDataSource,UICollectionViewDelegatein the ViewCollection.swift.

And these three method in the ViewController.swift:

func numberOfSections(in collectionView: UICollectionView) -> Int {

        code

    }

    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {

        code

    }

    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) ->      UICollectionViewCell {

        code

    }

UICollectionViewCel

After that select the UICollectionViewCell and set the name of the reuseIdentifier = “MyCollectionViewCell”

Using Assistant Editor, add an IBOutlet to CollectionView in ViewController.swift

@IBOutlet weak var collectionView: UICollectionView!

Create a new Cocoa Touch Class file (File > New > File… > iOS > Cocoa Touch Class). Name it MyCollectionViewCell. This class will hold the outlets for the views that you add to your cell in the storyboard.

ViewController

And open the ViewController.swift and add this code in the numberOfItemInSection in collectionview:

return

And go to the main story board and select the UIImage and set the image in the UIImage.

viewcontroller1

And also add one method in the viewcontroller.swift:

  func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout:    UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {

        return (indexPath.section == 0) ? CGSize(width: collectionView.bounds.size.width, height: 200) : CGSize(width: collectionView.bounds.size.width/2 – 2, height: 170)

    }

And after the execude your code

UIImageView

It should be look like this. If you want to add multi image in the UIImageView then you use the array and pass the image in the array and cell in the cellForRowAtIndexPath method.

Also Read- About Intents in Android

MVP (Minimum Viable Product) Part- 1

Over the past few years, minimum viable product (MVP) have begun to evolve

What is MVP?

Minimum Viable Product is development technique where fresh product or a website is being launched along with minimum resources in order to satisfy the tech-savvy or early adopters. The complete set of features is designed and developed after getting the feedback from the initial users about product that had already been launched. Through this initial version of product developers gather enough learning about product used by customers by applying least effort.

Importance of MVP

MVP is required to get data from customers regarding the product launch. When all the required data had been gathered then we move forward to develop fully functional product.

1). Save time and money.

2). Engage investors.

3). Cross checking whether project is being developed according to user’s feedback.

4). Get to know about the present market behavior regarding product.

 MVP for Startups

It is really a cool idea for an entrepreneur organization to begin with something that won’t let them down. These are MVP building blocks that make up an application live without actually building it. As startup’s they need not to invest on development all they have to do is to focus on Wireframes, Mockups, Explanatory Video or Rapid Prototype. This will give them a basic idea to release their initial model without wasting time and money. Being an entrepreneur one needs to think about having maximum output by providing minimum input features.

All the famous startups such as Facebook, Twitter, Dropbox, Zappos, Aardvark had just an idea that had been converted into live project. It’s all up to you, how well you can use the existing technology to build newer one. Get set and hit unless and until you achieve your destiny.  

 Factual MVP (Minimum Viable Product)

The basis: Associate participant could be a thanks to get the foremost bang for your buck once you’re promoting a replacement product construct.

So, you invest the smallest amount of cash and energy attainable to present your product plan a market check run so as to check if your target market is even remotely interested

 “The main concept of MVP is to sell product to market.”

 If they so no interest towards your concept, you only made a little investment. But if they are interested them it is green light to build a more sustainable product.

There are many building blocks to develop MVP, but I will talk about few of them.

Untitled

Building blocks of MVP (Minimum Viable Product)

 1). Wireframes

 These are best choice if you are running out of time and money. You are explaining your product to tech-laden or creative audience. If your target are people who have real interest then MVP is best choice. It is based on visual concept. Apart from that if your aim is to present it to different audience that are not from above category then you need graphical or more enhance view of MVP. (Minimum Viable Product)

2). Rapid-Prototype

Other than that there are times that you need things that move, an eye catching stuff that contain buttons and images to attract them. Basically you need to explain you audience that they are not working on actual product so that they may not get over distracted by the functional behavior. Rest rapid prototype are best for people who need a virtual or visual representation of their product.

 3). Explainer Video

It is better idea to create a video rather to develop a product. So why? By biggest advantage of making a video prototype will lead towards better explanation of product that will be developed. User will get whole working of product in few minutes. It had great advantage to present your product to potential user or investors who are really interested without really building the main product.

4). Mockups

These are safe when you are working with an audience who don’t have mental practice to visualize abstract concept. They are ready made design that will help your audience to get perfect match to meet their requirements accordingly. To have better effect you can build interactive mockups of product.

cms

 “For some shareholder, an image is worth than having multiple Wire-frames”  

Also Read- Fragments in Android