Giter VIP home page Giter VIP logo

ssgnode's Introduction


Full stack developer with a front end focus
UI/UX Designer


JavaScript logo Typescript logo Vuejs logo Angular logo Figma logo


Large project contributions

Repo Description Used
7tv Twitch.tv extension + website                                       Vue.js logo Go logo Figma logo
Telescope A blog parser React logo Jest logo Docker logo JavaScript logo
Scuffle A live streaming platform Rust logo Svelte logo

Solo/small projects

Repo Description Used
KOTGH-Front Web version of King of the Garbage Hill Vue.js logo Figma logo TypeScript logo
SSGNode Static site generator                                       Node.js logo JavaScript logo
D2RU Destiny 2 community auth Angular logo TypeScript logo
King of the garbage hill Mafia-style game through a discord bot C# logo Figma logo Photoshop logo
SkyClanParser Microservice parser API for Sky2fly Docker logo Express.js logo TypeScript logo

Old/deprecated projects

Repo Description Used
BetterBTP Chrome extension to enhance website readability CSS3 logo JavaScript logo
MailGunAPI API for Mailgun C# logo .NET logo JavaScript logo
Layout editor Drag and drop layout editor Express.js logo jQuery logo JSON logo JavaScript logo

ssgnode's People

Contributors

japneetsingh035 avatar jiahua-zou avatar juuuuuuun avatar sirinoks avatar

Watchers

 avatar  avatar

ssgnode's Issues

Implement yargs

Change manual command line arguments handling for yargs. It improves cleanliness and code clarity.

Remove dist and other generated files

You want to put source code in git, but not files which are generated by that source code. If you're working with C/C++, you would put the .c or .cc files in, but not .o or .a or .exe, etc. Same with node, where we don't usually put dist into the repo.

You can remove it with git rm -fr dist and then add a .gitignore file to tell git not to add things not needed by git:

npx gitignore node

Lab4: New SSG Feature: Support --config with Config File

This issue, I will be implementing a new feature that will allow the user to use the config file instead of typing out all of the command arguments.

The config file will be formatted like:

{
  "input": "./site",
  "stylesheet": "https://cdn.jsdelivr.net/npm/water.css@2/out/water.css",
  "lang": "fr"
}

Add lang option

Optional -l, --lang, and/or \l flag, which indicates the language to use when generating the lang attribute on the root element. For example, --lang fr would mean that the HTML documents are in French, and would include , while -l pt-BR would mean the text is using Brazilian Portuguese: . By default, use en-CA for Canadian English.

Error codes

Make sure that the program exits with appropriate error codes in all cases. If there are no errors, exit with 0. Otherwise, exit with a non-zero exit code (e.g., -1).

Adding support for a configuration file.

This feature will allow the user to create a config file and specify the value for all the arguments for this file. After the user can just use a --config or -c and the path to the config file. This is an example of what the JSON file would look like:

{
  "input": "./docs",
  "output": "./web"
}

Allow Markdown to wrap

In https://raw.githubusercontent.com/sirinoks/SSGNode/main/README.md you have trailing \ characters after many lines. I would avoid this and let the text wrap at different widths, depending on the user's viewport.

Another improvement you could make in this file is to wrap your command examples in 3 backticks instead of using a blockquote:

npm install

vs.

npm install

See https://docs.github.com/en/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks

Add Markdown support

I would like to work to modify the file handling so that it supports both .txt files as well as .md
If the file extension is .txt, process the file exactly the same way it is done now (i.e., no changes)

Add more option

need upgrade
You can add more options to verifying --h and -help, also -version, --v is possible

Code duplication

In function "finalize" lines 119 and 126 use the same code. I know it can be written better, but I don't know how

Improve error handling

Currently, your error handling is throwing an error, which will get "caught" by the user. This will mean the program crashes, and the user gets a cryptic error and stack trace.

A better approach is to provide a useful/actionable error message, so the user can fix things, and then exit the program with an error code:

if(err) {
  console.error('Helpful error message here...');
  process.exit(-1);
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.