mini-ssg
MINI - A minimalist static site generator written in JS. (by mqnguyen5)
jellybean
By lyu4321
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
mini-ssg | jellybean | |
---|---|---|
11 | 12 | |
3 | 1 | |
- | - | |
0.0 | 0.0 | |
over 1 year ago | over 2 years ago | |
JavaScript | JavaScript | |
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.
mini-ssg
Posts with mentions or reviews of mini-ssg.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-26.
-
Publishing a project to npm
#issue-23
-
How I Set Up GitHub Actions for a Python Project
Luckily, my newly added test case didn't fail the CI workflow, so my PR got merged eventually.
-
Adding Continuous Integration with GitHub Actions 🛠
There are different options to set up GitHub Actions. You can either choose to do it manually or choose from numerous templates. My project, MINI, works just fine with the Node.js template:
-
Prototype: Markdown and static assets support for SSG 🛠
With the features in mind, I began by creating an issue on my repo, detailing what I needed to do, and providing suggestions or resources to help me accomplish it. Implementing the code was not too difficult, and I realized that I could add more features to improve my SSG. After being satisfied with how the markdown support works, I began editing the issue to include support for static assets. It is a nice feature to have in my project, as I think images and favicons are common in most web pages today.
-
Refactoring & Rebasing
My project 💻: mini-ssg Rebase commit 📝: f42e5b6
-
Working with git remote - approving new feature
This week, I decided to work with Luke to implement the new feature of adding support for config file to his SSG tool. The implementation didn't take much time since his code is very clear and doesn't have any major bugs to worry about. With the new feature, the tool now accepts config JSON file when option --config is used. This option will read the config file and generate HTML files based on the options provided within the file, and ignore all other options passed in from the command line. After some modifications, he agreed to merge my pull request
-
Branches and merges
In my static site generator, MINI, I decided to implement 2 new features and created different branches for each of them:
-
OSD600 - Contributing To Other Repo
I decided to work on Minh Quan's repo in this lab and implemented Heading1, Heading2 and Links syntax features for his SSG.
-
Getting started with pull requests
Similar to what I did, Vivian also reached me through Slack and asked to review her pull request. While going through the changes that my partner made, I noticed some minor issues. I decided to leave some comments at where they were, explaining how I wanted to change them and included some links for further reading/reference. With the feedback, Vivian quickly fixed the issues and asked me to looked at the code again. Additionally, I asked her to send me on Slack some screenshots of her tests and outputs. After verifying that everything was working as intended, I decided to merge the pull request and not forget to leave her a small token of appreciation.
-
Creating an SSG and working with others
In testing Luke's code, I found that the --version flag did not correctly print the program name. In addition, his program was not able to correctly read file names that contained spaces. Finally, I noticed a formatting issue in the generated html code. Luke used a library called create-html, which made generating the html very simple, but the formatting of the output was a bit messy (for example, incorrect indentation or a lack of spacing).
jellybean
Posts with mentions or reviews of jellybean.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-18.
-
Adding Continuous Integration to a Project
After writing a few unit and E2E Integration tests for my static site generator, Jellybean, last week, this week I added Continuous Integration to the repository. It was very easy to set up and is useful if you or other contributors forget to manually test while making changes. It ensures that changes or pull requests made to the main branch are automatically tested by running a workflow.
-
Adding Continuous Integration - GitHub Actions
For Leyang's project, I found that getHtlmlTitleBody() was not tested yet so I decided to contribute some tests to it. This function accepts the content of the file as a string and a boolean indicating whether it's a text file or not, it then returns an object with 2 properties: title and body.
-
Testing Using Jest
This week, I continued working on my static site generator Jellybean and focused on creating and running tests for the program. I decided to use Jest for testing, mostly because it was what was recommended and I have tried other tools such as Jasmine and Karma before, but not Jest, so I thought this would be a good opportunity to learn how it works.
-
Adding Markdown Support to a Static Site Generator
For my own static site generator, Jellybean, one feature of Docusaurus that I wanted to implement was full markdown support. This is because my static site generator previously only had partial markdown support, which is not very user-friendly. Thankfully, there are a some great open-source libraries which can provide full markdown support and I decided to use markdown-it for my project.
-
Refactor and Rebase
It was my first time learning about interactive rebases and I found this process to be so useful as it gives you so much freedom in customizing your commits. I used the interactive rebase command (git rebase main -i) to squash all my commits into a single commit. In addition, I used the git commit --amend command to modify my commit message and add more details. After this exercise, I feel so much more confident in using rebases to modify my commits and project history.
-
Supporting JSON config file
This week, I worked on Leyang Yu Static Site Generator project called jellybean. I added a new issue on her repo to let her know that I wanted to add a new --config option to support a JSON config file. Luckily she agreed, so I got started right away.
-
Working Remotely (in Git)
I also received an issue and pull request to my repo. I had a lot of great discussion with Francesco and he mentioned that he was "really seeing the benefit of code review now" after I tested his changes and made several suggestions. I was able to test his code by adding his repo as a remote to my local repo and creating a tracking branch. After going back and forth a few times and fixing all issues, I was successfully able to merge Francesco's branch with my main branch.
-
Adding Features - Branches and Merges
I've been working on a static site generator called Jellybean over the past few weeks and this week, I wanted to add a few more features:
-
My First Collaboration!
For this lab, I decided to contribute to Leyang Yu project, Jellybean SSG, . He is also using JavaScript so I decided that it would be a good idea to try adding to his project, so I filled and Issue Issue #6.
-
Working with Others Part 2: Pull Requests
Similarly, Gustavo created an issue, added markdown support, and created a pull request for my repo. I provided some comments.
What are some alternatives?
When comparing mini-ssg and jellybean you can also consider the following projects:
Docusaurus - Easy to maintain open source documentation websites.
yargs - yargs the modern, pirate-themed successor to optimist.
mh-ssg
GMOT-SSG - My Static Site Generator!
markdown-it - Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed
ssgApplication
silkie - Static site generator with the smoothness of silk
purl - Pretty print the contents of a resource at a URL