Graphista

One-Page Creative Portfolio / Bootstrap Template


View Online Demo
Version 1.1.3

Title & Favicons

Site Title

Open file /index.html with your favorite text editor and scroll to the very top of the file.

  1. <!-- ==============================================
  2. Title and Meta Tags
  3. =============================================== -->
  4. <meta charset="utf-8">
  5. <title>Graphista | One-Page Creative Portfolio</title>
  6. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  8. <!-- ==============================================
  9. Favicons
  10. =============================================== -->
  11. <link rel="shortcut icon" href="assets/favicon.ico">
  12. <link rel="apple-touch-icon" href="assets/apple-touch-icon.png">
  13. <link rel="apple-touch-icon" sizes="72x72" href="assets/apple-touch-icon-72x72.png">
  14. <link rel="apple-touch-icon" sizes="114x114" href="assets/apple-touch-icon-114x114.png">

Within the <head> tag you will find the <title> tag. Replace the text with your own Site Title.


Favicons

Right after the <title> you see the Favicons links. Normally you won't need to change the markup for these, leave it as it is and replace the coresponding images in the /assets/images/ folder with your own images, following these rules:

File Name Type Size
1 favicon.ico ICO 16 × 16
2 apple-touch-icon.png PNG 57 × 57
3 apple-touch-icon-72x72.png PNG 72 × 72
4 apple-touch-icon-114x114.png PNG 114 × 114

Note: DO NOT alter the filenames! Just make your own with your favorite image editor and replace them with the same filename.

Navigation

Right after the body tag you can see the Main Navigation links with the id site-nav. Change the text of the anchors and/or the destination section.

  • <div id="site-nav" class="navbar-collapse collapse">
  •     <ul class="nav navbar-nav navbar-right">
  •         <li class="sr-only">
  •             <a href="#home" class="scrollto">Home</a>
  •         </li>
  •         <li>
  •             <a href="#services" class="scrollto">What I Do</a>
  •         </li>
  •         <li>
  •             <a href="#about" class="scrollto">About Me</a>
  •         </li>
  •         <li>
  •             <a href="#portfolio" class="scrollto">My Works</a>
  •         </li>
  •         <li>
  •             <a href="#contact" class="scrollto">Contact Me</a>
  •         </li>
  •     </ul>
  • </div><!--End navbar-collapse -->

Class scrollto is used to make the page scroll to the destination. You can add it to any link or button linking to a part of the page to have that effect. Obviously there is no reason to add it to an external link!

Services

Scroll to the SERVICES section.

  • <!-- ==============================================
  • SERVICES
  • =============================================== -->
  • <section id="services" class="add-padding">
  •     <div class="container">
  •         
  •         <h1 class="section-title big-text scrollimation fade-up">My Services</h1>
  •         
  •         <div class="row">
  •         
  •             <div class="col-sm-4 service-item color3 scrollimation scale-in">
  •             
  •                 <div class="service-icon"><i class="fa fa-lightbulb-o"></i></div>
  •                 
  •                 <h3>Brand Identity</h3>
  •                 
  •                 <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec id elit non mi porta gravida at eget metus. Fusce dapibus, tellus ac cursus commodo.</p>
  •                 
  •             </div>
  •             
  •             ...
  •             
  •         </div>
  •         
  •     </div>
  • </section>

  1. Change the text of the services titles in the <h3> headings and the services details in the <p> tags.

  2. Change the Fontawesome icons with the ones of your choise in the <i> tags.


Go to Fontawesome 4.2 online to find the icons you like.

About & Skills

About

Scroll to the ABOUT section.

  • <!-- ==============================================
  • ABOUT
  • =============================================== -->
  • <section id="about" class="add-padding bg-color2">
  •     <div class="container">
  •         
  •         <div class="row">
  •         
  •             <div class="col-sm-6 scrollimation fade-right d1">
  •             
  •                 <img class="img-responsive polaroid" src="assets/images/about.jpg" alt="" />
  •             
  •             </div>
  •             
  •             <div class="col-sm-6 scrollimation fade-left d3">
  •             
  •                 <h1 class="big-text">I am <br/>Jane Doe </h1>
  •                 
  •                 <p class="lead">I am Jane Doe, a twenty five year old designer from NY. I have graduated with a Bachelor degree of Graphic &amp; Web Design, from the University of Pasadena.</p>
  •             
  •                 <p>I am passionate about combining function, interaction and form to design for fitting user experiences that make people happy. I have a passion for creating challenging, intuitive and beautiful products. My design process is very hands-on and visual.</p>
  •             
  •             </div>
  •         
  •         </div>
  •         
  •     </div>
  • </section>

  1. Change the image by changing the src="" attribute to point to your own image or just replace the about.jpg image in the assets/images/ folder.

  2. Change the markup of the about section to write a small story about you.


Skills

Scroll to the SKILLS section and find the skills-bars.

  • <div class="skills-bars">
  •     <div class="skills-item skill1">
  •         <span class="percent" data-percent="75">75%</span>
  •         <p>Photoshop</p>
  •     </div>
  •     <div class="skills-item skill2">
  •         <span class="percent" data-percent="70">70%</span>
  •         <p>Illustrator</p>
  •     </div>
  •     <div class="skills-item skill3">
  •         <span class="percent" data-percent="90">90%</span>
  •         <p>HTML</p>
  •     </div>
  •     <div class="skills-item skill4">
  •         <span class="percent" data-percent="60">60%</span>
  •         <p>CSS</p>
  •     </div>
  •     
  • </div>

  1. Change the title of each skill in the <p> tags.

  2. Change the percentage of each skill by changing the value of the data-percent="" attribute as well as the text of the .percent span.

Portfolio

Filtering Projects

Scroll to the PORTFOLIO section and find the Portfolio Filters subsection. This is where the Portfolio Categories go, to give the filtering effect to the masonry project blocks.

  • <!--==== Portfolio Filters ====-->
  • <div id="filter-works">
  •     <ul>
  •         <li class="active scrollimation fade-right d1">
  •             <a href="#" data-filter="*">All</a>
  •         </li>
  •         <li class="scrollimation fade-right">
  •             <a href="#" data-filter=".identity">Identity</a>
  •         </li>
  •         <li class="scrollimation fade-left">
  •             <a href="#" data-filter=".logo">Logo</a>
  •         </li>
  •         <li class="scrollimation fade-left d1">
  •             <a href="#" data-filter=".illustration">Illustration</a>
  •         </li>
  •     </ul>
  • </div><!--End portfolio filters -->

  1. Change the text of <a> anchors to match your own categories. Delete or add more to have as many as you need. Leave the class active to the first list item, as when the window loads all projects will be visible.

  2. Change the value of the data-filter="" attribute to match the categories you entered above. DO NOT forget the dot (.), cause these data will be used as classes next.


Note: If for some reason you don't want to have the filtering effect, but you want to always show all of your projects, just delete the entire div#filter-works.


Single Projects

After the Portfolio Filters section you see the SINGLE PROJECT ITEM section. As you can see the markup consists of two parts:

The Main markup. This is what is being seen initially. An article with the project thumb and a hover mask with the project title and subtitle. You should not alter this markup, unless you know what you are doing.

  • <!-- ==============================================
  • SINGLE PROJECT ITEM
  • =============================================== -->    
  • <article class="project-item web-design">
  •     
  •     <img class="img-responsive project-image" src="assets/placeholder-320x210.jpg" alt=""><!--Project thumb -->
  •     
  •     <div class="hover-mask">
  •         <h2 class="project-title">Project Title</h2><!--Project Title -->
  •         <p>Subtitle</p><!--Project Subtitle -->
  •     </div>
  •     
  •     ...
  •     
  • </article>
  • <!-- ==============================================
  • END PROJECT ITEM
  • =============================================== -->
  1. Category Classes: Give the project the suitable category class(es) from those in filters, for the project to belong in one (or more) category. DO NOT delete the project-item class.

  2. Project Thumb: Provide the path to the project thumb in the src attribute of the img tag. Don't alter it's classes.

  3. Project Title: Within the hover-mask div, change the text of the project title. Do the same for the subtitle, show something like the client or a small description. Project subtitle is optional, but Title is not as this is going to be used in the Project Preview as well.


The Project Preview markup. This is what is going to show in the Project Preview modal window. You are free to alter this markup as you like, leaving just the classes sr-only and project-description as is.

  • <!--==== Project Preview HTML ====-->
  • <div class="sr-only project-description" data-images="assets/images/projects/full-10.jpg,assets/images/projects/full-11.jpg" >
  •     <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam sapien risus, blandit at fringilla ac, varius sed dolor. Donec augue lacus, vulputate sed consectetur facilisis, interdum pharetra ligula. Nulla suscipit erat nibh, ut porttitor nisl dapibus eu.</p>
  •     
  •     <p>Phasellus porta eros vel lacus euismod consequat. Phasellus eleifend, nibh non feugiat hendrerit, lacus enim adipiscing eros, a pharetra erat neque eget est. Quisque vitae aliquet urna. Integer suscipit lectus eu enim porttitor fringilla. Ut blandit, urna in auctor euismod, arcu eros pharetra metus, a porta purus libero a nibh.</p>
  •     <p>Nam eget urna pellentesque nisl ultrices dapibus. Mauris accumsan vehicula nisl, sed tempus mauris facilisis eu. Donec a iaculis nisi, quis malesuada justo. Pellentesque ut enim sit amet ipsum dignissim egestas. Morbi tincidunt rhoncus urna eget placerat.</p>
  •     <p class="text-center"><a class="btn btn-color1" href="#external-link"><i class="fa fa-arrow-right"></i>Visit Website</a></p>
  • </div>

  1. Project Slide(s): In the data-images attribute, provide the path(s) to the project slide(s) you want to show in the Project Preview slider. These images are going to be loaded only when user clicks on the Project thumb.

  2. Project Preview: Provide the markup of your choise for the Project Preview. The only ones that going to be auto-generated are the Slider and the Title.


Project Preview Modal

Right after the Portfolio Filters section you see the markup for the Project Preview modal window.

  • <!--==== Project Preview ====-->
  • <div id="project-preview" >
  •     <span class="close-preview">&times;</span>
  •     <div id="project-slider" class="flexslider"></div>
  •     
  •     <h1 id="project-title"></h1>
  •     <div id="project-content"></div>
  • </div><!--Project Preview -->

DO NOT alter this markup at all. This is the necessary markup for the Project Preview modal window. It's empty and it fills with the content provided above for every single project, everytime user clicks on the project thumb.

Twitter Feeds

Scroll to the TWITTER FEEDS section.

  • <!-- ==============================================
  • TWITTER
  • =============================================== -->
  • <section id="twitter" class="add-padding bg-color1">
  •     <div class="container">
  •         <div class="row scrollimation fade-in">
  •             <div class="col-sm-1 twitter-icon">
  •                 <i class="fa fa-twitter"></i>
  •             </div>
  •             <div class="col-sm-11">
  •                 <div id="twitter-slider" class="flexslider" data-widget-id="345690956013633536" data-tweets-length="3"></div>
  •             </div>
  •         </div>
  •     </div>
  • </section>

Twitter Feeds section uses the twitterFetcher script to show your latest tweets. DO NOT alter this markup as it will result in layout break. Change only the data- attributes as described below:


Data Description
1 data-widget-id Your twitter widget ID. e.g: data-widget-id="345690956013633536".
2 data-tweets-length How many of your latest tweets you want to cycle through. Must be a number between 1 - 20. e.g:data-tweets-length="3"

HOW TO CREATE A VALID WIDGET ID TO USE

  1. Go to www.twitter.com and sign in as normal. Then go to your Settings page.

  2. Go to Widgets on the left hand side.

  3. Create a new widget for what you need eg "user timeline" or "favorites" etc.

  4. Now go back to Settings page, and then go to Widgets page again. You should see the widget you just created.
    Click edit.

  5. Now look at the URL in your web browser and you will see a long number like this: 345735908357048478. Use that as your Widget ID!


Note that the twitterFetcher script doesn't work on a local filesystem. So don't worry if you can't see any tweet. It will work like a charm when you publish your website!

Contact Form

Scroll to the CONTACT section and find Contact Form subsection.

  • <!--=== Contact Form ===-->
  • <form id="contact-form" class="col-sm-6 col-md-offset-1 scrollimation fade-left d3" action="contact.php" method="post" novalidate>
  •     
  •     <div class="form-group">
  •      <label class="control-label" for="contact-name">Name</label>
  •      <div class="controls">
  •         <input id="contact-name" name="contactName" placeholder="Your name" class="form-control requiredField label_better" data-new-placeholder="Your name" type="text" data-error-empty="Please enter your name">
  •         <i class="fa fa-user"></i>
  •      </div>
  •     </div><!-- End name input -->
  •     
  •     <div class="form-group">
  •      <label class="control-label" for="contact-mail">Email</label>
  •      <div class=" controls">
  •         <input id="contact-mail" name="email" placeholder="Your email" class="form-control requiredField label_better" data-new-placeholder="Your email" type="email" data-error-empty="Please enter your email" data-error-invalid="Invalid email address">
  •         <i class="fa fa-envelope"></i>
  •      </div>
  •     </div><!-- End email input -->
  •     
  •     <div class="form-group">
  •      <label class="control-label" for="contact-message">Message</label>
  •         <div class="controls">
  •             <textarea id="contact-message" name="comments" placeholder="Your message" class="form-control requiredField label_better" data-new-placeholder="Your message" rows="6" data-error-empty="Please enter your message"></textarea>
  •             <i class="fa fa-comment"></i>
  •         </div>
  •     </div><!-- End textarea -->
  •     
  •     <p><button name="submit" type="submit" class="btn btn-color2 btn-block" data-error-message="Error!" data-sending-message="Sending..." data-ok-message="Message Sent"><i class="fa fa-paper-plane"></i>Send Message</button></p>
  •     <input type="hidden" name="submitted" id="submitted" value="true" />
  •     
  • </form><!-- End contact-form -->

  1. For each form input change the label text, fontawesome icon and placeholder as needed.

  2. Then change the value of the data- attributes, that will be used by the validation script, for each input and button as described below.


Data Element Description
1 data-error-empty All inputs Error message if input has left empty.
2 data-error-invalid email input Error message if email is invalid.
3 data-error-message button Button text if form contains errors.
4 data-sending-message button Button text if form is validated and message is beeing sent.
5 data-ok-message button Button text when the message has been sent.

MAKE CONTACT FORM WORK

Open contact.php file with your favorite text editor.

Normally the only things you want to change are your email and your site's title for the autoresponder message. So, at the very top of the file change the value of those two variables.

  • <?php
  • $emailTo = 'yourmail@example.com';
  • $siteTitle = 'YourSiteTitle';
  • ...

That's it. Now the contact script will send the message user has entered to your email and an autoresponse to his email.

Tip: If you don't want to send an autoresponse just scroll down to the bottom of the file and comment this line:

  • mail($email, $respondSubject, $respondBody, $respondHeaders);

FURTHER CUSTOMIZATION

WARNING: Make sure you know what you are doing before proceeding to the following customizations!

Scroll to the bottom of the contact.php file and within the if(!isset($hasError)) conditional statement. This is where the messages are beeing sent to you and the user.

  • // upon no failure errors let's email now!
  • if(!isset($hasError)) {
  •     
  •     $subject = 'New message to '.$siteTitle.' from '.$name;
  •     $sendCopy = trim($_POST['sendCopy']);
  •     $body = "Name: $name \n\nEmail: $email \n\nMessage: $comments";
  •     $headers = 'From: ' .' <'.$email.'>' . "\r\n" . 'Reply-To: ' . $email;
  •     mail($emailTo, $subject, $body, $headers);
  •     
  •     //Autoresponse
  •     $respondSubject = 'Thank you for contacting '.$siteTitle;
  •     $respondBody = "Your message to $siteTitle has been delivered! \n\nWe will answer back as soon as possible.";
  •     $respondHeaders = 'From: ' .' <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $emailTo;
  •     
  •     mail($email, $respondSubject, $respondBody, $respondHeaders);
  •     
  •     // set our boolean completion value to TRUE
  •     $emailSent = true;
  • }

Change the structure and/or the text of the messages as you like to suit your needs.


Google Map

At the bottom of the file, right before the closing</body> tag, you can see the configuration of the Google Map.

  • <script>
  •     var mapPoint = {
  •             'lat': 40.720099,
  •             'lng': -74.005764,
  •             'zoom' : 15,
  •             'infoText':'<p>250 W Broadway\
  •                         <br/>New York\
  •                         <br/>NY 10013</p>',
  •             'linkText':'View on Google Maps',
  •             'mapAddress':'250 W Broadway, New York, NY 10013',
  •             'icon': 'assets/images/pin-dark.png'
  •         };
  •     
  • </script>

Option Description
1 lat Point Latitude
2 lang Point Longitude
3 zoom Map zoom factor
4 infoText Text of infowindow. Html is allowed.
5 linkText Text for Google Maps link.
6 mapAddress The actual address of the point. It will be used when the point is clicked and redirects to Google Maps site.
7 icon The marker icon.

Theme Colors

Graphista comes with 9 predefined color schemes.
To use the one you like just replace the styles.css file with the one of your choice.

  • <!-- ==============================================
  • CSS
  • =============================================== -->
  • <link rel="stylesheet" href="css/bootstrap.css">
  • <link rel="stylesheet" href="css/font-awesome.css">
  • <link rel="stylesheet" href="css/flexslider.css">
  • <link rel="stylesheet" href="css/styles.css">

Color CSS Filename
1 styles-1.css
2 styles-2.css
3 styles-3.css
4 styles-4.css
5 styles-5.css
6 styles-6.css
7 styles-7.css
8 styles-8.css
9 styles-9.css

Scrolling Animations

As you scroll the page you 'll notice that several components are beeing animated when you reach them.
To make a component animate just add the class scrollimation and one of the effects classes, as seen below.

  • ...
  • <div class="row services scrollimation fade-left">
  • ...

Currently available effects are:

Effect Class Description
1 scale-in The component scales up while fading in. This effect is used on service items.
2 fade-in The component fades in. This effect is used in Twitter section.
3 fade-left The component is animating from right to left while fading in. This effect is used on the third team member.
4 fade-right The component is animating from left to right while fading in. This effect is used on the first team member.
5 fade-up The component is animating from bottom to top while fading in. This effect is used on section headers.

Add delay to an animation using the d1,d2,d3,d4 classes as seen below.
This is usefull for multiple animations on the same line like the social links on the demo.

  • ...
  • <div class="... scrollimation scale-in d1">
  • ...

Currently available delay classes are:

Effect Class Description
1 d1 Adds 200ms of delay.
2 d2 Adds 400ms of delay.
3 d3 Adds 600ms of delay.
4 d4 Adds 800ms of delay.

Change Log

Version 1.1.3 March 05 2016


  • Update: twitterFetcher script

Version 1.1.2 November 27 2015


  • Update: Bootstrap v3.3.6
  • Update: FontAwesome v4.5.0
  • Fixed: Mobile overflowing issues
  • Fixed: Fixed backgrounds flickering issue on Chrome

Version 1.1 May 30 2015


  • Update: Bootstrap v3.3.4
  • Update: jQuery v1.9.1
  • Update: FontAwesome v4.3.0
  • Updated documentation

Version 1.0 September 12 2014


  • Initial Release

THE END!

Once again thank you for purchasing this template.
If you have any questions that are beyond the scope of this documentation feel free to contact us via email:
support@q-themes.net.
*Do not forget to include your Licence ID, so we can verify your purchase!


Go to top.