× Home Weekly activities My Project Agreement About me

Eric NDAYISHIMIYE

WEEK1 ACTIVITIES: "Principles and Practices, Project Management"

We have two exercises in the Fab Academy's first week. Principles and practices and Project management.
The assignment's evaluation criteria are listed below.

  • Sign the student agreement.
  • Sketch up my final project concept(s)
  • outlined its functions and intended users.
  • Created a webpage and explained your process
  • presented yourself
  • outlined procedures for uploading files to the archive
  • To the class archives pushed signed the student agreement and submitted it.

  • Creating my website:

    I decided to use Theme wagon template after googling many websites.

    The design is fully responsive, and layouts are compatible with all the latest browsers.

    It includes hero header, slider, call to action button, carousels, burger menu, etc. in the box. This theme is based on a well-commented and well-organized code structure that allows quick customization. Eflyer is usable right off the bat though it is always tweakable according to your requirements. In conclusion, make a top position on the web with Eflyer and get it rolling.

      Key Features
    • Bootstrap 4
    • Clean and minimal design
    • Cross-browser compatibility
    • Fully responsive
    • Multi-page template
    • Hero header
    • Call to action button
    • Slider on the header
    • Drop-down menu
    • Search option
    • Off-canvas navigation
    • Burger menu
    • Product carousel
    • CSS3 loader
    • FontAwesome font icons
      In The Box
    • All demo images
    • 4 HTML files
    • CSS files
    • Font Icons
    • JavaScript source files
      Libraries and Plugins
    • Bootstrap 4
    • Owl carousel
    • FontAwesome
    • Fancybox

    Web template before any modifications




    I use Visual studio,Visual code studion is a text editor that lets you edit your code almost in all programing languages with the help of many plugins, so i decided to use VS code to edit my html and CSS files which made up my website and run simulations to preview how the website would appear before uploading website status. I begin by making edits to the template, altering the colors, adding new pages for assignments, the introduction, the main project, and the menu.

  • I downloaded visual studio tool from here.
  • The following pictures shows steps to download and install visual studio code.

    VSCODE IMAGE

    Downloaded template was opened using visual studio code and resulted into the following picture before customization

    web uncostomized

    After customization, the files were arranged in the following structure


    vscode customized

    The bellow image shows the resulted website after editing

    VSCODE IMAGE

    CLoning the remote repository

    The next step was to clone my remote repository to my computer so that I can replace the existing template which was provided in remote repository with my new modified template which includes all documentation I have done so far

  • Joining the Fablab Network:

    Step 1: Signing in via the link and password shared on my email to access Fablab community signin page.

    Step2: Homepage showing successful login

    Step3: Joining Fab cloud to use version control

    Step4: Authorizing access

    Step 5: Gitlab cloud dashboard
Choosing Version Control Protocol
there are serval web version controll protocol available that help the use to keep his/her web syncholized within these serval web version control protol like
Codeville
Codeville was a distributed revision control system. It was written by Ross Cohen using Python, with some design work done by his brother Bram Cohen. It uses an innovative merging algorithm called the "Codeville merge". A new merge algorithm called "Precise Codeville" or "pcvd" merge was under development. The project has now been abandoned. Codeville was self hosted and also used by BitTorrent, Inc and Mosuki.
darcs
Darcs is a free and open source, cross-platform version control system, like git with a very different approach: focus on changes rather than snapshots. Darcs offers a free way of working, and a simpler user interface. Darcs does not require a central server, and works perfectly in offline mode
Git
GIT is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for source code management in software development,[8] but it can be used to keep track of changes in any set of files.
and more clik here to see more

WHY DO WE USE GIT

Git is a software that is used for Version Control. It is free and open source. Now, let’s understand what is Version Control.Version Control is the management of changes to documents, computer programs, large websites and other collection of information. There are two types of VCS:
  • Centralized Version Control System (CVCS)
  • Distributed Version Control System (DVCS
  • Git allows a team of people to work together, all using the same files. And it helps the team cope with the confusion that tends to happen when multiple people are editing the same files. more Question and answer about GIT
    Install and configure Git
    download git based on your Operating system and install it in your computer.
    Creating my repository:
    GitVersion Control installation

    Git Configuration

    after installing git Open a terminal/console and and setup your git , for me i used these commands:

    Git global configurations

    git config --global user.name "ndayishimiyeeric"

    git config --global user.email "ndayishimiyerik@gmail.com" 

    then it is time for cloning the repository of your FabLab (fablabrwanda in my case) to a local repository
    First of all i have to clone my fablab repository typing

    git clone git@gitlab.fabcloud.org:academany/fabacademy/2023/labs/rwanda/students/eric-ndayishimiye.git


    a new repository is created in document so after that i replace all files i founded in folder have the name which is the same as my student id( if you do not know your id check your mail received after inscription on fabacademy you will found your students id or visit fabacademy website check your academic year and browser in student then look your id) in FabAcademy so after that I have to push every thing online to do this i have to create SSH key
    Generating an SSH key pair on Windows 8/8.1/10
    Install git for Windows - you can leave the default settings and just click "Next" all the time. Run the Git Bash app, which can be found in your Start menu. Run the command:

    ssh-keygen -t rsa


    It will ask for location and pass phrase. Accept the default location (usually C:\Documents and Settings\username\.ssh\ or C:\Users\username\.ssh) by pressing Enter. The program will generate your key pair and will output a few information like:

    Your identification has been saved in /c/Users/user/eric-ndayishimiye/.ssh/id_rsa.
    Your public key has been saved in /c/Users/user/eric-ndayishimiye/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:HivFdHYxN2+Jj/H/vXaeb5NEEDor66AxYlmbYB6dnfA eric-ndayishimiye@DESKTOP-JGQID96
    The key's randomart image is:
    
      +---[RSA 2078]----+
      |            o.+  |
      |            .=.o.|
      |     .  . oo.o..o|
      |    . =o.o .o =o |
      |   + + ES. . ..o |
      |  o = oo oo    ..|
      |   = =..o.    . o|
      |  . . +.o      +*|
      |     .   .    .=X|
      +----[SHA256]-----+
    
    

    Note down the path of the public key (in my case it was /c/Users/eric-ndayishimiye/.ssh/id_rsa.pub) and copy your SSH key to clipboard to be used in your GitLab and paste your SSH key
    PUBLISHING WEBSITE ONLINE
    For publishing my web I used the following git commands:
    • git init To create a new Git repository.
    • git add . To save or add changes/updates in the working directory to the staging area. And tells Git that I want to include updates to a particular file in the next commit.
    • git commit -m "message" Similar to saving a file that's been edited, a commit records changes to one or more files. I also have to provide a short message to describe what I changed.
    • git pull (to download the local repository to the last version of the online repository. This is very useful if several people are working on the same repository).
    • git push To upload local repository content on my computer to a remote repository on GitHub internet hosting service.
    • git status To display the state of the working directory and the staging area. It also allows me to see which changes have been staged, which haven't, and which files aren't being tracked by Git.

    Image showing implementation of git commands in cmd:

    © 2023 | Eric NDAYISHIMIYE | All Rights Reserved