Week 1 - Setup, tools, CLI and Git

Intro to the CLI

Files and folders

Paths

Basic scripting

Node.js Setup

VSCode setup

Intro to Git

Intro to Github

Markdown

Practice

Assignment

Back to core program

Week 1 Assignment

Task 1 – Bash script

In this task, we are going to create a script that sets up a project with a folder structure and a git repository.

Create a bash script named setup.sh that does the following:

  1. Print the message "Creating project…" to the terminal
  2. Create new folder called “project”.
  3. Create new git repository inside the folder “project”
  4. Recreate the following folder and file structure (keep all the files empty for now)
project
├── README.md
├── resources
│   ├── family picture.jpg
│   ├── icon.png
│   └── logo.png
├── settings.conf
└── src
    ├── database
    ├── profile
    └── program.java
  1. Commit the changes to git with the message “initial commit".
  2. Wait for 3 seconds
  3. Print the message "Setup project…" to the terminal
  4. Write "Welcome to my project" to README.md
  5. Remove the profile folder
  6. Remove the family picture.jpg file
  7. Create a second commit with the new changes. Provide a descriptive message.
  8. Wait for 3 seconds
  9. Show the contents of the Resources folder
  10. Print the message "Setup javascript…" to the terminal
  11. Rename program.java to program.js
  12. Write console.log('JavaScript works!'); to program.js
  13. Run program.js using Node.js
  14. Create a third commit with the last changes. Provide a descriptive message.
  15. Show the contents of the user's home folder
  16. Print the message "All done!" to the terminal

Extra guidelines


Task 2 - Github profile

Let's make your GitHub profile beautiful. GitHub allows a special repository named <username>/<username> that becomes the profile README on your Github profile https://github.com/<username>.

  1. Follow this guide to create your profile repository: https://docs.github.com/en/account-and-profile/how-tos/profile-customization/managing-your-profile-readme
  2. Clone this repository to your computer, open VSCode, and edit the README file to add the following:
    1. Add a cool animated welcome message using https://readme-typing-svg.demolab.com/demo/

    2. Write a short introduction about yourself and what motivates you to learn new technologies.

    3. Create a list of things you're interested in (e.g., cyber security, web development, football).

    4. Create a list of technologies you'd like to learn (e.g., HTML, Python, Java).

    5. Add a "Top Languages Card" to your profile using https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#top-languages-card

      image.png

    6. Add a streak stats card with https://streak-stats.demolab.com/demo/

  3. Commit and push the changes to the remote repository, then check out your new profile.

Extra guidelines


Submission

The assignment repository can be found in https://github.com/HackYourAssignment/ with the name cXX-core-week-## (Replace XX with your cohort number and ## with the week number)

Follow the Assignment submission guide to learn how to submit the assignment


CC BY-NC-SA 4.0 Icons

*https://hackyourfuture.net/*

Found a mistake or have a suggestion? Let us know in the feedback form.