Digital Portfolio

From Coder Merlin
Within these castle walls be forged Mavens of Computer Science ...
— Merlin, The Coder


A digital portfolio is an authentic, intentional, organic multimedia exhibit of student growth, self-reflection, talent, and achievement—both for oneself and for others (teachers, parents, guardians, colleges, potential employers, etc.)

Create your Digital Portfolio on GitHub[edit]

  1. To get started, be sure to set up your SSH key as described in Token Allocation.
  2. Create a new repository on GitHub named  <username> .github.io, replacing  <username>  with your GitHub username. Do not add any files to the repository.

Create your Digital Portfolio on the Server[edit]

1. Create a new directory called Digital Portfolio in your home directory.

jane-williams@codermerlin:~$ cd

jane-williams@codermerlin:~$ mkdir "Digital Portfolio"

2. Create a link to the new directory from your www directory, which is the only directory from which your web server will serve files.

jane-williams@codermerlin:~$ cd ~/www

jane-williams@codermerlin:~/www$ ln -s ~/Digital\ Portfolio "Digital Portfolio"

3. Create a file to set the permissions of both directories to allow the web server read and traverse access.

jane-williams@codermerlin:~/www$ emacs setPermissions.sh

Into this file, add the following:

#!/bin/bash

# Allow this and descenant directories to be traversed by everyone, ignoring hidden directories
find -L "$PWD" -not -path "*/.*" -type d -exec chmod a+X {} \;

# Allow everyone read access to all files in this hierarchy with an extension of
# .html, .png, or .jpg
find -L "$PWD" -not -path "*/.*" -type f \( -name "*.html" -o -name "*.png" -o -name "*.jpg" \) -exec chmod a+r {} \;

Save the file and exit emacs.

Set the permissions of this file:

jane-williams@codermerlin:~/Digital Portfolio$ chmod u+x setPermissions.sh


4. Any time you add a new file, execute the script:

jane-williams@codermerlin:~/Digital Portfolio$ ./setPermissions.sh

5. Create an index.html File.

jane-williams@codermerlin:~/Digital Portfolio$ emacs index.html

Into this file, add the following:

    <html>
        <body>
            <p>Hello, world!</p>
        </body>
    </html>

Save the file and exit emacs.


6. Create a .gitignore File.

jane-williams@codermerlin:~/Digital Portfolio$ emacs .gitignore

Into this file, add the following:

\#*\#
*~
*.sh

Save the file and exit emacs.

7. Add and commit the files.

jane-williams@codermerlin:~/Digital Portfolio$ git init

jane-williams@codermerlin:~/Digital Portfolio$ git add .gitignore index.html

jane-williams@codermerlin:~/Digital Portfolio$ git commit -m "First commit"

8. Add the GitHub remote location as an origin for the local repository.

jane-williams@codermerlin:~/Digital Portfolio$ git remote add origin git@github.com: <username> / <username> .github.io.git

9. Finally, publish the repository.

jane-williams@codermerlin:~/Digital Portfolio$ git push -u origin master

10. Verify that your portfolio has been published by using a browser and visiting https:// <username> .github.io.