shinny-ssg
By hphan9
glazed-donut
Static Site Generator (generates full static HTML website given text files) (by dbelokon)
shinny-ssg | glazed-donut | |
---|---|---|
6 | 9 | |
0 | 1 | |
- | - | |
0.0 | 1.8 | |
over 2 years ago | over 2 years ago | |
C# | C# | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
shinny-ssg
Posts with mentions or reviews of shinny-ssg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-14.
-
Writing tests for CLI tool
I want to test how my tools generated files and folders in the destination with different arguments passed to the program. However, in my old code, I put all the logic of working with arguments in the static int main( string[] args) function. I could not use Interface and Dependency injection to mock the CLI tools because CommandLineUtils does not have an interface library. Luckily, I found this guidance from the owner of CommandLineUtils, and he advised that "Split the command-line argument parser and application execution into separate class structures" to test various options programmatically. It is a great suggestion, and I rewrote my program by adding class CommandLineOptions and adding logic to class Generator to make it works with CommandLineOptions. I can kill two birds with one stone by this change: code refactoring and writing better tests. Another problem I had was my folder structure. Before, I put the project's sln file, .git file , and src files in the root of the folder. However, when I added a new test project for Shinny-SSG, I had it outside my git folder, and it would be impossible to commit the change and put it in my remote repository. To resolve this, I had to change my folder structure to this:
-
Docusaurus
This week, I learn about Docusaurus- an awesome static-site generator. The application helps building a single page application with just a few commands. The application is beginner friendly and it can generate html page from React Component or markdown file read more.It also has advanced features and plugins to provide more options for users. I really impressive about what this tool can do. The support markdown feature is cool and it would be a good additional for my Shinny-SSG project. I have filed an issue and I will use CommonMark.NET package for achieving the goal. Borrowing the idea from Docusaurus, I added some metadata to my Page class so when a new HTML Page generates, it will have better SEO Pr. In the future, I would love to add Support for React components or Static Assets features for my project.
-
Refactoring Code
This week, I was working on refactoring my project - Shinny-SSG and experimenting Git Rebase command.
-
First pull request
I had the pleasure of receiving the contribution from Andrew to add markdown processing feature to my application. He made the change to the code very quickly and it was exactly what I would do if I were the one to implement it. I especially liked the way he used LinQ in createSubfolder function. It was brilliant and now I know one more way to work with file. Andrew's PR
-
Breaking Code and Letting Others Break My Code
After I built the Glazed Donut, I had a wonderful opportunity to explore a similar project shinny-ssg by doing some testing and reviewing and get my glazed-donut tested as well.
-
Working together in Open Source Projects
After finishing the features of my command line application tool shinny-ssg, I was working with Diana to cross-check the source code of our projects. In general, we have to check for bugs, suggest improvement, and file issues on Github. We both use C# and .NetCore 3.1 to create the projects and therefore, the experience was quite exciting and I definitely learned a lot. It is just a pleasure to work with Diana. I have known her previously from my database and web classese and knew that she is such a hard working and bright girl. In addition, Diana worked at the company which I am now doing the internship at. She has used C# for a long time and have great knowledge about it. This was very evident from her code.
glazed-donut
Posts with mentions or reviews of glazed-donut.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-20.
-
Releasing glazed-donut to the World🎉✨
For the past week, I have been researching on where to release my command line interface (cli), glazed-donut.
-
Creating a CI pipeline for yassgy
For this week, I set up a CI pipeline for yassgy with GitHub Actions. I also contributed to glazed-donut, by creating a few test cases.
-
First Time Participating in Hacktoberfest
Throughout the last months while I was working as a Software Developer Intern and on my my ssg repo, I was hardly ever touching front end. I missed working on front-end a lot, so as my first PR for the #hacktoberfest challenge, I decided to take on a small issue related to front end.
-
Crazy Cleaning Marathon and Rebasing Torturing
This week I was doing some refactoring for my glazed-donut repo. Since its creation, the features kept coming in every week, but there was no refactoring done whatsoever, so... it got pretty messy😅
-
Working on Different Branches in Parallel
This time, I've added two features for Glazed-Donut. It now supports the --lang (or simply -l) command, where you can specify a language tag (ex: fr-CA for Canadian French) and it will set the lang attribute in the generated HTML files to whatever value you put. By default, it will set the lang attribute to en-CA. It is done so that the browser can know what language the contents of the file are, and how it can better interpret them.
-
I've Got a Cute PR
Irene also added a similar feature to my glazed-donut repo. The feature she has added was a Markdown file support that's able to convert all # into
-
Breaking Code and Letting Others Break My Code
After I built the Glazed Donut, I had a wonderful opportunity to explore a similar project shinny-ssg by doing some testing and reviewing and get my glazed-donut tested as well.
-
Working together in Open Source Projects
I tested her application glazed-donut with all test cases and her code nailed it. All the features worked as expected and it generated appropriate messages to the users when there were any errors/exception. The only problem I could find about it is in generateHTML method , which she should have replaced the with white space. Other than that, just a few minor typos on the read me file, but nothing major. When she reviewed my code and tested my app, I appreciated that she really spent the time to check every detail, giving me very sound advice and helped me file bugs which I did not find before. First, she mentioned the naming convention in C# and explained in details the good practices in the industry. Second, she found a bug in my Page class which created an extra tag. Third, my exception handling was not good enough and she guided me to make it better. In the end, I am able to fix most of the issues but I need more time to improve the code and make it flawless.
-
Glazed Donut: Release 0.1
You can view the project here.
What are some alternatives?
When comparing shinny-ssg and glazed-donut you can also consider the following projects:
CommandLineUtils - Command line parsing and utilities for .NET
ssgApplication
xUnit - xUnit.net is a free, open source, community-focused unit testing tool for .NET.
Command Line Parser - The best C# command line parser that brings standardized *nix getopt style, for .NET. Includes F# support
OSD600-SSG
badge-generator - Magically generate Markdown badges for your docs 🛡️ 🦡 🧙
yassgy