Skip to content

1. Principles and practices, Project management.

1.1. Principles and practices

My idea for the final project is a modular hydroponic system for growing plants at home. Since people living in cities do not often have the opportunity to interact with nature due to lack of time, this project will give them the opportunity to grow a plant at home automatically, providing easier and more convenient plant care.

Sketch

1.2. Project management

Research

To streamline the work being carried out, it is necessary to document every step in detail. For this, first of all, it is necessary to organize the process of creating a website, which I worked on during the first week. By studying the works of previous years’ Fab Academy students, particularly Areg’s, Elen’s and Rudolf’s I started creating my website.

Programs that I used

  • Git Bash It’s a command line tool for Microsoft Windows. It provides an interface that allows users to run Git commands and interact with the repository.
  • Visual Studio Code It’s a command line tool for Microsoft Windows, Linux и macOS. It provides an interface that allows users to run Git commands and interact with the repository.
  • Python It’s a general-purpose programming language that is widely used in web development, software development, data analysis, and machine learning system development.I used it to avoid waiting for my push requests to load on the server for a long time, and to see the changes made immediately.
  • ChatGPT I use it to translate and correct the spelling of my thoughts.
  • Optimizilla I use it to compress JPEG, GIF and PNG images to the smallest possible size while maintaining the required level of quality.

Version control

Version control, also known as source code management, is used to track and manage changes to software code, helping development teams manage changes to source code.

The first steps

The first thing I did was log into gitlab.

Then downloaded and installed git bash. The process is very simple and does not require much time. A similar process for Visual Studio Code.

After installing these programs, I will need to run Git bash in the folder where the site materials will be stored carefully (the folder location does not change in any case).

Right-click on the folder, select “Show more options”, and then choose “Open Git Bash here”.

After launching the Git Bash terminal, I need to setup it for my GitLab account. To do this, enter these two commands.

    $ git config --global user.name "zhirayr-ghukasyan"
    $ git config --global user.mail "jirayr@gmail.com"

To check the current settings or diagnose unexpected Git actions, use the following command.

    $ git config --list

SSH key generation

It’s time to generate an SSH key. By using SSH keys for authentication on a remote GitLab server, you get rid of the need to enter a username and password every time you connect. I use ed25519 tipe of SSH.

At first, to generate a key is to enter a command in the terminal.

$ ssh-keygen -t ed25519 -C "<comment>"

The generated key is stored in a folder with the name .SSH. I copied it using the following command.

$ cat ~/.ssh/id_ed25519.pub | clip

After that, I will need to visit the GitLab website, find the “SSH” section, and insert the generated key.

Clone repository

First, I copied my GitLab repository. Here’s how to clone it.

After that, I need to enter the following command in the terminal and paste the copied link there.

 git clone "Copied-link"

In order for Git to start tracking changes to my site, I need to enter the following command.

    git add .

But because we were given a Julian’s pre-designed website tamplet, all I had to do was download the zip archive, replace the contents of my folder with the pre-downloaded one, and start redesigning.

Visual Studio Code

Now I need to open my repository folder in visual studio code for further work on my website.

How can this be done? left-click on the file > open folder… > choose your folder > and press select folder.

Basic Git commands

Here are some basic Git commands that I will use.

  • Git status - Тo find out about all my changes, it displays the current status of the working directory in Git.
    git status
  • Git add . - Тo track all the changed files and folders in a directory at once.
    git add .
  • Git commit - To add a commit that made it clear what changes had occurred.
    git commit -m "Commit"
  • Git push - Тo transfer the changes made to the remote repository.
    git push

Rendering

Python

Тo immediately see the changes made, download python. Make sure that the “add Python to PATH” checkbox is checked.

After installing python, be sure to check the versions to make sure that everything went well with the Python installation. Here is the command to check the version,

    python --version
    pip --version

Markdown

Markdown is a simple markup language that converts text into structured HTML. It allows us to add basic formatting to the text. MkDocs is a tool for generating static websites based on Markdown files in order to create project documentation. Next, I need to install MKDocs and Material using the terminal command. Install MKDocs and Material using the terminal.

Here is the command for this.

    pip install mkdocs
    pip install mkdocs-material
    pip install mkdocs-Git-revision-date-localized-plugin

And with this command, I can instantly see the changes made on my site, I just need to copy and paste the link below or press Ctrl+Left click on the link.

    mkdocs serve

Website customization