Use NAT on Ubuntu to Forward Network Access to a Router
By modifying Netplan configuration, enabling IP forwarding, and configuring NAT forwarding, Ubuntu can be used to forward network access to a router. The steps include clearing existing configuration, setting a static IP, installing and configuring DHCP services, and verifying that network sharing works correctly.
Understanding Blockchain
Blockchain is a structure composed of blocks linked in chronological order, with core characteristics such as decentralization, immutability, transparency, and security. Its workflow includes transaction creation, validation, packaging, and adding blocks to the chain. Application scenarios include cryptocurrencies, supply chain management, and financial services. Challenges include scalability, energy consumption, and user education. The underlying logic is based on distributed ledgers and consensus mechanisms to ensure data security and consistency.
Bidding Platform Based on Nest.js and Angular, with Jest Tests and CI/CD
This project is a bidding platform built with Nest.js and Angular, providing features such as user registration, project management, and bid management. It uses PostgreSQL as the database and Swagger to generate API documentation. The backend implements secure authentication with AWS Cognito, while the frontend provides a user-friendly interface for project display and bid management. The project uses Jest for testing to ensure code quality and GitHub Actions for continuous integration and deployment.
Install oh-my-zsh and Its Components on Ubuntu
Installing oh-my-zsh and its components on Ubuntu includes first installing zsh and git, then installing oh-my-zsh via wget. Next, clone the powerlevel10k theme and required plugins, and update the .zshrc file to apply the theme and plugins. Finally, install additional plugins such as zsh-bat and you-should-use, and update the system to ensure everything works properly.
Learning JavaScript
JavaScript is a dynamic, weakly typed interpreted language with characteristics such as being lightweight, cross-platform, and event-driven. Core concepts include variables and data types, control flow, functions, and asynchronous programming. JavaScript can run in browsers and Node.js, and supports many data types and operations such as objects, arrays, destructuring assignment, and modularization. Asynchronous programming uses callbacks, Promise, and async/await to handle tasks.
Getting Started with Node.js
Node.js is a JavaScript runtime based on the Chrome V8 engine, with features such as single-threaded execution, non-blocking I/O, modularization, and cross-platform support. Common modules include file system handling, HTTP services, path operations, and operating system information. npm is the package manager used to install and manage libraries. Asynchronous programming patterns include callbacks, Promise, and async/await, making Node.js suitable for building web services and real-time applications.
Angular-based Anime Showcase Website + Login/Registration (Cognito)
This project is an Angular-based web application for displaying and searching anime on Bangumi, with Cognito for user authentication. It supports automatic deployment to GitHub Pages using GitHub Actions for automated build and deployment. The main tech stack includes Angular 16, TypeScript, HTML, and CSS, and the project includes features such as login, registration, search, and an anime calendar.
Getting Started with Angular
This beginner guide to Angular covers project creation, Angular CLI commands, component and module structure, data binding, directives, services and dependency injection, routing and navigation, form handling, the HTTP client, RxJS, state management, performance optimization, PWA support, and internationalization. It includes detailed command examples and code structure references to help developers get started quickly.





