[project] site_name = "Jupiter Notes" site_url = "https://notes.umbra.mom/" site_description = "University notes & personal notes" extra_javascript = [ "javascripts/mathjax.js", ] extra_css = [ "stylesheets/diagrams.css", ] nav = [ { "Home" = "index.md" }, { "Home Server" = [ { "Reference" = "home-server/index.md" }, { "Host" = "home-server/host.md" }, { "Mercury VPS" = "home-server/mercury.md" }, { "Seedbox" = "home-server/seedbox.md" }, { "Portainer" = "home-server/portainer.md" }, { "Deployment" = "home-server/deployment.md" }, { "Operations / decisions" = "home-server/operations.md" }, { "Networking" = "home-server/networking.md" }, { "Storage" = "home-server/storage.md" }, { "Authentication" = "home-server/authentication.md" }, { "Backups" = "home-server/backups.md" }, ] }, { "Books" = [ { "Designing Data-Intensive Applications" = [ { "Preface" = "books/designing_data_intensive_applications/preface/index.md" }, { "Part 1. Foundations of Data Systems" = [ { "Chapter 1. Reliable, Scalable and Maintainable Applications" = "books/designing_data_intensive_applications/part1/chapter1.md" }, { "Chapter 2. Data Models and Query Languages" = "books/designing_data_intensive_applications/part1/chapter2.md" }, ] }, ] }, { "API Design Patterns" = [ { "Part 1. Introduction" = [ { "Chapter 1. Introduction to APIs" = "books/api_design_patterns/part1/chapter1.md" }, { "Chapter 2. Introduction to API Design Patterns" = "books/api_design_patterns/part1/chapter2.md" }, ] }, { "Part 2. Design Principles" = [ { "Chapter 3. Naming" = "books/api_design_patterns/part2/chapter3.md" }, { "Chapter 4. Resource Scope and Hierarchy" = "books/api_design_patterns/part2/chapter4.md" }, ] }, ] }, ] }, { "Lecture Notes" = [ { "Developing Maintainable Software" = [ { "Java Collections" = "lectures/dms/01_java_collections.md" }, { "UML Diagrams" = "lectures/dms/02_uml.md" }, ] }, { "Operating Systems and Concurreny" = [ { "Scheduling Algorithms" = "lectures/osc/01_scheduling_algorithms.md" }, { "Threads" = "lectures/osc/02_threads.md" }, { "Processes 4" = "lectures/osc/03_processes4.md" }, { "Concurrency 1" = "lectures/osc/04_concurrency1.md" }, { "Concurrency 2" = "lectures/osc/05_concurrency2.md" }, { "Concurrency 3" = "lectures/osc/06_concurrency3.md" }, { "Concurrency 4" = "lectures/osc/07_concurrency4.md" }, { "Concurrency 6" = "lectures/osc/08_concurrency6.md" }, { "Memory Management 1" = "lectures/osc/09_mem_management1.md" }, { "Memory Management 2" = "lectures/osc/10_mem_management2.md" }, { "Memory Management 3" = "lectures/osc/11_mem_management3.md" }, { "Memory Management 4" = "lectures/osc/12_mem_management4.md" }, { "Memory Management 5" = "lectures/osc/13_mem_management5.md" }, { "Memory Management 6" = "lectures/osc/14_mem_management6.md" }, { "File Systems 1" = "lectures/osc/15_file_systems1.md" }, { "File Systems 2" = "lectures/osc/16_file_systems2.md" }, { "File Systems 3" = "lectures/osc/17_file_systems3.md" }, ] }, { "Advanced Computer Networks" = [ { "Intro" = "lectures/acn/01_intro.md" }, { "MANET And DTN" = "lectures/acn/02_MANET_and_DTN.md" }, { "VANET And DTN" = "lectures/acn/03_VANET_and_DTN.md" }, { "DTN Protocols" = "lectures/acn/04_DTN_Protocols.md" }, { "DTN Advanced Protocols" = "lectures/acn/05_DTN_advanced_protocols.md" }, { "DTN Congestion Control" = "lectures/acn/06_DTN_congestion_control.md" }, { "Information Centric Networks" = "lectures/acn/07_information_centric_networks.md" }, { "Content Centric Networks" = "lectures/acn/08_content_centric_networks.md" }, { "DTN Security" = "lectures/acn/09_DTN_security.md" }, { "Drones" = "lectures/acn/10_drones.md" }, { "Connecting" = "lectures/acn/11_connecting.md" }, { "Naming" = "lectures/acn/12_naming.md" }, { "Reliability" = "lectures/acn/13_reliability.md" }, { "BGP" = "lectures/acn/14_bgp.md" }, ] }, { "Compilers" = [ { "Structures" = "lectures/compilers/01_structures.md" }, { "Arithmetic Grammar" = "lectures/compilers/02_arithmetic.md" }, { "Triangle Abstract Machine" = "lectures/compilers/03_TAM.md" }, { "Functional Parsers" = "lectures/compilers/04_functional_parsers.md" }, { "Functors" = "lectures/compilers/05_functors.md" }, { "Applicative Functors" = "lectures/compilers/06_applicative_functors.md" }, { "Functor Class of Parsers" = "lectures/compilers/07_coursework_notes.md" }, { "Compiling Variables" = "lectures/compilers/08_variables.md" }, { "Variable Environments" = "lectures/compilers/09_variable_enviroments.md" }, { "Compiling Branches" = "lectures/compilers/10_if_then_else.md" }, { "Monad Revision" = "lectures/compilers/11_monads_continued.md" }, ] }, { "Cryptography" = [ { "Introduction" = "lectures/cryptography/01_intro.md" }, { "Stream Ciphers" = "lectures/cryptography/02_randomness.md" }, { "Modern Stream Ciphers" = "lectures/cryptography/03_stream_ciphers.md" }, { "Data Encryption Standard" = "lectures/cryptography/04_data_encryption.md" }, { "Data Encryption Standard Continued" = "lectures/cryptography/05_des2.md" }, { "Finite Field Arithmetic" = "lectures/cryptography/06_finite_fields.md" }, { "Aes" = "lectures/cryptography/07_aes.md" }, { "Block_cipher_modes" = "lectures/cryptography/08_block_cipher_modes.md" }, { "Public_key_maths" = "lectures/cryptography/09_public_key_maths.md" }, { "RSA" = "lectures/cryptography/10_RSA.md" }, { "Diffie-hellman" = "lectures/cryptography/11_diffie-hellman.md" }, { "Elliptic_curves" = "lectures/cryptography/12_elliptic_curves.md" }, { "Elgamal" = "lectures/cryptography/13_elgamal.md" }, { "Digital_signatures" = "lectures/cryptography/14_digital_signatures.md" }, { "Hash_functions" = "lectures/cryptography/15_hash_functions.md" }, { "Crypto_protocols" = "lectures/cryptography/16_crypto_protocols.md" }, ] }, { "Ethics" = [ { "Why do we need Professional Ethics" = "lectures/ethics/01_ethics_intro.md" }, { "Professional Codes of Conduct" = "lectures/ethics/02_codes_of_conduct.md" }, { "Coursework Issue" = "lectures/ethics/03_coursework_notes.md" }, { "Professional Responsibilities" = "lectures/ethics/04_professional_responsibilities.md" }, { "Dependable Computing" = "lectures/ethics/05_dependable_computing.md" }, { "Secure by Design" = "lectures/ethics/06_secure_design.md" }, { "Data Protection by Design and Default" = "lectures/ethics/07_data_protection.md" }, { "Autonomous Systems" = "lectures/ethics/08_autonomous_systems.md" }, { "Responsible Research and Innovation" = "lectures/ethics/09_responsible_research.md" }, { "Coursework Submission" = "lectures/ethics/20153544_COMP3020_2020_21.md" }, ] }, { "Graphics" = [ { "Rendering" = "lectures/graphics/01_rendering.md" }, { "OpenGL, GLFW and GLSL" = "lectures/graphics/02_opengl_glfw_glad.md" }, { "Mathematics for Graphics" = "lectures/graphics/03_graphic_math.md" }, { "Transformations" = "lectures/graphics/04_transformations.md" }, { "2d to 3d" = "lectures/graphics/05_2d_to_3d.md" }, { "Rendering Pipeline" = "lectures/graphics/06_rendering_pipeline.md" }, { "Camera Essentials" = "lectures/graphics/07_camera.md" }, ] }, { "Information Visualisation" = [ { "Fundamentals of Information Visualisation" = "lectures/infovis/01_intro.md" }, { "The Value of Visualisation" = "lectures/infovis/02_value_of_visualisation.md" }, ] }, { "Malware" = [ { "Malware Analysis Techniques" = "lectures/malware/01_static_analysis.md" }, { "Dynamic Analysis" = "lectures/malware/02_dynamic_analysis.md" }, { "Crash Course in x86 Assembler" = "lectures/malware/03_intro_x86.md" }, { "Disassembler" = "lectures/malware/04_disassembler.md" }, { "Analysing Malicious Windows Programs" = "lectures/malware/05_windows_analysis.md" }, { "Anti Disassembly" = "lectures/malware/06_anti_disassembly.md" }, { "Data Encoding" = "lectures/malware/07_data_encoding.md" }, { "Processes" = "lectures/malware/08_processes.md" }, { "Malware Behaviour" = "lectures/malware/09_malware_behaviour.md" }, ] }, { "Security" = [ { "Security" = "lectures/security/01_intro.md" }, { "Security Management" = "lectures/security/02_security_management.md" }, { "Symmetric Cryptography" = "lectures/security/03_cryptography.md" }, { "Users and Authentication" = "lectures/security/04_users_and_authentication.md" }, { "Authentication" = "lectures/security/05_authentication_and_hash.md" }, { "Reference Monitors" = "lectures/security/06_reference_monitors.md" }, { "Unix Security" = "lectures/security/07_unix_security.md" }, { "Windows Security" = "lectures/security/08_windows_security.md" }, { "Malware" = "lectures/security/09_malware.md" }, { "Exploits" = "lectures/security/10_exploits.md" }, { "Network Security" = "lectures/security/11_network_security.md" }, { "Firewalls" = "lectures/security/12_firewalls.md" }, { "Internet Security" = "lectures/security/13_internet_security.md" }, { "Database Security" = "lectures/security/14_database_security.md" }, { "Anti-Virus" = "lectures/security/15_intrusion_detection.md" }, { "Cyber Threat Intelligence" = "lectures/security/16_cyber_threat_intelligence.md" }, ] }, ] }, ] [project.theme] variant = "modern" logo = "assets/jupiter.svg" favicon = "assets/jupiter.svg" font = false features = [ "navigation.instant", "navigation.tabs", "navigation.prune", "navigation.top", "navigation.footer", "toc.integrate", "content.code.copy", "content.code.annotate", "search.suggest", "search.highlight", "search.share", "content.action.edit", "content.action.view", ] [[project.theme.palette]] scheme = "default" primary = "indigo" accent = "indigo" toggle = { icon = "material/weather-night", name = "Switch to dark mode" } [[project.theme.palette]] scheme = "slate" primary = "indigo" accent = "indigo" toggle = { icon = "material/weather-sunny", name = "Switch to light mode" } [project.markdown_extensions.admonition] [project.markdown_extensions.attr_list] [project.markdown_extensions.def_list] [project.markdown_extensions.footnotes] [project.markdown_extensions.md_in_html] [project.markdown_extensions.meta] [project.markdown_extensions.toc] permalink = true [project.markdown_extensions.codehilite] [project.markdown_extensions.extra] [project.markdown_extensions."pymdownx.highlight"] [project.markdown_extensions."pymdownx.superfences"] custom_fences = [ { name = "mermaid", class = "mermaid", format = "pymdownx.superfences.fence_code_format" }, ] [project.markdown_extensions."pymdownx.inlinehilite"] [project.markdown_extensions."pymdownx.magiclink"] [project.markdown_extensions."pymdownx.betterem"] [project.markdown_extensions."pymdownx.critic"] [project.markdown_extensions."pymdownx.details"] [project.markdown_extensions."pymdownx.keys"] [project.markdown_extensions."pymdownx.mark"] [project.markdown_extensions."pymdownx.smartsymbols"] [project.markdown_extensions."pymdownx.tasklist"] custom_checkbox = true [project.markdown_extensions."pymdownx.arithmatex"] generic = true [project.plugins.search] [project.plugins.minify] minify_html = true