https://github.com/alaingalvan/alainxyz-comments
🔮 Utterances powered comments for the Alain.xyz blog.
https://github.com/alaingalvan/alainxyz-comments
alain blog comments graphics utterances
Last synced: 3 months ago
JSON representation
🔮 Utterances powered comments for the Alain.xyz blog.
- Host: GitHub
- URL: https://github.com/alaingalvan/alainxyz-comments
- Owner: alaingalvan
- License: mit
- Created: 2019-12-29T05:17:56.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-03-08T22:09:44.000Z (about 6 years ago)
- Last Synced: 2025-08-02T09:43:26.115Z (10 months ago)
- Topics: alain, blog, comments, graphics, utterances
- Homepage: https://alain.xyz/blog
- Size: 2.93 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 19
-
Metadata Files:
- Readme: readme.md
- License: license.md
Awesome Lists containing this project
README

# 🔮 Alain.xyz Blog Comments
[![License][license-img]][license-url]
All comments on the [Alain.xyz](https://alain.xyz/blog) are powered by [Uterances](https://utteranc.es/), a tool that uses Github issues as threads for blog post comments.
## How it Works
The site is comprised of 3 primary modules:
```bash
├─ daemon/ # Server Daemon
├─ backend/ # Express HTTP Server
├─ frontend/ # React Frontend Application
└─ portfolio/ # Personal Portfolio
```
### Backend
The **Backend** is a basic Express HTTP server, with the added functionality of being able to prerender React components to help reduce the time to interaction.
- [Node](https://nodejs.org/en/) - JavaScript based web server.
- [Express](https://expressjs.com/) - Middleware based web server framework.
- [MongoDB](https://mongodb.org/) - Basic non-relational database.
### Frontend
The **Frontend** is a React/Redux/Webpack application with that takes lots of artistic license.
- [React](https://facebook.github.io/react/) - Front-end framework view framework.
- [Redux](http://http://redux.js.org) - Unified Application State system.
### Daemon
The **Daemon** is responsible for keeping the server in sync with this Github repo (so **Continuous Integration**), and uses [Github's Repository Webhooks](https://developer.github.com/v3/repos/hooks/) to do so. Alternatives such as using a git remote are also possible, but this has the added benefit of supporting pull requests from here 😁.
- [Rust](https://rustlang.org) - easy to use systems language used for a continuous integration daemon.
- [Iron](http://ironframework.io/) - An Express like extendable web framework for Rust.
### Build
- [TypeScript](http://www.typescriptlang.org/) - Typed JavaScript.
- [Lerna](https://lernajs.io/) - Tool for managing multiple projects in one repo.
- [Webpack](https://webpack.js.org) - Compilation tool for JavaScript.
- [SystemJS](https://github.com/systemjs/systemjs) - an `import()` polyfill.
- [PostCSS](https://github.com/postcss/postcss) - CSS with postprocessing functions applied to its AST.
---
Check out the [blog post where I detail design decisions here](https://alain.xyz/blog/the-making-of-alain-xyz).
A few of the projects that influenced the design of this app were:
- [Wordpress Calypso](https://github.com/Automattic/wp-calypso)
- [TypeScript Samples](https://github.com/Microsoft/TypeScriptSamples/tree/master/imageboard)
- [ReactJS Essentials by Artemij Fedosejev](https://github.com/fedosejev/react-essentials)
- [GatsbyJS](https://www.gatsbyjs.org/)
## License
*All source code* is available with an **MIT license**, feel free to take bits and pieces and use them in your own projects. I would love to hear how you found things useful, feel free to contact me on Twitter [@alainxyz](https://twitter.com/alainxyz).
*All written articles and art* such as blog posts and artwork, etc. are **Copyright Alain Galvan, All Rights Reserved** unless stated otherwise. If you would like to feature them in a research paper however, feel free to use the following bibtex:
```tex
% If you're using a different blog post, replace the title, month, and year appropriately.
@misc{galvan2020,
title={A Comparison of Modern Graphics APIs},
url={https://www.alain.xyz/blog/comparison-of-modern-graphics-apis},
journal={Alain.xyz},
author={Alain Galvan},
year={2020}
}
```
[license-img]: https://img.shields.io/:license-mit-blue.svg?style=flat-square
[license-url]: https://opensource.org/licenses/MIT