Skip to content

In Week-10 Challenge utilizing node.js, a command line application has been developed with the purpose of generating customized SVG file logos, facilitating the graphic design process for developers and their clients or company.

Slfdspln/Logo-Maker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo-Maker

Week-10 Challenge

License: MIT

Description

This app empowers freelance web developers to create custom logos without hiring a graphic designer. It uses inquirer to prompt users for logo preferences, such as up to three characters of text, text color, and shape (triangle, square, or circle) with a corresponding color. After answering the prompts, the app generates an SVG file with the user's selections. I also implemented unit testing for the first time, with a test suite consisting of three tests to ensure accurate shapes and colors. This app showcases the potential of back-end developers and the importance of unit testing, even for small projects. I added minor error handling for the first prompt, limiting text input to three characters. Future improvements could include additional error handling for SVG colors, more unit tests, and expanded font and polygon options. All in all, creating this app was a valuable learning experience that further developed my developer mindset.

Table of Contents

Live Screen Recording of Application Functionality

https://drive.google.com/file/d/1833SYkvuG8B2m24mdbQBHrW7q9xDsov1/view

Screenshots

logo generation

image

Screenshot 2023-05-03 at 4 46 41 PM

Screenshot 2023-05-03 at 4 45 04 PM

Examples of Generated Logos

Screenshot 2023-05-03 at 5 31 20 PM

Screenshot 2023-05-03 at 5 33 44 PM

Screenshot 2023-05-03 at 5 36 09 PM

Technologies Used

This project utilizes Node.js v16, inquirer v8.2.4 (node package manager), and file system module (node package manager), as well as jest v29.5.0 (node package manager) for conducting unit testing.

Installation

  1. Clone the repo: git clone git@github.com:Slfdspln/logo-maker.git
  2. To access, utilize VS Code. Installation is necessary if not currently installed.
  3. To install node.js v16 using the terminal, refer to the documentation for the appropriate command. For instance, if you have homebrew, you can use the command 'brew install node@16'.
  4. After installing node.js v16, use the command "npm init -y" in the terminal to create a package.json file for storing project files.

Using the terminal, run "npm i" to install the application's dependencies. For inquirer and jest, developers can install them directly from the command line using "npm i inquirer@8.2.4" for version 8.2.4 of inquirer and "npm i jest" for the latest version of jest. 6. Type "node index.js" in the terminal to run the application.

Usage Information

To run the application, navigate to its directory using the command line, install dependencies (npm i), and run the command "node index.js". Answer the questions that follow and once done, a message will appear confirming the logo generation. Check the newly generated SVG file for your new logo.

For unit testing, refer to the Test Instructions section.

Test Instructions

To perform unit testing, execute the command "npm run test" in the terminal. Currently, there is a single test suite containing three tests. This suite verifies that the render() method generates the correct string for the specified shape color in the associated SVG file.

Screenshot 2023-05-03 at 5 59 53 PM

License

NOTICE: This application is covered under the MIT License

Questions

Need more information? You can contact me through my LinkedIn or Email. Links provided below.

Click for LinkedIn -> LinkedIn

Click to Email -> Email

About

In Week-10 Challenge utilizing node.js, a command line application has been developed with the purpose of generating customized SVG file logos, facilitating the graphic design process for developers and their clients or company.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published