Develop Decentralized Cross-platform Apps - Software Engineering Exercise 2020-2021
Spring week 15
- WeChat official account backend UI review
- Fastxt code review
- druid UI
- Functional programming
- val vs var
- lens concept
Spring week 14
- Static website generators
- docusaurus
- zola
- mkdocs
- vuepress
Spring week 13
- Time Tracking
- gtt
- GitLab CI/CD
- Docker
- xshell: Rust scripting
- Visualization
- d3.js, dc.js
Spring week 12
- VSCode with rust-analyzer
- code review
localnative_iced
main function - Rust GUI graphics driver
- Async overview
Spring week 11
-
Code review
- iced example color_palette and color space
-
Overview of Rust bridge for Android and iOS
- crate-type
- declarative UI and event handler pattern
- device emulator issues
Spring week 10
- Cargo
- manage package, run build and test
- Git GUI
- gitk, gitg
- Code review
localnative_bundle
Spring week 9
- Code review
- linked_hash_set
- localnative_iced PR overview
Spring week 8
localnative_iced
progress- Git branching management
- Gitflow
- AoneFlow
- Code review
qrcode-rust
- druid
view_switcher
,widget_gallery
example
Spring week 7
git remote add upstream
- demo
runebender
- Code review
- iced
tour
example
- iced
Spring week 6
- Code review
- iced
todos
example - druid
game_of_life
example
- iced
Spring week 5
- TodoMVC
- Code review of iced
qr_code
example- Rust module, struct and trait
Spring week 4
- git branch
- tig, gitk
- merge request
Spring week 3
- Spike
- druid layout
- Windows registry
- SMART goals framework
Spring week 2
- OKR, Agile framework
- Spike QR code in druid and iced
Spring week 1
- Roles in software project
- Software license
- AGPL
- Rust GUI frameworks
- druid
- iced
- qr code
Fall week 15
- Fall review
- GitLab issues
Fall week 14
- Electron
- share V8 JavaScript Engine with Chrome
- npm entry point
- npm run start/dev
- review n
- N_PREFIX
Fall week 13
- git
- gitk
- tig
- merge vs rebase
- build
localnative-electron
release artifact - n
Fall week 12
- shell script $ variables
- regex search and replace
- lock file
package-lock.json
andCargo.lock
script/release-appimage
ln -s /bin/sed gsed
- n
npm i -g electron-builder
Fall week 11
- Code review of browser extension
- browser extension
manifest.json
popup.html
andpopup.js
- app manifest
app.localnative.json
setup
- browser extension
- Software license
- md5 code checksum
Fall week 10
- Browser Extension Components & Data Flow
- DOM (HTML, CSS, JavaScript)
- Browser API
- .idea folder
- Markdown
Fall week 9
- Introduction to Local Native desktop application
- Electron
- npm
- Node.js
- Neon
- App manifest of browser extension
- Location of native messaging app manifest file
- Browser security
Fall week 8
- Communication between web extension and localnative-web-ext-host binary - stdin, stdout
- Review environment variable PATH
- echo $PATH
- export PATH in ~/.bashrc
- env
- source ~/.bashrc
- Review IDEA Rust plugin to build Cargo targets
- rustup
- rustc
- cargo clean, cargo build
Fall week 7
sqlite3
attach another database- Concept of consistency in ACID
- Local Native table creation
- SQLite table constraints
- not null, unique, primary key, autoincrement
- SQLite table constraints
- Linus Torvalds quotes on data structures
Fall week 6
- SQLite
sqlite3
command line tool- DB Browser for SQLite
- Concept of stdin, stdout
- pipe
|
- output redirection
>
- pipe
- Local Native demo syncing from iOS to Mac Desktop
Fall week 5
- Local Native browser extension and desktop application demo
- Local Native Rust core library entry point and crate type
- Local Native build script
- Atom editor
script/set-version
example- Symbolic link: gsed example
- Git GUI: tig, gitk, gitg
Fall week 4
- git clone localnative repo
- Setup rustup and cargo
- Setup IDEA with Rust plugin
- Environment variables and $PATH
Fall week 3
- Setup dotfiles
- git clone use https protocol
- Install Toolbox
- IDEA Community
- Android Studio
- PyCharm Community
- Install Atom
Fall week 2
- Install Ubuntu 20.04 LTS in VirtualBox 6.1
- Unchecked
Enable Audio
- Unchecked
- Installed Docker Desktop