diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index fdfdfb7..0000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Build and deploy site - -on: - push: - branches: - - main - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 0 # for jekyll-last-modified-at to access git history - - - name: Setup Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: '3.1' - - - name: Install dependencies - run: | - gem install bundler - bundle config set --local path 'vendor/bundle' - bundle install - - - name: Build site with Jekyll - run: bundle exec jekyll build - - - name: Deploy to GitHub pages - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./_site - publish_branch: gh-pages diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 0d837d8..0000000 --- a/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -_site -_includes/pubitem.html -buildpubs.md -.sass-cache -.jekyll-metadata -*.swp -.DS_Store -.jekyll-cache -publish.sh diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html index 328687e..98a6580 100644 --- a/404.html +++ b/404.html @@ -1,9 +1,99 @@ ---- -layout: default -title: Oops! Page not found :( ---- -
+ + + + + + + + + + + + Oops! Page not found :( + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Oops! Page not found :(

+
+
+
+ +
- + +
+
+ +
\ No newline at end of file + + + + + + + + + + + + + + + + diff --git a/Gemfile b/Gemfile deleted file mode 100644 index a7e729f..0000000 --- a/Gemfile +++ /dev/null @@ -1,20 +0,0 @@ -source "https://rubygems.org" - -gem "jekyll", "~> 4.2.1" - -gem "minima", "~> 2.5" - -group :jekyll_plugins do - gem "jekyll-feed", "~> 0.12" -end -platforms :mingw, :x64_mingw, :mswin, :jruby do - gem "tzinfo", "~> 1.2" - gem "tzinfo-data" -end -gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin] - -gem "webrick", "~> 1.7" - -group :jekyll_plugins do - gem "jekyll-last-modified-at" -end diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index d5ffff3..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,85 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.8.4) - public_suffix (>= 2.0.2, < 6.0) - colorator (1.1.0) - concurrent-ruby (1.2.2) - em-websocket (0.5.3) - eventmachine (>= 0.12.9) - http_parser.rb (~> 0) - eventmachine (1.2.7) - ffi (1.15.5) - forwardable-extended (2.6.0) - http_parser.rb (0.8.0) - i18n (1.13.0) - concurrent-ruby (~> 1.0) - jekyll (4.2.2) - addressable (~> 2.4) - colorator (~> 1.0) - em-websocket (~> 0.5) - i18n (~> 1.0) - jekyll-sass-converter (~> 2.0) - jekyll-watch (~> 2.0) - kramdown (~> 2.3) - kramdown-parser-gfm (~> 1.0) - liquid (~> 4.0) - mercenary (~> 0.4.0) - pathutil (~> 0.9) - rouge (~> 3.0) - safe_yaml (~> 1.0) - terminal-table (~> 2.0) - jekyll-feed (0.17.0) - jekyll (>= 3.7, < 5.0) - jekyll-last-modified-at (1.3.2) - jekyll (>= 3.7, < 5.0) - jekyll-sass-converter (2.2.0) - sassc (> 2.0.1, < 3.0) - jekyll-seo-tag (2.8.0) - jekyll (>= 3.8, < 5.0) - jekyll-watch (2.2.1) - listen (~> 3.0) - kramdown (2.4.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - liquid (4.0.4) - listen (3.8.0) - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) - mercenary (0.4.0) - minima (2.5.1) - jekyll (>= 3.5, < 5.0) - jekyll-feed (~> 0.9) - jekyll-seo-tag (~> 2.1) - pathutil (0.16.2) - forwardable-extended (~> 2.6) - public_suffix (5.0.1) - rb-fsevent (0.11.2) - rb-inotify (0.10.1) - ffi (~> 1.0) - rexml (3.2.5) - rouge (3.30.0) - safe_yaml (1.0.5) - sassc (2.4.0) - ffi (~> 1.9) - terminal-table (2.0.0) - unicode-display_width (~> 1.1, >= 1.1.1) - unicode-display_width (1.8.0) - webrick (1.8.1) - -PLATFORMS - arm64-darwin-22 - -DEPENDENCIES - jekyll (~> 4.2.1) - jekyll-feed (~> 0.12) - jekyll-last-modified-at - minima (~> 2.5) - tzinfo (~> 1.2) - tzinfo-data - wdm (~> 0.1.1) - webrick (~> 1.7) - -BUNDLED WITH - 2.4.13 diff --git a/_config.yml b/_config.yml deleted file mode 100644 index b81a8a9..0000000 --- a/_config.yml +++ /dev/null @@ -1,21 +0,0 @@ -title: Ordered Systems Lab at U-M -email: ryanph@umich.edu -description: >- # this means to ignore newlines until "baseurl:" - This is the website for the Ordered Systems Lab (a.k.a Order Lab) at - University of Michigan, led by Prof. Ryan Huang. -baseurl: "" # the subpath of your site, e.g. /blog -url: "" # the base hostname & protocol for your site, e.g. http://example.com -github_username: OrderLab - -# Build settings -markdown: kramdown -theme: minima -plugins: - - jekyll-last-modified-at - -exclude: - - Gemfile - - Gemfile.lock - -keep_files: [LeaseOS] -timezone: America/New_York diff --git a/_data/allpubs.yml b/_data/allpubs.yml deleted file mode 100644 index c5d0574..0000000 --- a/_data/allpubs.yml +++ /dev/null @@ -1,850 +0,0 @@ -- title: 'TrainVerify: Equivalence-Based Verification for Distributed LLM Training' - conference: SOSP 2025 - year: 2025 - authors: - - yunchi - - youshan - - chengtan - - ryan - - yizhu - - xianzhang - - fanyang - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/trainverify-sosp25.pdf - bib: - url: paper/trainverify.bib - arxiv: - url: https://arxiv.org/abs/2506.15961 - talk: - url: slides/trainverify_sosp25_slides.pdf - software: - url: https://github.com/verify-llm/TrainVerify -- title: 'Optimistic Recovery for High-Availability Software via Partial Process State Preservation' - conference: SOSP 2025 - year: 2025 - authors: - - yuzhuo - - yuqimai - - angting - - yichen - - wanning - - xiaoyang - - peter - - ryan - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/phoenix-sosp25.pdf - bib: - url: paper/phoenix.bib - talk: - url: slides/phoenix_sosp25_slides.pdf - software: - url: https://github.com/OrderLab/phoenix -- title: 'Mitigating Application Resource Overload with Targeted Task Cancellation' - conference: SOSP 2025 - year: 2025 - authors: - - yigong - - zeyin - - yicheng - - yile - - shuangyu - - baris - - ryan - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/atropos-sosp25.pdf - bib: - url: paper/atropos.bib - talk: - url: slides/atropos_sosp25_slides.pdf - software: - url: https://github.com/OrderLab/Atropos -- title: 'Training with Confidence: Catching Silent Errors in Deep Learning Training with Automated Proactive Checks' - conference: OSDI 2025 - year: 2025 - authors: - - yuxuan - - ziming - - boyu - - beijie - - runhui - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi25 - paper: - url: paper/traincheck-osdi25-preprint.pdf - bib: - url: paper/traincheck-osdi25.bib - arxiv: - url: https://www.arxiv.org/abs/2506.14813 - talk: - url: slides/traincheck_osdi25_slides.pdf - software: - url: https://github.com/OrderLab/TrainCheck - coverages: - - url: https://cse.engin.umich.edu/stories/improving-ai-models-automated-tool-detects-silent-errors-in-deep-learning-training - site: CSE News - - url: https://news.engin.umich.edu/2025/07/improving-ai-models-automated-tool-detects-silent-errors-in-deep-learning-training - site: Michigan Engineering News - - url: https://techxplore.com/news/2025-07-ai-automated-tool-silent-errors.html - site: Tech Xplore -- title: 'Deriving Semantic Checkers from Tests to Detect Silent Failures in Production Distributed Systems' - conference: OSDI 2025 - year: 2025 - authors: - - chang - - dimas - - yujin - - zhewen - - diwang - - yuzhuo - - achmad - - ding - - suman - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi25 - paper: - url: paper/t2c-osdi25-preprint.pdf - bib: - url: paper/t2c-osdi25.bib - software: - url: https://github.com/OrderLab/T2C -- title: 'One-Size-Fits-None: Understanding and Enhancing Slow-Fault Tolerance in Modern Distributed Systems' - conference: NSDI 2025 - year: 2025 - authors: - - ruiming - - yunchi - - yuxuan - - guangtao - - ryan - links: - conference: - url: https://www.usenix.org/conference/nsdi25 - paper: - url: paper/xinda-nsdi25-preprint.pdf - bib: - url: paper/xinda-nsdi25.bib - talk: - url: slides/xinda_nsdi25_slides.pdf - software: - url: https://github.com/OrderLab/xinda - coverages: - - url: https://cse.engin.umich.edu/stories/a-new-tool-to-manage-slow-faults - site: CSE News - - url: https://techxplore.com/news/2025-05-tool-faults-real-adjustment.html - site: Tech Xplore -- title: 'Efficient Reproduction of Fault-Induced Failures in Distributed Systems with Feedback-Driven Fault Injection' - conference: SOSP 2024 - year: 2024 - authors: - - tony - - haoze - - tanakorn - - suman - - ryan - author_note: - tony: '*' - haoze: '*' - note: '*: equal contribution' - links: - conference: - url: https://sigops.org/s/conferences/sosp/2024 - paper: - url: paper/anduril-sosp24.pdf - bib: - url: paper/anduril-sosp24.bib - talk: - url: slides/anduril_sosp24_slides.pdf - software: - url: https://github.com/OrderLab/Anduril -- title: 'Efficient Exposure of Partial Failure Bugs in Distributed Systems with Inferred Abstract States' - conference: NSDI 2024 - year: 2024 - authors: - - haoze - - tony - - ryan - links: - conference: - url: https://www.usenix.org/conference/nsdi24 - paper: - url: paper/legolas-nsdi24-preprint.pdf - bib: - url: paper/legolas-nsdi24.bib - talk: - url: slides/legolas_nsdi24_slides.pdf - software: - url: https://github.com/OrderLab/Legolas -- title: 'Simplifying Cloud Management with Cloudless Computing' - conference: HotNets 2023 - year: 2023 - authors: - - yimingqiu - - patrickkon - - jiarong - - yibo - - hongyi - - xinyu - - ryan - - mosharaf - - ang - links: - conference: - url: https://conferences.sigcomm.org/hotnets/2023 - paper: - url: paper/cloudless-hotnets23.pdf - bib: - url: paper/cloudless-hotnets23.bib -- title: 'Pushing Performance Isolation Boundaries into Application with pBox' - conference: SOSP 2023 - year: 2023 - authors: - - yigong - - gongqi - - ryan - links: - conference: - url: https://sosp2023.mpi-sws.org - paper: - url: paper/pbox-sosp23.pdf - bib: - url: paper/pbox-sosp23.bib - talk: - url: slides/pbox_sosp23_slides.pdf - software: - url: https://github.com/OrderLab/pBox -- title: 'Effective Performance Issue Diagnosis with Value-Assisted Cost Profiling' - conference: EuroSys 2023 - year: 2023 - authors: - - lingmei - - yigong - - ryan - - jasonnieh - - junfeng - links: - conference: - url: https://2023.eurosys.org - paper: - url: paper/vprof-eurosys23.pdf - bib: - url: paper/vprof-eurosys23.bib - talk: - url: slides/vprof_eurosys23_slides.pdf - software: - url: https://github.com/wenglingmei/vprofAE -- title: 'Operating System Support for Safe and Efficient Auxiliary Execution' - conference: OSDI 2022 - year: 2022 - authors: - - yuzhuo - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/orbit-osdi22.pdf - bib: - url: paper/orbit-osdi22.bib - talk: - url: slides/orbit_osdi22_slides.pdf - software: - url: https://github.com/OrderLab/orbit -- title: 'Demystifying and Checking Silent Semantic Violations in Large Distributed Systems' - conference: OSDI 2022 - year: 2022 - authors: - - chang - - yuzhuo - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/oathkeeper-osdi22.pdf - bib: - url: paper/oathkeeper-osdi22.bib - talk: - url: slides/oathkeeper_osdi22_slides.pdf - software: - url: https://github.com/OrderLab/OathKeeper -- title: 'RESIN: A Holistic Service for Dealing with Memory Leaks in Production Cloud Infrastructure' - conference: OSDI 2022 - year: 2022 - authors: - - chang - - cong - - ryan - - yingnong - - siqin - - xinsheng - - xukunli - - qingwei - - murali - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/resin-osdi22.pdf - bib: - url: paper/resin-osdi22.bib - talk: - url: slides/resin_osdi22_slides.pdf -- title: 'Argus: Debugging Performance Issues in Modern Desktop Applications with Annotated Causal Tracing' - conference: ATC 2021 - year: 2021 - authors: - - lingmei - - ryan - - jasonnieh - - junfeng - links: - conference: - url: https://www.usenix.org/conference/atc21 - paper: - url: paper/argus-atc21.pdf - bib: - url: paper/argus.bib - talk: - url: slides/argus_atc21_slides.pdf - software: - url: https://github.com/columbia/ArgusDebugger - highlight: Best Paper Award - -- title: 'Understanding and Dealing with Hard Faults in Persistent Memory Systems' - conference: EuroSys 2021 - year: 2021 - authors: - - brianchoi - - randalburns - - ryan - links: - conference: - url: https://2021.eurosys.org - paper: - url: paper/arthas-eurosys21.pdf - techreport: - url: paper/arthas-tech-report.pdf - bib: - url: paper/arthas-eurosys21.bib - talk: - url: slides/arthas_eurosys_slides.pdf - software: - url: https://github.com/OrderLab/Arthas -- title: 'Automated Reasoning and Detection of Specious Configuration in Large Systems with Symbolic Execution' - conference: OSDI 2020 - year: 2020 - authors: - - yigong - - gongqi - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi20 - paper: - url: paper/violet-osdi20.pdf - techreport: - url: paper/violet-tech-report.pdf - bib: - url: paper/violet-osdi20.bib - talk: - url: slides/violet_osdi20_slides.pdf - software: - url: https://github.com/OrderLab/violet -- title: 'Predictive and Adaptive Failure Mitigation to Avert Production Cloud VM Interruptions' - conference: OSDI 2020 - year: 2020 - authors: - - sebastien - - randolph - - youjiang - - yingnong - - ryan - - zhengmu - - puzhao - - tarunramani - - nagagovindraju - - xukunli - - qingwei - - gillapid - - murali - links: - conference: - url: https://www.usenix.org/conference/osdi20 - paper: - url: paper/narya-osdi20.pdf - bib: - url: paper/narya-osdi20.bib - techreport: - url: paper/narya-tech-report.pdf -- title: 'Understanding, Detecting and Localizing Partial Failures in Large System Software' - conference: NSDI 2020 - year: 2020 - authors: - - chang - - ryan - - scott - links: - conference: - url: https://www.usenix.org/conference/nsdi20 - paper: - url: paper/omegagen-nsdi20.pdf - bib: - url: paper/omegagen.bib - talk: - url: slides/omegagen_nsdi20_slides.pdf - coverages: - - url: https://blog.acolyer.org/2020/03/16/omega-gen - site: The Morning Paper - highlight: Best Paper Award -- title: 'Gandalf: An Intelligent, End-To-End Analytics Service for Safe Deployment in Large-Scale Cloud Infrastructure' - conference: NSDI 2020 - year: 2020 - authors: - - ze - - qian - - ken - - yingnong - - ryan - - pankaj - - xinsheng - - qingwei - - youjiang - - sebastien - - murali - links: - conference: - url: https://www.usenix.org/conference/nsdi20 - paper: - url: paper/gandalf-nsdi20.pdf - bib: - url: paper/gandalf.bib - coverages: - - url: https://blog.acolyer.org/2020/02/28/microsoft-gandalf - site: The Morning Paper -- title: 'Scaling Performance Issue Detection and Diagnosis in Cloud Infrastructures' - conference: AAAI-20 Workshop on Cloud Intelligence - year: 2020 - authors: - - yigong - - ze - - ryan - - suhas - - francis - - yingnong - - murali - links: - conference: - url: https://cloudintelligenceworkshop.org - paper: - url: paper/sdig-aaai20-workshop.pdf - bib: - url: paper/sdig-aaai20.bib -- title: 'Comprehensive and Efficient Runtime Checking in System Software through Watchdogs' - conference: HotOS 2019 - year: 2019 - authors: - - chang - - ryan - - scott - links: - conference: - url: http://hotos19.sigops.org - paper: - url: paper/watchdog-hotos19.pdf - bib: - url: paper/watchdog.bib - talk: - url: slides/watchdog_hotos19_slides.pdf -- title: 'URSA: Hybrid Block Storage for Cloud-Scale Virtual Disks' - conference: EuroSys 2019 - year: 2019 - authors: - - huiba - - yimingz - - dongsheng - - zhimingz - - shengyun - - ryan - - zhengqin - - kaichen - - yongqiang - links: - conference: - url: https://www.eurosys2019.org - paper: - url: 'paper/ursa-eurosys19.pdf' - bib: - url: paper/ursa.bib -- title: 'A Case for Lease-Based, Utilitarian Resource Management on Mobile Devices' - conference: ASPLOS 2019 - year: 2019 - authors: - - yigong - - suyi - - ryan - links: - conference: - url: https://asplos-conference.org - paper: - url: paper/leaseos-asplos19.pdf - bib: - url: paper/leaseos.bib - software: - url: https://orderlab.io/LeaseOS - talk: - url: slides/leaseos_asplos19_slides.pptx - highlight: Best Paper Award - coverages: - - url: https://blog.acolyer.org/2019/05/31/lease-os - site: The Morning Paper -- title: 'AIOps: Real-World Challenges and Research Innovations' - tb: ICSE 2019 Technical Briefings - year: 2019 - authors: - - yingnong - - qingwei - - ryan - links: - conference: - url: https://2019.icse-conferences.org/info/technical-briefings - paper: - url: paper/aiops-icse19-briefing.pdf - analytic: aiops_briefing.pdf - bib: - url: paper/aiops.bib - analytic: aiops.bib -- title: 'Capturing and Enhancing In Situ System Observability for Failure Detection' - conference: OSDI 2018 - year: 2018 - authors: - - ryan - - chuanxiong - - jay - - lidong - - yingnong - links: - conference: - url: https://www.usenix.org/conference/osdi18 - paper: - url: paper/panorama-osdi18.pdf - bib: - url: paper/panorama.bib - software: - url: https://github.com/ryanphuang/panorama - talk: - url: slides/panorama_osdi18_slides.pdf - coverages: - - url: https://blog.acolyer.org/2018/10/15/capturing-and-enhancing-in-situ-system-observability-for-failure-detection - site: The Morning Paper - - url: https://blog.csdn.net/TiDB_PingCAP/article/details/84388408 - site: CSDN -- title: 'End-to-End Automated Exploit Generation for Validating the Security of Processor Designs' - conference: MICRO 2018 - year: 2018 - authors: - - rui - - calvin - - ryan - - cynthia - highlight: Best Paper Candidate - links: - conference: - url: https://www.microarch.org/micro51 - paper: - url: https://cs.unc.edu/~csturton/papers/zhang2018MICRO.pdf - bib: - url: paper/coppelia.bib -- title: 'TerseCades: Efficient Data Compression in Stream Processing' - conference: USENIX ATC 2018 - year: 2018 - authors: - - gennady - - chuanxiong - - mj - - ryan - - lidong - links: - conference: - url: - paper: - url: paper/tersecades-atc18.pdf - bib: - url: paper/tersecades.bib -- title: 'Gray Failure: The Achilles’ Heel of Cloud-Scale Systems' - conference: HotOS 2017 - year: 2017 - authors: - - ryan - - chuanxiong - - lidong - - jay - - yingnong - - murali - - randolph - links: - conference: - url: https://www.sigops.org/hotos/hotos17 - paper: - url: paper/grayfailure-hotos17.pdf - bib: - url: paper/grayfailure.bib - talk: - url: slides/grayfailure_hotos17_slides.pdf - coverages: - - url: https://blog.acolyer.org/2017/06/15/gray-failure-the-achilles-heel-of-cloud-scale-systems - site: The morning paper - - url: http://www.zdnet.com/article/how-clouds-fail - site: ZDNet - - url: http://storagemojo.com/2017/07/24/how-high-redundancy-can-hurt-availability - site: StorageMojo - - url: https://news.ycombinator.com/item?id=16253405 - site: Hacker News -- title: Early Detection of Configuration Errors to Reduce Failure Damage - conference: OSDI 2016 - year: 2016 - authors: - - tianyin - - xinxin - - ryan - - yy - - shan - - long - - shankar - highlight: Best Paper Award - links: - conference: - url: https://www.usenix.org/conference/osdi16 - paper: - url: http://opera.ucsd.edu/paper/osdi16-pcheck.pdf - bib: - url: paper/pcheck.bib -- title: 'DefDroid: Towards a More Defensive Mobile OS Against Disruptive App Behavior' - conference: MobiSys 2016 - year: 2016 - authors: - - ryan - - tianyin - - xinxin - - yy - links: - conference: - url: http://www.sigmobile.org/mobisys/2016 - paper: - url: paper/defdroid-mobisys16.pdf - bib: - url: paper/defdroid.bib - talk: - url: slides/defdroid_mobisys16_slides.pdf - video: - url: https://youtu.be/lguUoitv80U - web: - url: https://defdroid.github.io -- title: Saving Mobile App Developers from Network Disruptions - conference: EuroSys 2016 - year: 2016 - authors: - - xinxin - - ryan - - tianyin - - yy - links: - conference: - url: http://eurosys16.doc.ic.ac.uk - paper: - url: paper/nchecker-eurosys16.pdf - bib: - url: paper/nchecker.bib -- title: 'ConfValley: A Systematic Configuration Validation Framework for Cloud Services' - conference: EuroSys 2015 - year: 2015 - authors: - - ryan - - bill - - abhishek - - yy - links: - conference: - url: http://eurosys2015.labri.fr - paper: - url: paper/confvalley-eurosys15.pdf - analytic: confvalley-eurosys15.pdf - bib: - url: paper/confvalley.bib - analytic: confvalley.bib - talk: - url: slides/confvalley_eurosys15_slides.pdf -- title: Experience in Building a Comparative Performance Analysis Engine for a Commercial System - tr: - UC San Diego Technical Report CS2015-1014 - year: 2015 - authors: - - ryan - - craig - - vincent - - steven - - dongcai - - yy - - lawrence - links: - paper: - url: paper/perfanalysis_techreport.pdf - analytic: perfanalysis_techreport.pdf - bib: - url: paper/perfanalysis.bib - analytic: perfanalysis.bib -- title: 'Why Does a Cloud-Scale Service Fail Despite Fault-Tolerance?' - conference: OSDI 2014 - year: 2014 - authors: - - ryan - - xinxin - - bill - - yy - links: - conference: - url: https://www.usenix.org/conference/osdi14 - paper: - note: Retracted for confidentiality reasons -- title: Performance Regression Testing Target Prioritization via Performance Risk Analysis - conference: ICSE 2014 - year: 2014 - authors: - - ryan - - xiao - - dongcai - - yy - links: - conference: - url: http://2014.icse-conferences.org - paper: - url: paper/perfscope-icse14.pdf - bib: - url: paper/perfscope.bib - talk: - url: slides/perfscope_icse14_slides.pdf - software: - url: http://ryanphuang.github.io/perfscope -- title: Do Not Blame Users for Misconfigurations - conference: SOSP 2013 - year: 2013 - authors: - - tianyin - - jiaqi - - ryan - - jing - - tianwei - - ding - - yy - - shankar - links: - conference: - url: http://sigops.org/sosp/sosp13 - paper: - url: http://cseweb.ucsd.edu/~tixu/papers/sosp13.pdf - bib: - url: paper/spex.bib -- title: 'eDoctor: Automatically Diagnosing Abnormal Battery Drain Issues on Smartphones' - conference: NSDI 2013 - year: 2013 - authors: - - xiao - - ryan - - xinxin - - pei - - soyeon - - yy - - lawrence - - geoff - links: - conference: - url: https://www.usenix.org/conference/nsdi13 - paper: - url: paper/edoctor-nsdi13.pdf - bib: - url: paper/edoctor.bib -- title: Understanding Latent Interactions in Online Social Networks - journal: TWEB 7(4), Oct. 2013 - year: 2013 - authors: - - jingjiang - - christo - - xiaowang - - wenpeng - - ryan - - yafei - - ben - links: - conference: - url: http://tweb.acm.org - paper: - url: http://people.cs.uchicago.edu/~ravenben/publications/pdf/latent-tweb13.pdf - bib: - url: paper/latent-tweb13.bib -- title: 'Be Conservative: Enhancing Failure Diagnosis with Proactive Logging' - conference: OSDI 2012 - year: 2012 - authors: - - ding - - soyeon - - ryan - - yang - - michael - - xiaoming - - yy - - stefan - links: - conference: - url: http://www.usenix.org/events/osdi12 - paper: - url: http://opera.ucsd.edu/paper/osdi12-errlog.pdf - bib: - url: paper/errlog.bib - data: - url: http://opera.ucsd.edu/errlog.htm -- title: 'Understanding Latent Interactions in Online Social Networks' - conference: IMC 2010 - year: 2010 - authors: - - jingjiang - - christo - - xiaowang - - ryan - - wenpeng - - yafei - - ben - links: - conference: - url: http://conferences.sigcomm.org/imc/2010 - paper: - url: http://conferences.sigcomm.org/imc/2010/papers/p369.pdf - bib: - url: paper/osn.bib -- title: A Multiple User Sharing Behaviors Based Approach for Fake File Detection in P2P Environments - journal: SCIS 53(11), Nov. 2010 - year: 2010 - authors: - - jingjiang - - yongjun - - qinyuan - - ryan - - yafei - links: - conference: - url: http://link.springer.com/journal/11432/53/11 - paper: - url: http://link.springer.com/content/pdf/10.1007%2Fs11432-010-4087-5.pdf - bib: - url: paper/p2pfakefile.bib diff --git a/_data/authors.yml b/_data/authors.yml deleted file mode 100644 index 80417d3..0000000 --- a/_data/authors.yml +++ /dev/null @@ -1,294 +0,0 @@ -ryan: - name: Peng Huang - url: https://web.eecs.umich.edu/~ryanph -yy: - name: Yuanyuan Zhou - url: http://cseweb.ucsd.edu/~yyzhou -ding: - name: Ding Yuan - url: http://www.eecg.toronto.edu/~yuan -lawrence: - name: Lawrence K. Saul - url: http://cseweb.ucsd.edu/~saul -soyeon: - name: Soyeon Park -geoff: - name: Geoffrey M. Voelker - url: http://www.cs.ucsd.edu/~voelker -xinxin: - name: Xinxin Jin - url: http://cseweb.ucsd.edu/~x7jin -tianyin: - name: Tianyin Xu - url: http://cseweb.ucsd.edu/~tixu -shan: - name: Shan Lu - url: http://people.cs.uchicago.edu/~shanlu -long: - name: Long Jin -shankar: - name: Shankar Pasupathy -bill: - name: Bill Bolosky -abhishek: - name: Abhishek Singh -xiao: - name: Xiao Ma -dongcai: - name: Dongcai Shen -jiaqi: - name: Jiaqi Zhang -jing: - name: Jing Zheng -tianwei: - name: Tianwei Sheng -pei: - name: Pei Wang -yang: - name: Yang Liu -michael: - name: Michael M. Lee -xiaoming: - name: Xiaoming Tang -stefan: - name: Stefan Savage - url: http://cseweb.ucsd.edu/~savage -jingjiang: - name: Jing Jiang -christo: - name: Christo Wilson - url: http://www.ccs.neu.edu/home/cbw -xiaowang: - name: Xiao Wang -wenpeng: - name: Wenpeng Sha -yafei: - name: Yafei Dai -ben: - name: Ben Y. Zhao - url: http://www.cs.ucsb.edu/~ravenben -yongjun: - name: Yongjun Li -qinyuan: - name: Qinyuan Feng -craig: - name: Craig Schechter -vincent: - name: Vincent Chen -steven: - name: Steven Hill -chuanxiong: - name: Chuanxiong Guo - url: https://www.microsoft.com/en-us/research/people/chguo -lidong: - name: Lidong Zhou - url: https://www.microsoft.com/en-us/research/people/lidongz -jay: - name: Jacob R. Lorch - url: https://www.microsoft.com/en-us/research/people/lorch -yingnong: - name: Yingnong Dang -murali: - name: Murali Chintalapati -randolph: - name: Randolph Yao -gennady: - name: Gennady Pekhimenko - url: http://www.cs.toronto.edu/~pekhimenko -mj: - name: Myeongjae Jeon - url: https://sites.google.com/site/myeongjae -rui: - name: Rui Zhang - url: https://cs.unc.edu/~rzhang -cynthia: - name: Cynthia Sturton - url: https://cs.unc.edu/~csturton -calvin: - name: Calvin Deutschbein - url: http://cs.unc.edu/~cd -yigong: - name: Yigong Hu - url: https://yigonghu.github.io -suyi: - name: Suyi Liu - url: https://sylll.github.io -huiba: - name: Huiba Li -yimingz: - name: Yiming Zhang -zhimingz: - name: Zhiming Zhang -shengyun: - name: Shengyun Liu -dongsheng: - name: Dongsheng Li -zhengqin: - name: Zheng Qin -kaichen: - name: Kai Chen -yongqiang: - name: Yongqiang Xiong -chang: - name: Chang Lou - url: https://www.cs.jhu.edu/~chlou/about -scott: - name: Scott Smith - url: https://www.cs.jhu.edu/~scott -ze: - name: Ze Li -qian: - name: Qian Cheng -ken: - name: Ken Hsieh -pankaj: - name: Pankaj Singh -xinsheng: - name: Xinsheng Yang -qingwei: - name: Qingwei Lin -youjiang: - name: Youjiang Wu -sebastien: - name: Sebastien Levy -gongqi: - name: Gongqi Huang - url: https://gongqihuang.com -zhengmu: - name: Zheng Mu -puzhao: - name: Pu Zhao -tarunramani: - name: Tarun Ramani -nagagovindraju: - name: Naga Govindaraju -xukunli: - name: Xukun Li -gillapid: - name: Gil Lapid Shafriri -suhas: - name: Suhas Pinnamaneni -francis: - name: Francis David -brianchoi: - name: Brian Choi - url: https://portugasian.github.io -randalburns: - name: Randal Burns -lingmei: - name: Lingmei Weng -junfeng: - name: Junfeng Yang - url: http://www.cs.columbia.edu/~junfeng -jasonnieh: - name: Jason Nieh - url: http://www.cs.columbia.edu/~nieh -cong: - name: Cong Chen -siqin: - name: Si Qin -yuzhuo: - name: Yuzhuo Jing - url: https://osdi.dev -tony: - name: Jia Pan - url: https://tonypan123.github.io -haoze: - name: Haoze Wu - url: https://www.cs.jhu.edu/~hwu80 -yimingqiu: - name: Yiming Qiu - url: https://yimingqiu.me -patrickkon: - name: Patrick Tser Jern Kon -jiarong: - name: Jiarong Xing -yibo: - name: Yibo Huang -hongyi: - name: Hongyi Liu -xinyu: - name: Xinyu Wang - url: https://web.eecs.umich.edu/~xwangsd -mosharaf: - name: Mosharaf Chowdhury - url: https://www.mosharaf.com -ang: - name: Ang Chen - url: https://web.eecs.umich.edu/~chenang -tanakorn: - name: Tanakorn Leesatapornwongsa - url: https://www.microsoft.com/en-us/research/people/taleesat -suman: - name: Suman Nath - url: https://www.microsoft.com/en-us/research/people/sumann -ruiming: - name: Ruiming Lu - url: https://ruiming-lu.github.io -yunchi: - name: Yunchi Lu - url: https://luyunchi.github.io -yuxuan: - name: Yuxuan Jiang - url: https://essoz.github.io -guangtao: - name: Guangtao Xue -dimas: - name: Dimas Shidqi Parikesit -yujin: - name: Yujin Huang -zhewen: - name: Zhewen Yang -diwang: - name: Senapati Diwangkara -achmad: - name: Achmad Imam Kistijantoro -ziming: - name: Ziming Zhou -boyu: - name: Boyu Xu -beijie: - name: Beijie Liu -runhui: - name: Runhui Xu -chengtan: - name: Cheng Tan - url: https://naizhengtan.github.io -youshan: - name: Youshan Miao - url: https://www.microsoft.com/en-us/research/people/yomia -yizhu: - name: Yi Zhu - url: https://www.microsoft.com/en-us/research/people/yizhu1 -xianzhang: - name: Xian Zhang - url: https://www.microsoft.com/en-us/research/people/zhxian -fanyang: - name: Fan Yang - url: https://www.microsoft.com/en-us/research/people/fanyang -yuqimai: - name: Yuqi Mai -angting: - name: Angting Cai -yichen: - name: Yi Chen - url: https://chenyi.world -wanning: - name: Wanning He - url: https://hwanning.netlify.app -xiaoyang: - name: Xiaoyang Qian -peter: - name: Peter M. Chen - url: https://web.eecs.umich.edu/~pmchen -zeyin: - name: Zeyin Zhang -yicheng: - name: Yicheng Liu -yile: - name: Yile Gu -shuangyu: - name: Shuangyu Lei -baris: - name: Baris Kasikci - url: https://homes.cs.washington.edu/~baris diff --git a/_data/shortpubs.yml b/_data/shortpubs.yml deleted file mode 100644 index 0789d36..0000000 --- a/_data/shortpubs.yml +++ /dev/null @@ -1,463 +0,0 @@ -- title: 'TrainVerify: Equivalence-Based Verification for Distributed LLM Training' - conference: SOSP 2025 - year: 2025 - authors: - - yunchi - - youshan - - chengtan - - ryan - - yizhu - - xianzhang - - fanyang - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/trainverify-sosp25.pdf - bib: - url: paper/trainverify.bib - arxiv: - url: https://arxiv.org/abs/2506.15961 - talk: - url: slides/trainverify_sosp25_slides.pdf - software: - url: https://github.com/verify-llm/TrainVerify -- title: 'Optimistic Recovery for High-Availability Software via Partial Process State Preservation' - conference: SOSP 2025 - year: 2025 - authors: - - yuzhuo - - yuqimai - - angting - - yichen - - wanning - - xiaoyang - - peter - - ryan - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/phoenix-sosp25.pdf - bib: - url: paper/phoenix.bib - talk: - url: slides/phoenix_sosp25_slides.pdf - software: - url: https://github.com/OrderLab/phoenix -- title: 'Mitigating Application Resource Overload with Targeted Task Cancellation' - conference: SOSP 2025 - year: 2025 - authors: - - yigong - - zeyin - - yicheng - - yile - - shuangyu - - baris - - ryan - links: - conference: - url: https://sigops.org/s/conferences/sosp/2025/ - paper: - url: paper/atropos-sosp25.pdf - bib: - url: paper/atropos.bib - talk: - url: slides/atropos_sosp25_slides.pdf - software: - url: https://github.com/OrderLab/Atropos -- title: 'Training with Confidence: Catching Silent Errors in Deep Learning Training with Automated Proactive Checks' - conference: OSDI 2025 - year: 2025 - authors: - - yuxuan - - ziming - - boyu - - beijie - - runhui - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi25 - paper: - url: paper/traincheck-osdi25-preprint.pdf - bib: - url: paper/traincheck-osdi25.bib - arxiv: - url: https://www.arxiv.org/abs/2506.14813 - talk: - url: slides/traincheck_osdi25_slides.pdf - software: - url: https://github.com/OrderLab/TrainCheck - coverages: - - url: https://cse.engin.umich.edu/stories/improving-ai-models-automated-tool-detects-silent-errors-in-deep-learning-training - site: CSE News - - url: https://news.engin.umich.edu/2025/07/improving-ai-models-automated-tool-detects-silent-errors-in-deep-learning-training - site: Michigan Engineering News - - url: https://techxplore.com/news/2025-07-ai-automated-tool-silent-errors.html - site: Tech Xplore -- title: 'Deriving Semantic Checkers from Tests to Detect Silent Failures in Production Distributed Systems' - conference: OSDI 2025 - year: 2025 - authors: - - chang - - dimas - - yujin - - zhewen - - diwang - - yuzhuo - - achmad - - ding - - suman - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi25 - paper: - url: paper/t2c-osdi25-preprint.pdf - bib: - url: paper/t2c-osdi25.bib - software: - url: https://github.com/OrderLab/T2C -- title: 'One-Size-Fits-None: Understanding and Enhancing Slow-Fault Tolerance in Modern Distributed Systems' - conference: NSDI 2025 - year: 2025 - authors: - - ruiming - - yunchi - - yuxuan - - guangtao - - ryan - links: - conference: - url: https://www.usenix.org/conference/nsdi25 - paper: - url: paper/xinda-nsdi25-preprint.pdf - bib: - url: paper/xinda-nsdi25.bib - talk: - url: slides/xinda_nsdi25_slides.pdf - software: - url: https://github.com/OrderLab/xinda - coverages: - - url: https://cse.engin.umich.edu/stories/a-new-tool-to-manage-slow-faults - site: CSE News - - url: https://techxplore.com/news/2025-05-tool-faults-real-adjustment.html - site: Tech Xplore -- title: 'Efficient Reproduction of Fault-Induced Failures in Distributed Systems with Feedback-Driven Fault Injection' - conference: SOSP 2024 - year: 2024 - authors: - - tony - - haoze - - tanakorn - - suman - - ryan - author_note: - tony: '*' - haoze: '*' - note: '*: equal contribution' - links: - conference: - url: https://sigops.org/s/conferences/sosp/2024 - paper: - url: paper/anduril-sosp24-preprint.pdf - bib: - url: paper/anduril-sosp24.bib - talk: - url: slides/anduril_sosp24_slides.pdf - software: - url: https://github.com/OrderLab/Anduril -- title: 'Efficient Exposure of Partial Failure Bugs in Distributed Systems with Inferred Abstract States' - conference: NSDI 2024 - year: 2024 - authors: - - haoze - - tony - - ryan - links: - conference: - url: https://www.usenix.org/conference/nsdi24 - paper: - url: paper/legolas-nsdi24-preprint.pdf - bib: - url: paper/legolas-nsdi24.bib - talk: - url: slides/legolas_nsdi24_slides.pdf - software: - url: https://github.com/OrderLab/Legolas -- title: 'Pushing Performance Isolation Boundaries into Application with pBox' - conference: SOSP 2023 - year: 2023 - authors: - - yigong - - gongqi - - ryan - links: - conference: - url: https://sosp2023.mpi-sws.org - paper: - url: paper/pbox-sosp23.pdf - bib: - url: paper/pbox-sosp23.bib - talk: - url: slides/pbox_sosp23_slides.pdf - software: - url: https://github.com/OrderLab/pBox -- title: 'Effective Performance Issue Diagnosis with Value-Assisted Cost Profiling' - conference: EuroSys 2023 - year: 2023 - authors: - - lingmei - - yigong - - ryan - - jasonnieh - - junfeng - links: - conference: - url: https://2023.eurosys.org - paper: - url: paper/vprof-eurosys23.pdf - bib: - url: paper/vprof-eurosys23.bib - talk: - url: slides/vprof_eurosys23_slides.pdf - software: - url: https://github.com/wenglingmei/vprofAE -- title: 'Operating System Support for Safe and Efficient Auxiliary Execution' - conference: OSDI 2022 - year: 2022 - authors: - - yuzhuo - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/orbit-osdi22.pdf - bib: - url: paper/orbit-osdi22.bib - talk: - url: slides/orbit_osdi22_slides.pdf - software: - url: https://github.com/OrderLab/orbit -- title: 'Demystifying and Checking Silent Semantic Violations in Large Distributed Systems' - conference: OSDI 2022 - year: 2022 - authors: - - chang - - yuzhuo - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/oathkeeper-osdi22.pdf - bib: - url: paper/oathkeeper-osdi22.bib - talk: - url: slides/oathkeeper_osdi22_slides.pdf - software: - url: https://github.com/OrderLab/OathKeeper -- title: 'RESIN: A Holistic Service for Dealing with Memory Leaks in Production Cloud Infrastructure' - conference: OSDI 2022 - year: 2022 - authors: - - chang - - cong - - ryan - - yingnong - - siqin - - xinsheng - - xukunli - - qingwei - - murali - links: - conference: - url: https://www.usenix.org/conference/osdi22 - paper: - url: paper/resin-osdi22.pdf - talk: - url: slides/resin_osdi22_slides.pdf - bib: - url: paper/resin-osdi22.bib -- title: 'Argus: Debugging Performance Issues in Modern Desktop Applications with Annotated Causal Tracing' - conference: ATC 2021 - year: 2021 - authors: - - lingmei - - ryan - - jasonnieh - - junfeng - links: - conference: - url: https://www.usenix.org/conference/atc21 - paper: - url: paper/argus-atc21.pdf - bib: - url: paper/argus.bib - talk: - url: slides/argus_atc21_slides.pdf - software: - url: https://github.com/columbia/ArgusDebugger - highlight: Best Paper Award - -- title: 'Automated Reasoning and Detection of Specious Configuration in Large Systems with Symbolic Execution' - conference: OSDI 2020 - year: 2020 - authors: - - yigong - - gongqi - - ryan - links: - conference: - url: https://www.usenix.org/conference/osdi20 - paper: - url: paper/violet-osdi20.pdf - techreport: - url: paper/violet-tech-report.pdf - bib: - url: paper/violet-osdi20.bib - talk: - url: slides/violet_osdi20_slides.pdf - software: - url: https://github.com/OrderLab/violet -- title: 'Predictive and Adaptive Failure Mitigation to Avert Production Cloud VM Interruptions' - conference: OSDI 2020 - year: 2020 - authors: - - sebastien - - randolph - - youjiang - - yingnong - - ryan - - zhengmu - - puzhao - - tarunramani - - nagagovindraju - - xukunli - - qingwei - - gillapid - - murali - links: - conference: - url: https://www.usenix.org/conference/osdi20 - paper: - url: paper/narya-osdi20.pdf - bib: - url: paper/narya-osdi20.bib - techreport: - url: paper/narya-tech-report.pdf -- title: 'Understanding, Detecting and Localizing Partial Failures in Large System Software' - conference: NSDI 2020 - year: 2020 - authors: - - chang - - ryan - - scott - links: - conference: - url: https://www.usenix.org/conference/nsdi20 - paper: - url: paper/omegagen-nsdi20.pdf - bib: - url: paper/omegagen.bib - talk: - url: slides/omegagen_nsdi20_slides.pdf - coverages: - - url: https://blog.acolyer.org/2020/03/16/omega-gen - site: The Morning Paper - highlight: Best Paper Award -- title: 'A Case for Lease-Based, Utilitarian Resource Management on Mobile Devices' - conference: ASPLOS 2019 - year: 2019 - authors: - - yigong - - suyi - - ryan - links: - conference: - url: https://asplos-conference.org - paper: - url: paper/leaseos-asplos19.pdf - bib: - url: paper/leaseos.bib - software: - url: https://orderlab.io/LeaseOS - talk: - url: slides/leaseos_asplos19_slides.pptx - highlight: Best Paper Award - coverages: - - url: https://blog.acolyer.org/2019/05/31/lease-os - site: The Morning Paper -- title: 'Capturing and Enhancing In Situ System Observability for Failure Detection' - conference: OSDI 2018 - year: 2018 - authors: - - ryan - - chuanxiong - - jay - - lidong - - yingnong - links: - conference: - url: https://www.usenix.org/conference/osdi18 - paper: - url: paper/panorama-osdi18.pdf - bib: - url: paper/panorama.bib - software: - url: https://github.com/ryanphuang/panorama - talk: - url: slides/panorama_osdi18_slides.pdf - coverages: - - url: https://blog.acolyer.org/2018/10/15/capturing-and-enhancing-in-situ-system-observability-for-failure-detection - site: The Morning Paper - - url: https://blog.csdn.net/TiDB_PingCAP/article/details/84388408 - site: CSDN -- title: 'End-to-End Automated Exploit Generation for Validating the Security of Processor Designs' - conference: MICRO 2018 - year: 2018 - authors: - - rui - - calvin - - ryan - - cynthia - highlight: Best Paper Candidate - links: - conference: - url: https://www.microarch.org/micro51 - paper: - url: https://cs.unc.edu/~csturton/papers/zhang2018MICRO.pdf - bib: - url: paper/coppelia.bib -- title: 'Gray Failure: The Achilles’ Heel of Cloud-Scale Systems' - conference: HotOS 2017 - year: 2017 - authors: - - ryan - - chuanxiong - - lidong - - jay - - yingnong - - murali - - randolph - links: - conference: - url: https://www.sigops.org/hotos/hotos17 - paper: - url: paper/grayfailure-hotos17.pdf - bib: - url: paper/grayfailure.bib - talk: - url: slides/grayfailure_hotos17_slides.pdf - coverages: - - url: https://blog.acolyer.org/2017/06/15/gray-failure-the-achilles-heel-of-cloud-scale-systems - site: The Morning Paper - - url: http://www.zdnet.com/article/how-clouds-fail - site: ZDNet - - url: http://storagemojo.com/2017/07/24/how-high-redundancy-can-hurt-availability - site: StorageMojo - - url: https://news.ycombinator.com/item?id=16253405 - site: Hacker News diff --git a/_includes/banner.html b/_includes/banner.html deleted file mode 100644 index c5522a1..0000000 --- a/_includes/banner.html +++ /dev/null @@ -1,27 +0,0 @@ -
- -
diff --git a/_includes/bottom.html b/_includes/bottom.html deleted file mode 100644 index 1438195..0000000 --- a/_includes/bottom.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - diff --git a/_includes/footer.html b/_includes/footer.html deleted file mode 100644 index e018c57..0000000 --- a/_includes/footer.html +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/_includes/head.html b/_includes/head.html deleted file mode 100644 index 31243a3..0000000 --- a/_includes/head.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - {% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %} - - - - - - - - - - - diff --git a/_layouts/default.html b/_layouts/default.html deleted file mode 100644 index 7761734..0000000 --- a/_layouts/default.html +++ /dev/null @@ -1,21 +0,0 @@ - - - {% include head.html %} - - {% include banner.html %} - -
-
-
-
-

{{ page.title }}

-
-
-
- - {{ content }} - {% include footer.html %} -
- {% include bottom.html %} - - diff --git a/_layouts/home.html b/_layouts/home.html deleted file mode 100644 index 7fb14a4..0000000 --- a/_layouts/home.html +++ /dev/null @@ -1,12 +0,0 @@ - - - {% include head.html %} - - {% include banner.html %} -
- {{ content }} - {% include footer.html %} -
- {% include bottom.html %} - - \ No newline at end of file diff --git a/_layouts/publication.html b/_layouts/publication.html deleted file mode 100644 index 1ace79b..0000000 --- a/_layouts/publication.html +++ /dev/null @@ -1,18 +0,0 @@ -
-
-{%- assign allpubs = site.data.allpubs -%} -{%- assign prevyear = null -%} -{%- for pub in allpubs -%} -{%- if pub.year != prevyear -%} -{%- if prevyear != null %} - -{%- endif %} -

{{ pub.year }}

- -
-
diff --git a/_layouts/single.html b/_layouts/single.html deleted file mode 100644 index 7014a17..0000000 --- a/_layouts/single.html +++ /dev/null @@ -1,25 +0,0 @@ - - - {% include head.html %} - - {% include banner.html %} - -
-
-
-
-

{{ page.title }}

-
-
-
- -
-
- {{ content }} -
-
- {% include footer.html %} -
- {% include bottom.html %} - - diff --git a/_scss/style.scss b/_scss/style.scss deleted file mode 100644 index d02ba5f..0000000 --- a/_scss/style.scss +++ /dev/null @@ -1,16 +0,0 @@ -@import "theme/variables"; -@import "theme/mixins"; -@import "theme/reset"; -@import "theme/header"; -@import "theme/responsive"; -@import "theme/banner"; -@import "theme/section-intro"; -@import "theme/home"; -@import "theme/blog"; -@import "theme/contact"; -@import "theme/btn"; -@import "theme/footer"; -@import "theme/projects"; -@import "theme/publications"; -@import "theme/news"; -@import "theme/about"; \ No newline at end of file diff --git a/_scss/theme/_about.scss b/_scss/theme/_about.scss deleted file mode 100644 index 564e98d..0000000 --- a/_scss/theme/_about.scss +++ /dev/null @@ -1,13 +0,0 @@ -.section-about { - font-size: 17px; - &__title{ - font-weight: 700; - color: $title-color; - margin-bottom: 10px; - } - &__photo{ - width: 500px; - top: 50px; - right: 50px; - } -} \ No newline at end of file diff --git a/_scss/theme/_banner.scss b/_scss/theme/_banner.scss deleted file mode 100644 index 333ecb4..0000000 --- a/_scss/theme/_banner.scss +++ /dev/null @@ -1,143 +0,0 @@ -/* banner section start - ============================================================================================ */ -.hero-banner{ - position: relative; - background: #002D72; - background-size: cover; - padding: 90px 0 60px 0; - // height: 400px; - z-index: 1; - - @media(min-width: 600px){ - padding: 150px 0 120px 0; - } - - @media(min-width: 991px){ - padding: 175px 0 160px 0; - } - - @media(min-width: 1200px){ - padding: 265px 0 275px 0; - } - - &__img{ - position: relative; - - @media(min-width: 1200px){ - img{ - position: absolute; - top: 0; - left: -110px; - } - } - } - - &__content{ - - - h1{ - color: $white; - margin-bottom: 22px; - } - - p{ - color: #fff; - margin-bottom: 45px; - } - } - - &::after{ - content: ""; - display: block; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 60%; - background: url(../img/banner/banner-bg.png) left center no-repeat; - background-size: cover; - z-index: -1; - } - - &--sm{ - padding: 0; - height: 300px; - - &::after{ - height: 100%; - } - - @media(min-width: 1000px){ - height: 500px; - } - - &__content{ - position: absolute; - top: 50%; - left: 50%; - width: 100%; - transform: translate(-50%, -50%); - margin-top: 20px; - text-align: center; - - @media(min-width: 600px){ - margin-top: 40px; - } - - & > *{ - color: #fff; - } - - h3{ - font-size: 27px; - margin-bottom: 0; - } - - h1{ - margin-bottom: 10px; - } - - h4{ - font-size: 18px; - } - } - } - - - -} -/* banner section end - ============================================================================================ */ - -/* breadcrumb section start - ============================================================================================ */ - .banner-breadcrumb{ - display: inline-block; - - .breadcrumb{ - background: transparent; - padding: 0; - - &-item{ - padding: .1rem; - - a{ - text-transform: capitalize; - color: #fff; - } - - &+.breadcrumb-item::before{ - color: #fff; - padding-left: .2rem; - padding-right: .4rem; - // content: "-"; - } - - &.active{ - color: #fff; - } - } - } - } -/* breadcrumb section end - ============================================================================================ */ diff --git a/_scss/theme/_blog.scss b/_scss/theme/_blog.scss deleted file mode 100644 index c18d510..0000000 --- a/_scss/theme/_blog.scss +++ /dev/null @@ -1,958 +0,0 @@ -/*=================== blog banner start ====================*/ -.blog-banner{ - position: relative; - - h4,h1,a{ - text-transform: capitalize; - color: #fff; - } - - h4{ - font-size: 18px; - margin-bottom: 15px; - } - - h1{ - font-size: 30px; - margin-bottom: 10px; - color: $title-color; - - @media(min-width: 992px){ - font-size: 36px; - } - } - - &-area{ - height: 280px; - position: relative; - z-index: 1; - - @media(min-width: 1000px){ - height: 410px; - } - - .blog-banner{ - position: absolute; - top: 50%; - left: 50%; - width: 100%; - transform: translate(-50%, -50%); - } - - - &::after{ - content: ""; - display: block; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: #f1f6f7; - z-index: -1; - } - } - - &-btn{ - border:2px solid $primary-color; - padding: 10px 45px; - - &:hover{ - background: $primary-color; - color: #fff; - } - } -} -/*=================== blog banner end ====================*/ - - - -/* Latest Blog Area css -============================================================================================ */ -.latest_blog_area{ - -} -.latest_blog_inner{ - -} -.l_blog_item{ - .l_blog_img{ - - } - .l_blog_text{ - .date{ - margin-top: 24px; - margin-bottom: 15px; - a{ - // color: $pfont; - font-size: 12px; - } - } - h4{ - font-size: 18px; - color: $title-color; - border-bottom: 1px solid #eeeeee; - margin-bottom: 0px; - padding-bottom: 20px; - @include transition; - &:hover{ - color: $primary-color; - } - } - p{ - margin-bottom: 0px; - padding-top: 20px; - } - } -} -/* End Latest Blog Area css -============================================================================================ */ - - -/* Causes Area css -============================================================================================ */ -.causes_area{ -} -.causes_slider{ - .owl-dots{ - text-align: center; - margin-top: 80px; - .owl-dot{ - height: 14px; - width: 14px; - background: #eeeeee; - display: inline-block; - margin-right: 7px; - &:last-child{ - margin-right: 0px; - } - &.active{ - background: $primary-color; - } - } - } -} -.causes_item{ - background: #fff; - .causes_img{ - position: relative; - .c_parcent{ - position: absolute; - bottom: 0px; - width: 100%; - left: 0px; - height: 3px; - background: rgba(255, 255, 255, .5); - span{ - width: 70%; - height: 3px; - background: $primary-color; - position: absolute; - left: 0px; - bottom: 0px; - &:before{ - content: "75%"; - position: absolute; - right: -10px; - bottom: 0px; - background: $primary-color; - color: #fff; - padding: 0px 5px; - } - } - } - } - .causes_text{ - padding: 30px 35px 40px 30px; - h4{ - color: $title-color; - // font-family: $rob; - font-size: 18px; - font-weight: 600; - margin-bottom: 15px; - cursor: pointer; - &:hover{ - color: $primary-color; - } - } - p{ - font-size: 14px; - line-height: 24px; - // color: $pfont; - font-weight: 300; - margin-bottom: 0px; - } - } - .causes_bottom{ - a{ - width: 50%; - border: 1px solid $primary-color; - text-align: center; - float: left; - line-height: 50px; - background: $primary-color; - color: #fff; - // font-family: $rob; - font-size: 14px; - font-weight: 500; - & + a{ - border-color: #eeeeee; - background: #fff; - font-size: 14px; - color: $title-color; - } - } - } -} -/* End Causes Area css -============================================================================================ */ - - - -/*================= latest_blog_area css =============*/ -.latest_blog_area{ - background: #f9f9ff; -} -.single-recent-blog-post{ - margin-bottom: 30px; - .thumb{ - overflow: hidden; - img{ - transition: all 0.7s linear; - } - } - .details{ - padding-top: 30px; - .sec_h4{ - line-height: 24px; - padding: 10px 0px 13px; - transition: all 0.3s linear; - &:hover{ - // color: $pfont; - } - } - } - .date{ - font-size: 14px; - line-height: 24px; - font-weight: 400; - } - &:hover{ - img{ - transform: scale(1.23) rotate(10deg); - } - } -} -.tags{ - .tag_btn{ - font-size: 12px; - font-weight: 500; - line-height: 20px; - border: 1px solid #eeeeee; - display: inline-block; - padding: 1px 18px; - text-align: center; - color: $title-color; - &:before{ - background: $primary-color; - } - & + .tag_btn{ - margin-left: 2px; - } - } -} - -/*========= blog_categorie_area css ===========*/ -.blog_categorie_area{ - padding-top: 30px; - padding-bottom: 30px; - // background: $lightGray; - - @media(min-width: 900px){ - padding-top: 80px; - padding-bottom: 80px; - } - - @media(min-width: 1100px){ - padding-top: 120px; - padding-bottom: 120px; - } -} -.categories_post{ - position: relative; - text-align: center; - cursor: pointer; - img{ - max-width: 100%; - } - .categories_details{ - position: absolute; - top: 20px; - left: 20px; - right: 20px; - bottom: 20px; - background: rgba(34, 34, 34, 0.75); - color: #fff; - transition: all 0.3s linear; - display: flex; - align-items: center; - justify-content: center; - h5{ - margin-bottom: 0px; - font-size: 18px; - line-height: 26px; - text-transform: uppercase; - color: #fff; - position: relative; -// &:before{ -// content: ""; -// height: 1px; -// width: 100%; -// background: #fff; -// position: absolute; -// bottom: 0px; -// left: 0px; -// } - } - p{ - font-weight: 300; - font-size: 14px; - line-height: 26px; - margin-bottom: 0px; - } - .border_line{ - margin: 10px 0px; - background: #fff; - width: 100%; - height: 1px; - } - } - &:hover{ - .categories_details{ - background: rgba(56, 74, 235, 0.85); - } - } -} - - - -/*============ blog_left_sidebar css ==============*/ -.blog_area{ - // background: $lightGray; -} -.blog_left_sidebar{ - -} -.blog_item{ - margin-bottom: 40px; -} -.blog_info{ - padding-top: 30px; - .post_tag{ - padding-bottom: 20px; - a{ - // font: 300 14px/21px $rob; - color: $title-color; - font-size: 14px; - &:hover{ - // color: $pfont; - } - &.active{ - color: $primary-color; - } - } - } - .blog_meta{ - li{ - a{ - // font: 300 14px/20px $rob; - color: #777777; - vertical-align: middle; - padding-bottom: 10px; - display: inline-block; - font-size: 14px; - i{ - color: $title-color; - font-size: 16px; - font-weight: 600; - padding-left: 15px; - line-height: 20px; - vertical-align: middle; - } - &:hover{ - color: $primary-color; - } - } - } - } -} -.blog_post{ - img{ - max-width: 100%; - } -} -.blog_details{ - padding-top: 20px; - h2{ - font-size: 24px; - line-height: 36px; - color: $title-color; - font-weight: 600; - transition: all 0.3s linear; - &:hover{ - color: $primary-color; - } - } - p{ - margin-bottom: 26px; - } -} -.view_btn{ - font-size: 14px; - line-height: 36px; - display: inline-block; - color: $title-color; - font-weight: 500; - padding: 0px 30px; - background: #fff; -} - -.blog_right_sidebar{ - border: 1px solid #eeeeee; - background: #fafaff; - padding: 30px; - .widget_title{ - font-size: 18px; - line-height: 25px; - background: $primary-color; - text-align: center; - color: #fff; - padding: 8px 0px; - margin-bottom: 30px; - } - .search_widget{ - .input-group{ - .form-control{ - font-size: 14px; - line-height: 29px; - border: 0px; - width: 100%; - font-weight: 300; - color: #fff; - padding-left: 20px; - border-radius: 45px; - z-index: 0; - background: $primary-color; - @include placeholder{ - color: #fff; - } - &:focus{ - box-shadow: none; - } - } - .btn-default{ - position: absolute; - right: 20px;; - background: transparent; - border: 0px; - box-shadow: none; - font-size: 14px; - color: #fff; - padding: 0px; - top: 50%; - transform: translateY(-50%); - z-index: 1; - } - } - } - .author_widget{ - text-align: center; - h4{ - font-size: 18px; - line-height: 20px; - color: $title-color; - margin-bottom: 5px; - margin-top: 30px; - } - p{ - margin-bottom: 0px; - } - .social_icon{ - padding: 7px 0px 15px; - a{ - font-size: 14px; - color: $title-color; - transition: all 0.2s linear; - & + a{ - margin-left: 20px; - } - &:hover{ - color: $primary-color; - } - } - } - } - .popular_post_widget{ - .post_item{ - .media-body{ - justify-content: center; - align-self: center; - padding-left: 20px; - h3{ - font-size: 14px; - line-height: 20px; - color: $title-color; - margin-bottom: 4px; - transition: all 0.3s linear; - &:hover{ - color: $primary-color; - } - } - p{ - font-size:12px; - line-height: 21px; - margin-bottom: 0px; - } - } - & + .post_item{ - margin-top: 20px; - } - } - } - .post_category_widget{ - .cat-list{ - li{ - border-bottom: 2px dotted #eee; - transition: all 0.3s ease 0s; - padding-bottom: 12px; - a{ - font-size: 14px; - line-height: 20px; - color: #777; - p{ - margin-bottom: 0px; - } - } - & + li{ - padding-top: 15px; - } - &:hover{ - border-color: $primary-color; - a{ - color: $primary-color; - } - } - } - } - } - .newsletter_widget{ - text-align: center; - p{ - - } - .form-group{ - margin-bottom: 8px; - } - .input-group-prepend { - margin-right: -1px; - } - .input-group-text { - background: #fff; - border-radius: 0px; - vertical-align: top; - font-size: 12px; - line-height: 36px; - padding: 0px 0px 0px 15px; - border: 1px solid #eeeeee; - border-right: 0px; - - i{ - color: #cccccc; - } - } - .form-control{ - font-size: 12px; - line-height: 24px; - color: #cccccc; - border: 1px solid #eeeeee; - border-left: 0px; - border-radius: 0px; - @include placeholder{ - color: #cccccc; - } - &:focus{ - outline: none; - box-shadow: none; - } - } - .bbtns{ - background: $primary-color; - color: #fff; - font-size: 12px; - line-height: 38px; - display: inline-block; - font-weight: 500; - padding: 0px 24px 0px 24px; - border-radius: 0; - } - .text-bottom{ - font-size: 12px; - } - } - .tag_cloud_widget{ - ul{ - li{ - display: inline-block; - a{ - display: inline-block; - border: 1px solid #eee; - background: #fff; - padding: 0px 13px; - margin-bottom: 8px; - transition: all 0.3s ease 0s; - color: $title-color; - font-size: 12px; - &:hover{ - background: $primary-color; - color: #fff; - } - } - } - } - } - .br{ - width: 100%; - height: 1px; - background: rgb(238, 238, 238); - margin: 30px 0px; - } -} - -.blog-pagination { - padding-top: 25px; - padding-bottom: 95px; - .page-link { - border-radius: 0; - } - .page-item { - border: none; - } -} - -.page-link { - background: transparent; - font-weight: 400; -} - -.blog-pagination .page-item.active .page-link { - background-color: $primary-color; - border-color: transparent; - color:#fff; -} - -.blog-pagination .page-link { - position: relative; - display: block; - padding: 0.5rem 0.75rem; - margin-left: -1px; - line-height: 1.25; - color: #8a8a8a; - border: none; -} - -.blog-pagination .page-link .lnr { - font-weight: 600; -} - -.blog-pagination .page-item:last-child .page-link, -.blog-pagination .page-item:first-child .page-link { - border-radius: 0; -} - -.blog-pagination .page-link:hover { - color: #fff; - text-decoration: none; - background-color: $primary-color; - border-color: #eee; -} - - - -/*============ Start Blog Single Styles =============*/ - -.single-post-area { - .social-links { - padding-top: 10px; - li { - display: inline-block; - margin-bottom: 10px; - a { - color: #cccccc; - padding: 7px; - font-size: 14px; - transition: all 0.2s linear; - &:hover { - color: $title-color; - } - } - } - } - .blog_details{ - padding-top: 26px; - p{ - margin-bottom: 10px; - } - } - .quotes { - margin-top: 20px; - margin-bottom: 30px; - padding: 24px 35px 24px 30px; - background-color: rgb(255, 255, 255); - box-shadow: -20.84px 21.58px 30px 0px rgba(176, 176, 176, 0.1); - font-size: 14px; - line-height: 24px; - color: #777; - font-style: italic; - } - .arrow { - position: absolute; - .lnr { - font-size: 20px; - font-weight: 600; - } - } - .thumb { - .overlay-bg { - background: rgba(#000, .8); - } - } - .navigation-area { - border-top: 1px solid #eee; - padding-top: 30px; - margin-top: 60px; - p{ - margin-bottom: 0px; - } - h4{ - font-size: 18px; - line-height: 25px; - color: $title-color; - } - .nav-left { - text-align: left; - .thumb { - margin-right: 20px; - background: #000; - img { - @include transition(); - } - } - .lnr { - margin-left: 20px; - opacity: 0; - @include transition(); - } - &:hover { - .lnr { - opacity: 1; - } - .thumb { - img { - opacity: .5; - } - } - } - @media(max-width:767px) { - margin-bottom: 30px; - } - } - .nav-right { - text-align: right; - .thumb { - margin-left: 20px; - background: #000; - img { - @include transition(); - } - } - .lnr { - margin-right: 20px; - opacity: 0; - @include transition(); - } - &:hover { - .lnr { - opacity: 1; - } - .thumb { - img { - opacity: .5; - } - } - } - } - } - - .sidebar-widgets{ - @media(max-width:991px){ - padding-bottom:0px; - } - } -} - -.comments-area { - background:#fafaff; - border: 1px solid #eee; - padding: 50px 30px; - margin-top: 50px; - @media(max-width: 414px) { - padding: 50px 8px; - } - h4 { - text-align: center; - margin-bottom: 50px; - color: $title-color; - font-size: 18px; - } - h5 { - font-size: 16px; - margin-bottom: 0px; - } - a { - color: $title-color; - } - .comment-list { - padding-bottom: 48px; - &:last-child { - padding-bottom: 0px; - } - &.left-padding { - padding-left: 25px; - } - @media(max-width:413px) { - .single-comment { - h5 { - font-size: 12px; - } - .date { - font-size: 11px; - } - .comment { - font-size: 10px; - } - } - } - } - .thumb { - margin-right: 20px; - } - .date { - font-size: 13px; - color: #cccccc; - margin-bottom: 13px; - } - .comment { - color: #777777; - margin-bottom: 0px; - } - .btn-reply { - background-color: #fff; - color: $title-color; - // border:1px solid #eee; - padding: 5px 18px; - font-size: 12px; - display: block; - font-weight:400; - @include transition(); - &:hover { - background-color: $primary-color; - color: #fff; - font-weight: 700; - } - } -} - -.comment-form { - background:#fafaff; - text-align: center; - border: 1px solid #eee; - padding: 47px 30px 43px; - margin-top: 50px; - margin-bottom: 20px; - - .form-group{ - margin-bottom: 20px; - } - - h4 { - text-align: center; - margin-bottom: 50px; - font-size: 18px; - line-height: 22px; - color: $title-color; - } - .name { - padding-left: 0px; - @media(max-width: 767px) { - padding-right: 0px; - margin-bottom: 1rem; - } - } - .email { - padding-right: 0px; - @media(max-width: 991px) { - padding-left: 0px; - } - } - .form-control { - padding: 8px 20px; - background: #fff; - border: none; - border-radius: 0px; - width: 100%; - font-size: 14px; - color: #777777; - border: 1px solid transparent; - &:focus { - box-shadow: none; - border: 1px solid #eee; - } - - &::placeholder{ - color: #777777; - } - } - textarea{ - &.form-control{ - height: 140px; - resize: none; - } - } - ::-webkit-input-placeholder { - /* Chrome/Opera/Safari */ - font-size: 13px; - color: #777; - } - ::-moz-placeholder { - /* Firefox 19+ */ - font-size: 13px; - color: #777; - } - :-ms-input-placeholder { - /* IE 10+ */ - font-size: 13px; - color: #777; - } - :-moz-placeholder { - /* Firefox 18- */ - font-size: 13px; - color: #777; - } -} - - -/*============ End Blog Single Styles =============*/ - - - - diff --git a/_scss/theme/_btn.scss b/_scss/theme/_btn.scss deleted file mode 100644 index 73d5970..0000000 --- a/_scss/theme/_btn.scss +++ /dev/null @@ -1,87 +0,0 @@ -/*=================== custom button rule start ====================*/ -.button{ - display: inline-block; - border: 1px solid transparent; - text-transform: capitalize; - font-size: 15px; - font-weight: 500; - padding: 10px 24px; - border-radius: 30px; - background-color: $white; - color: $primary-color; - color: $title-color; - transition: all .4s ease; - - i,span{ - margin-left: 5px; - } - - @media(min-width: 900px){ - // padding: 12px 40px; - padding: 12px 45px; - } - - &:hover{ - background-color: transparent; - border-color: $primary-color; - color: #000022; - } - - &-header{ - padding: 12px 40px; - } - - &.bg:hover{ - border-color: $white; - color: $white; - } - - &-light{ - background-color: transparent; - border-color: $primary-color; - - &:hover{ - background-color: $primary-color; - color: $white; - } - } - - &-blog{ - border: 1px solid $primary-color; - border-radius: 4px; - font-size: 12px; - text-transform: uppercase; - letter-spacing: 1px; - font-weight: 500; - color: #222222; - padding: 7px 30px; - - &:hover{ - background-color: $primary-color; - color: $white; - } - } - - &-postComment{ - font-size: 12px; - text-transform: uppercase; - letter-spacing: 1px; - background-color: $primary-color; - color: $white; - border-radius: 4px; - padding: 14px 45px; - } - - &-contactForm{ - font-size: 15px; - background-color: $primary-color; - color: $white; - padding: 12px 36px; - - &:hover{ - border-color: $primary-color; - color: $primary-color; - } - } -} -/*=================== custom button rule end ====================*/ diff --git a/_scss/theme/_clients.scss b/_scss/theme/_clients.scss deleted file mode 100644 index 41a86f1..0000000 --- a/_scss/theme/_clients.scss +++ /dev/null @@ -1,286 +0,0 @@ -/* Our Major Cause Area css -============================================================================================ */ - -.our_major_cause { - .owl-item { - padding: 0 10px; - margin-bottom: 50px; - @media(max-width: 576px) { - margin-bottom: 0; - } - } - .card { - border: 0; - // box-shadow: 0 10px 44px -7px rgba(221, 221, 221, 0.85); - box-shadow: 0 3px 14px 0px rgba(221, 221, 221, 0.85); - margin-bottom: 30px; - overflow: hidden; - .card-body { - @media(max-width: 576px) { - padding: 5px; - } - } - figure { - overflow: hidden; - margin: 0; - img { - @include transition(); - } - } - .card_inner_body { - padding: 20px 12px 30px; - .card-body-top { - margin-bottom: 30px; - span { - // color: $dip; - } - } - } - .card-text { - margin-bottom: 0; - } - .progress { - overflow: visible; - height: 4px; - position: relative; - background: rgba(255, 255, 255, 0.2); - top: -4px; - .progress-bar { - // background-color: $baseColor; - span { - position: absolute; - bottom: -49px; - right: 11px; - font-size: 14px; - // color: $dip; - } - } - } - &:hover { - img { - @include transform(scale(1.2)); - } - .main_btn2 { - // background: $baseColor; - // border: 1px solid $baseColor; - color: $white; - } - } - } -} - -/* Clients Logo Area css -============================================================================================ */ - -.clients_logo_area { - .clients_slider { - .item { - text-align: center; - img { - width: auto; - text-align: center; - display: block; - margin: auto; - line-height: 70px; - @include filter(grayscale(100%)); - opacity: .2; - @include transition; - } - &:hover { - img { - opacity: 1; - @include filter(grayscale(0%)); - } - } - } - } -} - -.sponsors_logo_area { - .item { - text-align: center; - } -} - -/* End Clients Logo Area css -============================================================================================ */ - -/* Clients Says Area css -============================================================================================ */ - - -.says_left { - max-width: 335px; - h3 { - // color: $dip; - font-size: 36px; - line-height: 45px; - margin-bottom: 20px; - margin-top: 30px; - } - p { - margin-bottom: 0px; - } -} - -.says_item { - background: #fff; - border: 1px solid #eeeeee; - border-radius: 10px; - padding-left: 30px; - padding-right: 30px; - padding-top: 55px; - padding-bottom: 55px; - @include transition; - h4 { - font-size: 20px; - // color: $dip; - margin-bottom: 13px; - } - h5 { - // color: $pfont; - // font-family: $rob; - font-weight: 300; - font-size: 14px; - margin-bottom: 32px; - } - p { - margin-bottom: 0px; - } - &:hover { - box-shadow: 0px 10px 30px 0px rgba(98, 71, 234, 0.1); - border-color: #fff; - } -} - -/* End Clients Says Area css -============================================================================================ */ - -/* Start About Us css -=========================================================================================== */ - -.about_us { - .about_img { - &:after { - content: ''; - position: absolute; - // background: $lightGray; - top: 30px; - bottom: -5px; - left: -10px; - right: -10px; - z-index: 1; - @media (max-width: 1024px) { - background: $white; - } - } - img { - position: relative; - z-index: 2; - box-shadow: 0px 13px 35px #c9c9c9; - } - } - .content_wrapper { - padding: 25px 0; - h1 { - margin-bottom: 40px; - } - .main_btn { - margin-top: 50px; - } - } - .bottom_para { - margin-top: 50px; - } -} - -/* About Us css End -=========================================================================================== */ - -/* Start recent Events css -=========================================================================================== */ - -.recent_event { - .single_event { - margin-bottom: 30px; - figure { - overflow: hidden; - margin: 0; - position: relative; - img { - @include transition(); - } - } - .content_wrapper { - padding: 22px 28px 10px 0px; - @media(max-width: 1024px) { - padding: 0; - } - @media(max-width:1024px) { - margin-top: 0; - } - .date_time { - font-size: 12px; - margin-bottom: 10px; - @media(max-width: 1024px) { - margin-bottom: 0; - } - } - .title { - margin-bottom: 20px; - @media(max-width: 1024px) { - margin-bottom: 10; - } - a { - // color: $dip; - } - } - } - &:hover { - .title { - a { - // color: $baseColor; - } - } - img { - @include transform(scale(1.2)); - } - .img-overlay { - background: initial; - } - } - } -} - -/* recent Events css End -=========================================================================================== */ - -/* Start recent Details css -=========================================================================================== */ - -.event_details { - .event_content { - margin-top: 40px; - } - .left_content { - margin-top: 38px; - @media(max-width: 991px) { - margin-top: 0; - } - p { - i { - margin-right: 10px; - } - } - } - .right_content { - h2 { - margin-bottom: 20px; - } - p { - &:last-child { - margin-bottom: 0; - } - } - } -} diff --git a/_scss/theme/_contact.scss b/_scss/theme/_contact.scss deleted file mode 100644 index 85f83cc..0000000 --- a/_scss/theme/_contact.scss +++ /dev/null @@ -1,132 +0,0 @@ -/*=================== contact banner start ====================*/ -.contact-banner{ - position: relative; - - h4,h1,a{ - text-transform: uppercase; - color: #fff; - } - - h4{ - font-size: 18px; - margin-bottom: 15px; - } - - h1{ - font-size: 37px; - margin-bottom: 5px; - - @media(min-width: 992px){ - font-size: 48px; - } - } - - &-area{ - height: 280px; - background: url('../../assets/images/contact-bg.png') center center no-repeat; - background-size: cover; - position: relative; - z-index: 1; - - @media(min-width: 991px){ - height: 450px; - } - - .contact-banner{ - position: absolute; - top: 50%; - left: 50%; - width: 100%; - transform: translate(-50%, -50%); - } - - - &::after{ - content: ""; - display: block; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: rgba(1, 2, 11, 0.7); - z-index: -1; - } - } - - &-btn{ - border:2px solid $primary-color; - padding: 10px 45px; - - &:hover{ - background: $primary-color; - color: #fff; - } - } -} - -.contact-info{ - - &__icon{ - margin-right: 20px; - - i,span{ - color: $primary-color; - font-size: 20px; - } - } - - .media-body{ - - h3{ - font-size: 16px; - margin-bottom: 0; - - a{ - color: $title-color; - } - } - - p{ - color: #999999; - } - } -} -/*=================== contact banner end ====================*/ - - -/*=================== contact form start ====================*/ -.form-contact{ - - .form-group{ - margin-bottom: 10px; - } - - .form-control{ - border-radius: 0; - height: 40px; - padding-left: 18px; - border-color: transparent; - background: rgba(130, 139, 178, 0.1); - - &:focus{ - outline: 0; - box-shadow: none; - } - - &::placeholder{ - font-size: 14px; - color: #999999; - } - } - - .different-control{ - height: 100% !important; - } - - // button{ - // border: 0; - // } -} - -/*=================== contact form end ====================*/ diff --git a/_scss/theme/_footer.scss b/_scss/theme/_footer.scss deleted file mode 100644 index 4bb6049..0000000 --- a/_scss/theme/_footer.scss +++ /dev/null @@ -1,140 +0,0 @@ -/* footer style start - ============================================================================================ */ -.footer-area { - padding: 20px 0px 20px; - background: #0e1424; - @media (max-width: 991px) { - // background: $title-color; - padding: 60px 0px; - } - .single-footer-widget { - @media (max-width: 991px) { - margin-bottom: 30px; - } - - p{ - color: #7b838a; - } - - h4 { - color: $white; - font-size: 22px; - margin-bottom: 25px; - font-weight: 600; - @media (max-width: 1024px) { - font-size: 18px; - } - @media (max-width: 991px) { - margin-bottom: 15px; - } - } - ul { - li { - margin-bottom: 10px; - a { - // @include transition(); - color: $link-color; - // &:hover { - // color: $primary-color; - // } - } - } - } - .form-wrap { - margin-top: 25px; - } - input { - height: 48px; - border: none; - width: 67% !important; - font-weight: 400; - background: rgba(255, 255, 255, 0.2); - color: $white; - padding-left: 20px; - border-radius: 0; - font-size: 14px; - padding: 10px; - &:focus { - outline: none; - box-shadow: none; - } - @include placeholder { - padding-left: 10px; - color: $link-color; - } - } - .click-btn { - // @extend .gradient-bg; - font-family: $text-font; - color: $title-color; - border-radius: 0; - border-top-left-radius: 0px; - border-bottom-left-radius: 0px; - padding: 8px 20px; - border: 0; - font-size: 14px; - background: $white; - font-weight: 500; - text-transform: capitalize; - position: relative; - left: 0; - &:focus { - outline: none; - box-shadow: none; - } - - @media(max-width: 375px){ - margin-top: 10px; - } - - @media(min-width: 400px){ - left: -50px; - } - } - } - .footer-bottom { - margin-top: 10px; - @media (max-width: 991px) { - margin-top: 20px; - } - p { - color: $link-color; - - a{ - color: $white; - } - } - // span { - // font-weight: 700; - // } - .footer-social { - text-align: center; - @media (max-width: 991px) { - text-align: left; - margin-top: 30px; - } - a { - background: rgba(255, 255, 255, 0.15); - margin-left: 3px; - width: 32px; - color: $white; - display: inline-grid; - text-align: center; - height: 32px; - align-content: center; - // @include transition(); - &:hover { - // @extend .gradient-bg; - background: $white; - color: $primary-color; - } - - i,span{ - font-size: 14px; - } - } - } - } -} -/* footer style end - ============================================================================================ */ diff --git a/_scss/theme/_header.scss b/_scss/theme/_header.scss deleted file mode 100644 index f342e1f..0000000 --- a/_scss/theme/_header.scss +++ /dev/null @@ -1,285 +0,0 @@ -/* header style start - ============================================================================================ */ - .header_area{ - position: absolute; - top: 0; - width: 100%; - z-index: 99; - // background: #fff; - transition: background 0.4s, all 0.3s linear; - - .navbar-right{ - min-width: 200px; - text-align: right; - - @media(max-width: 991px){ - margin: 20px 0; - } - } - - .navbar-brand{ - margin-right: 30px; - } - .navbar-social{ - min-width: 95px; - float: right; - - li{ - margin-right: 12px; - - i,span{ - font-size: 13px; - color: $black; - } - - &:last-child{ - margin-right: 0; - } - - a:hover i,span{ - color: $primary-color; - } - } - } -.menu_nav{ - width: 100%; -} - .navbar{ - background: transparent; - padding: 5px 0; - border: 0px; - border-radius: 0px; - width: 100%; - @media(min-width: 991px){ - padding: 20px 0; - } - .nav{ - .nav-item{ - margin-right: 30px; - .nav-link{ - // font: 500 12px/100px $rob; - font-family: $text-font; - color: $white; - font-size: 18px; - text-transform: capitalize; - font-weight: 700; - // color: #fff; - // padding: 30px 0; - display: inline-block; - &:after{ - display: none; - } - } - &:hover, &.active{ - .nav-link{ - color: #ffcb05; - } - } - &.submenu{ - position: relative; - ul{ - border: none; - padding: 0px; - border-radius: 0px; - box-shadow: none; - margin: 0px; - background: #fff; - @media (min-width: 992px){ - position: absolute; - top: 120%; - left: 0px; - min-width: 200px; - text-align: left; - opacity: 0; - transition: all 300ms ease-in; - visibility: hidden; - display: block; - border: none; - padding: 0px; - border-radius: 0px; - box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.4); - } - &:before{ - content: ""; - width: 0; - height: 0; - border-style: solid; - border-width: 10px 10px 0 10px; - border-color: #eeeeee transparent transparent transparent; - position: absolute; - right: 24px; - top: 45px; - z-index: 3; - opacity: 0; - transition: all 400ms linear; - } - .nav-item{ - display: block; - float: none; - margin-right: 0px; - border-bottom: 1px solid #ededed; - margin-left: 0px; - transition: all 0.4s linear; - .nav-link{ - line-height: 45px; - // color: $dip; - color: $primary-color !important; - padding: 0px 30px; - transition: all 150ms linear; - display: block; - margin-right: 0px; - } - &:last-child{ - border-bottom: none; - } - &:hover{ - .nav-link{ - background-color: $primary-color; - color: #fff !important; - } - } - } - } - &:hover{ - ul{ - @media (min-width: 992px){ - visibility: visible; - opacity: 1; - top: 100%; - } - .nav-item{ - margin-top: 0px; - } - } - } - } - &:last-child{ - margin-right: 0px; - } - } - } - .search{ - font-size: 12px; - line-height: 60px; - display: inline-block; - // color: $dip; - margin-left: 80px; - i{ - font-weight: 600; - } - } - } -&.navbar_fixed{ - .main_menu{ - position: fixed; - width: 100%; - top: -70px; - left: 0; - right: 0; - background: #002d72; - z-index: 99; - // background: $baseColor; - transform: translateY(70px); - transition: transform 500ms ease, background 500ms ease; - -webkit-transition: transform 500ms ease, background 500ms ease; - box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.1); - .navbar{ - .nav{ - .nav-item{ - .nav-link{ - line-height: 20px; - } - } - } - } - } -} -&.white_menu{ - .navbar{ - .navbar-brand{ - @media(min-width: 992px){ - img{ - display: none; - & + img{ - display: inline-block; - } - } - } - @media(max-width: 991px){ - img{ - display: inline-block; - & + img{ - display: none; - } - } - } - } - .nav{ - .nav-item{ - .nav-link{ - color: #fff; - } - } - } - } - &.navbar_fixed{ - .main_menu{ - .navbar{ - .navbar-brand{ - img{ - display: inline-block; - & + img{ - display: none; - } - } - } - .nav{ - .nav-item{ - .nav-link{ - line-height: 70px; - // color: $dip; - } - } - } - } - } - } -} -} - -.top_menu{ -background: #ec9d5f; -.float-left{ - a{ - line-height: 40px; - display: inline-block; - color: #fff; - // font-family: $rob; - text-transform: uppercase; - font-size: 12px; - margin-right: 50px; - @include transition; - &:last-child{ - margin-right: 0px; - } - &:hover{ - // color: $baseColor; - } - } -} -.float-right{ - .pur_btn{ - // background: $baseColor; - color: #fff; - // font-family: $rob; - line-height: 40px; - display: block; - padding: 0px 40px; - font-weight: 500; - font-size: 12px; - } -} -} - -/* header style end - ============================================================================================ */ diff --git a/_scss/theme/_home.scss b/_scss/theme/_home.scss deleted file mode 100644 index 4d6afa4..0000000 --- a/_scss/theme/_home.scss +++ /dev/null @@ -1,798 +0,0 @@ -.main_title h2 { - text-align: center!important; -} - -.card-feature{ - padding: 15px 15px; - border: 0; - border-radius: 0; - background: #faf9ff; - @include transition; - - &__icon{ - margin-bottom: 12px; - - i,span{ - font-size: 30px; - color: $primary-color; - } - } - - &__title{ - font-size: 22px; - font-weight: 600; - } - - &__subtitle{ - margin-bottom: 0; - } - - &:hover{ - background: $white; - box-shadow: 0px 10px 20px 0px rgba(33, 20, 106, 0.1); - } -} - - - -.about{ - - &__img{ - - } - - &__content{ - - h2{ - margin-bottom: 20px; - } - - p{ - margin-bottom: 38px; - } - } -} - - - -.offer-single{ - margin-bottom: 30px; - - @media(min-width: 991px){ - margin-bottom: 50px; - } - - &__content{ - border: 0; - border-radius: 0; - background: #faf9ff; - padding: 30px 23px; - @include transition; - - h4{ - font-size: 22px; - font-weight: 600; - } - - p{ - margin-bottom: 0; - } - - &:hover{ - background: $white; - box-shadow: 0px 10px 20px 0px rgba(33, 20, 106, 0.1); - } - } - - &__icon{ - display: inline-block; - margin-bottom: 15px; - - i,span{ - font-size: 30px; - color: $primary-color; - } - } - - @media(min-width: 991px){ - &__img{ - position: absolute; - width: 100%; - // height: 100%; - top: 50%; - transform: translateY(-50%); - // left: 110px; - - @media(min-width: 1200px){ - transform: translateY(0); - top: 50px; - left: 100px; - } - } - } - - - &-wrapper{ - - .offer-single:nth-child(even){ - - @media(min-width: 991px){ - position: relative; - top: 40px; - } - } - } -} - - -.solution{ - - &__img{ - @media(min-width: 1200px){ - position: relative; - left: -60px; - } - } - - &__content{ - // max-width: 460px; - - @media(min-width: 1200px){ - padding-left: 30px; - padding-right: 45px; - } - - h2{ - margin-bottom: 20px; - } - - p{ - margin-bottom: 30px; - } - } -} - -.card-pricing{ - background: #faf9ff; - border-radius: 3px; - border: 0; - @include transition; - - &:hover{ - background: $white; - box-shadow: 0px 20px 25.5px 4.5px rgba(33, 20, 106, 0.1); - - .button{ - background: $primary-color; - color: $white; - } - } - - &__header{ - border-bottom: 1px solid #ebebeb; - padding: 40px 7px; - - h4{ - font-size: 27px; - font-weight: 700; - margin-bottom: 5px; - } - - p{ - margin-bottom: 27px; - } - } - - &__price{ - font-size: 40px; - font-family: $text-font; - font-weight: 700; - margin: 0; - - @media(min-width: 991px){ - font-size: 60px; - } - - span{ - font-size: 40px; - vertical-align: middle; - position: relative; - bottom: 5px; - } - } - - &__list{ - padding: 30px 8px 25px 8px; - border-bottom: 1px solid #ebebeb; - - li{ - margin-bottom: 12px; - - &:last-child{ - margin-bottom: 0; - } - - i,span{ - font-size: 13px; - margin-right: 10px; - } - - &.unvalid{ - - i,span{ - color: #f81c1c; - font-size: 12px; - } - } - } - } - - &__footer{ - padding: 45px 0; - } -} - -/* Start team members css -============================================================================================ */ -.team_members_area { - padding-bottom: 100px; - @media (max-width: 991px) { - padding-bottom: 40px; - } -} - -.single-team-member { - margin-bottom: 15px; - .thumb { - position: relative; - .img-team { - width: 200px; - height: 200px; - border-radius: 50%; - } - } - .meta-text { - background: $offwhite; - padding: 15px 15px; - box-shadow: 0px 0px 30px rgba(153, 153, 153, 0.13); - @include transition(); - @media (max-width: 991px) { - padding: 20px 20px; - } - background: #ffffff; - h4 { - font-size: 16px; - margin-bottom: 0px; - } - .designation { - font-size: 14px; - min-height: 20px; - margin-bottom: 5px; - } - a { - font-size: 16px; - margin: 0 10px; - @include transition(); - } - b { - color: #3a414e; - } - } - &:hover { - .meta-text { - box-shadow: 0px 10px 30px rgba($title-color, 0.15); - } - } -} -/* End team members css -============================================================================================ */ - -/* Start Event Area css -============================================================================================ */ - -.events_area { - padding: 130px 0 100px; - background: $title-color; - @media (max-width: 991px) { - padding: 70px 0; - } - .event-link { - color: $primary-color; - font-size: 13px; - text-transform: uppercase; - img { - margin-left: 5px; - display: inline-block; - } - } -} - -.single_event { - margin-bottom: 30px; - .event_thumb { - overflow: hidden; - img { - @include transition(); - } - } - .event_details { - background: rgba($title-color, 0.5); - position: absolute; - top: 0px; - right: 0px; - width: 275px; - padding: 30px 25px; - color: #ffffff; - .date { - color: #ffffff; - padding-right: 15px; - border-right: 2px solid #fff; - font-family: $title-font; - font-size: 14px; - span { - display: block; - color: $primary-color; - font-size: 28px; - font-weight: 500; - } - } - .time-location { - padding-left: 15px; - font-size: 14px; - p { - margin-bottom: 0px; - span { - color: #ffffff; - font-size: 13px; - font-weight: 500; - } - } - } - } - &:hover { - img { - transform: scale(1.1); - } - h4 { - a { - color: $primary-color; - } - } - } -} - -/* End Event Area css -============================================================================================ */ - -.testimonial{ - max-width: 970px; - margin-right: auto; - margin-left: auto; - - &__item{ - // position: relative; - } - - &__img{ - width: 120px; - height: 120px; - margin-left: auto; - margin-right: auto; - position: relative; - top: 30px; - z-index: 5; - } - - &__content{ - background: $white; - padding: 50px 10px 35px 10px; - position: relative; - // border: 1px solid red; - - @media(min-width: 1000px){ - padding: 50px 20px 35px 20px; - } - - h3{ - font-size: 22px; - font-weight: 600; - margin-bottom: 0; - } - - p{ - font-size: 14px; - } - } - - &__i{ - font-size: 15px !important; - font-style: italic; - margin-bottom: 0; - } - - &__icon{ - font-size: 173px; - color: rgba(119, 119, 119, 0.1); - position: absolute; - top : 50%; - transform: translateY(-50%); - right: 120px; - } - - .owl-dots{ - margin-top: 40px !important; - - .owl-dot{ - - span{ - width: 20px; - height: 6px; - background: rgb(211, 210, 213); - border-radius: 2px; - margin: 5px 10px; - } - - &.active span{ - background: $primary-color; - } - } - } -} -/* Start news card area css -============================================================================================ */ -.newscard_area { - .owl-carousel { - .owl-dots { - display: block !important; - text-align: center; - .owl-dot { - height: 10px; - width: 10px; - background: $white; - border-radius: 17px; - border: 2px solid #fff; - display: inline-block; - margin-right: 10px; - @include transition(); - &.active { - height: 12px; - width: 12px; - background: $link-color; - } - } - @media (max-width: 991px) { - display: none !important; - } - } - // .owl-item { - // img { - // width: auto !important; - // } - // } - } - .main_title { - h2 { - color: $white; - } - } -} -.newscard_item { - padding: 10px 15px; - margin-bottom: 200px; - margin-left: 10px; - margin: 0px 10px 10px; - box-shadow: 0px 15px 30px 0px rgba(221, 221, 221, 0.3); - background-color: $white; - @include transition(); - @media (max-width: 991px) { - margin-bottom: 0px; - } - @media (max-width: 575px) { - padding: 30px 20px; - } - img { - border-radius: 5px; - } - &__icon{ - i,span{ - font-size: 30px; - color: $primary-color; - } - } - .col-lg-2 { - padding-right: 0; - } - .col-lg-8 { - vertical-align: middle; - align-self: center; - } - .testi_text { - @media (max-width: 991px) { - margin-top: 50px; - } - h4 { - font-size: 20px; - margin-top: 5px; - text-transform: capitalize; - } - p { - margin-bottom: 0px; - } - } - &:hover { - box-shadow: 0px 10px 30px 0px rgba($title-color, 0.1); - } -} -/* End news card area css -============================================================================================ */ - -/* Start recent projects css -============================================================================================ */ - -.recent_projects { - padding-bottom: 10px; - @media (max-width: 991px) { - padding-bottom: 40px; - } - .owl-item { - opacity: 0; - @include transition(); - padding: 0px 10px; - padding-bottom: 30px; - } - .owl-item.active { - opacity: 1; - } - .owl-nav { - display: flex !important; - justify-content: space-between; - position: absolute; - top: 50%; - width: 120%; - transform: translateY(-50%); - left: -11%; - @media (max-width: 991px) { - display: none!important; - } - .owl-prev, - .owl-next { - img { - @include filter(grayscale(100%)); - @include transition(); - &:hover { - @include filter(grayscale(0%)); - } - } - } - } -} - -.single_recent_project { - @include transition(); - .recent_project_head { - position: relative; - overflow: hidden; - img { - @include transition(); - } - } - .recent_project_content { - padding: 30px 26px; - background: $offwhite; - position: relative; - @include transition(); - .tag { - padding: 2px 21px; - font-size: 13px; - color: #fff; - background: $title-color; - text-transform: uppercase; - } - h4 { - font-size: 20px; - font-weight: 500; - a { - color: $title-color; - } - } - p { - margin: 0; - } - .recent_project_meta { - margin-top: 25px; - .meta_info { - a { - color: $title-color; - } - } - } - } - .authr_meta { - img { - width: auto !important; - display: inline-block !important; - } - span { - color: $title-color; - font-weight: 500; - } - } - &:hover { - box-shadow: 0px 10px 30px rgba($title-color, 0.1); - .recent_project_head { - img { - @include transform(scale(1.2)); - } - } - .recent_project_content { - background: #fff; - } - h4 { - a { - color: $primary-color; - } - } - } -} - -/* End recent projects css -============================================================================================ */ - -/* Start Courses Details Area css -============================================================================================ */ - -.course_details_area { - .title { - font-size: 21px; - border: none; - cursor: pointer; - margin-top: 40px; - border-bottom: 1px solid #eeeeee; - position: relative; - padding-bottom: 10px; - margin-bottom: 22px; - &:after { - content: ""; - position: absolute; - left: 0; - bottom: -1px; - height: 1px; - width: 74px; - background: $primary-color; - } - } -} - -.course_details_left { - .content_wrapper { - } - .content { - } - .course_list { - margin-bottom: 0; - @media (max-width: 575px) { - padding-left: 0; - } - li { - list-style: none; - margin-bottom: 20px; - .primary-btn { - background: #f9f9f9; - color: $text-color; - box-shadow: none; - font-size: 12px; - border-radius: 0px; - &:hover { - background: $primary-color; - color: #ffffff; - } - @media (max-width: 575px) { - min-width: 100px; - font-size: 10px; - padding: 0 10px; - } - } - &:last-child { - margin-bottom: 0; - } - } - } -} - -.right-contents { - @media (max-width: 991px) { - margin-top: 50px; - } - ul { - padding-left: 0; - li { - list-style: none; - background: #f9f9f9; - padding: 10px 22px; - margin-bottom: 10px; - a { - color: $text-color; - text-align: left; - p { - margin-bottom: 0px; - } - } - .or { - color: $title-color; - font-weight: 500; - } - } - } - .enroll { - margin-top: 10px; - width: 100%; - } - .reviews { - span, - .star { - width: 31%; - margin-bottom: 10px; - } - } - .avg-review { - background: #04091e; - text-align: center; - color: #ffffff; - font-size: 14px; - font-weight: 600; - padding: 20px 0px; - span { - font-size: 18px; - color: $primary-color; - } - @media (max-width: 991px) { - margin-bottom: 20px; - } - } - .single-reviews { - .thumb { - @media (max-width: 1024px) { - margin-right: 10px; - } - } - h5 { - display: inline-flex; - @media (max-width: 1024px) { - display: block; - } - .star { - margin-left: 10px; - @media (max-width: 1024px) { - margin: 10px 0; - } - } - } - } - .feedeback { - margin-top: 30px; - textarea { - resize: none; - height: 130px; - background: $offwhite; - &:focus { - box-shadow: none; - } - } - } - .star { - .checked { - color: $primary-color; - } - } - .comments-area { - padding: 0; - border: 0; - background: transparent; - .star { - margin-left: 20px; - } - } -} - -/* End Courses Details Area css -============================================================================================ */ diff --git a/_scss/theme/_mixins.scss b/_scss/theme/_mixins.scss deleted file mode 100644 index 3b2fffd..0000000 --- a/_scss/theme/_mixins.scss +++ /dev/null @@ -1,164 +0,0 @@ -/* mixin start - ============================================================================================ */ - -@mixin transition($args: all 0.3s ease 0s) { - -webkit-transition: $args; - -moz-transition: $args; - -o-transition: $args; - transition: $args; - } - - @mixin transition-duration($args1, $args2) { - -webkit-transition-duration: $args1, $args2; - -moz-transition-duration: $args1, $args2; - -o-transition-duration: $args1, $args2; - transition-duration: $args1, $args2; - } - - @mixin transition-delay($args1, $args2) { - -webkit-transition-delay: $args1, $args2; - -moz-transition-delay: $args1, $args2; - -o-transition-delay: $args1, $args2; - transition-delay: $args1, $args2; - } - - @mixin transition-property($args1, $args2) { - -webkit-transition-property: $args1, $args2; - -moz-transition-property: $args1, $args2; - -o-transition-property: $args1, $args2; - transition-property: $args1, $args2; - } - - - - @mixin gradient($deg, $args1, $args2) { - background: -webkit-linear-gradient($deg, $args1, $args2); - background: -moz-linear-gradient($deg, $args1, $args2); - background: -o-linear-gradient($deg, $args1, $args2); - background: linear-gradient($deg, $args1, $args2); - } - - - // fliter mixin - - @mixin filter($filter-type,$filter-amount) { - -webkit-filter: $filter-type+unquote('(#{$filter-amount})'); - -moz-filter: $filter-type+unquote('(#{$filter-amount})'); - -ms-filter: $filter-type+unquote('(#{$filter-amount})'); - -o-filter: $filter-type+unquote('(#{$filter-amount})'); - filter: $filter-type+unquote('(#{$filter-amount})'); - } - - - - @mixin transform($transform) { - -webkit-transform: $transform; - -moz-transform: $transform; - -ms-transform: $transform; - -o-transform: $transform; - transform: $transform; - } - - @mixin transform-origin($value) { - -webkit-transform-origin: $value; - -moz-transform-origin: $value; - -ms-transform-origin: $value; - -o-transform-origin: $value; - transform-origin: $value; - } - - @mixin backface-visibility($value) { - -webkit-backface-visibility: $value; - -moz-backface-visibility: $value; - backface-visibility: $value; - } - - @mixin calc ( $property, $expression ) { - #{$property}: -webkit-calc(#{$expression}); - #{$property}: -moz-calc(#{$expression}); - #{$property}: calc(#{$expression}); - } - - @mixin keyframes ( $animation-name ) { - @-webkit-keyframes #{$animation-name} { - @content; - } - @-moz-keyframes #{$animation-name} { - @content; - } - @-o-keyframes #{$animation-name} { - @content; - } - @keyframes #{$animation-name} { - @content; - } - } - - @mixin filter($filter) { - -webkit-filter: $filter; - -moz-filter: $filter; - -o-filter: $filter; - -ms-filter: $filter; - filter: $filter; -} - - // Placeholder Mixins - @mixin placeholder { - &.placeholder { - @content; - } - &:-moz-placeholder { - @content; - } - &::-moz-placeholder { - @content; - } - &::-webkit-input-placeholder { - @content; - } - } - - @mixin animation ($args) { - -webkit-animation: $args; - -moz-animation: $args; - -o-animation: $args; - animation: $args; - } - - /* Medium Layout: 1280px */ - @mixin medium { - @media (min-width: 992px) and (max-width: 1400px) { - @content; - } -} - - /* Tablet Layout: 768px */ - @mixin tablet { - @media (min-width: 768px) and (max-width: 1200px) { - @content; - } -} - - /* Mobile Layout: 320px */ - @mixin mobile { - @media (max-width: 767px) { - @content; - } -} - - /* Wide Mobile Layout: 480px */ - @mixin wide-mobile { - @media (min-width: 480px) and (max-width: 767px) { - @content; - } -} - - - @mixin cmq ($min, $max) { - @media (min-width: $min) and (max-width: $max) { - @content; - } -} - -/* mixin end - ============================================================================================ */ diff --git a/_scss/theme/_news.scss b/_scss/theme/_news.scss deleted file mode 100644 index 6192f82..0000000 --- a/_scss/theme/_news.scss +++ /dev/null @@ -1,37 +0,0 @@ -.news { - padding: 10px; - background-color: #fef4e9; - border-radius: 4px; - margin-bottom: 20px; -} -.newslist { - padding-left:10px; -} -.newslist li { - margin-bottom:10px; - font-size: 20px; - color: #2d2929; -} -.newslist details { - font-size: 16px; - color: #797979; - margin-left: 10px; - display: inline; -} -.newslist details[open] { - margin-left: 155px; - display: block; -} -.newsdate { - font-weight: bold; - color: #808080; - width: 100px; - font-size: 18px; - display: inline-block; -} -.newsicon { - font-size: 30px; - width: 50px; - color: $primary-color; - padding-right: 20px; -} diff --git a/_scss/theme/_projects.scss b/_scss/theme/_projects.scss deleted file mode 100644 index 3518a14..0000000 --- a/_scss/theme/_projects.scss +++ /dev/null @@ -1,6 +0,0 @@ -.project-img { - width:100%; -} -.project { - padding-top: 10px; -} \ No newline at end of file diff --git a/_scss/theme/_publications.scss b/_scss/theme/_publications.scss deleted file mode 100644 index df4f1a2..0000000 --- a/_scss/theme/_publications.scss +++ /dev/null @@ -1,38 +0,0 @@ -a.nodec { - color: #333333; - text-decoration:none -} -a.nodec:hover { - color:#4582ec; -} -.publications { - /* list-style: none; - margin: 0; - font-size: 18px; - */ - padding-left: 1em; -} -.publications li { - padding-left: 2px; - padding-bottom: 10px; - position: relative; -} -.authorlist { -} -.papertitle { -} -.conf { - padding-right: 0.5rem; - border: none; - border-radius: 2px; - display: inline-block; - height: 36px; - line-height: 36px; - vertical-align: middle; -} -a.conf { - color: #515151; -} -.publinkitem { - padding: 0 0.5rem; -} \ No newline at end of file diff --git a/_scss/theme/_reset.scss b/_scss/theme/_reset.scss deleted file mode 100644 index 69df23e..0000000 --- a/_scss/theme/_reset.scss +++ /dev/null @@ -1,130 +0,0 @@ -/* global style start - ============================================================================================ */ - -body { - color: $text-color; - font-family: $text-font; - font-size: 16px; - font-weight: 400; - line-height: 1.667; -} - -ul{ - margin: 0; - padding: 0; -} - -a:hover{ - text-decoration: none; -} - -button{ - cursor: pointer; - - &:focus{ - outline: 0; - box-shadow: none; - } -} - -h1, -h2, -h3, -h4, -h5, -h6 { - font-family: $title-font; - color: $title-color; - line-height: 1.25; -} - -h1, -.h1 { - font-size: 30px; - font-weight: 700; - line-height: 1.2; - - @media(min-width: 600px){ - font-size: 50px; - } -} -h2, -.h2 { - font-size: 28px; - font-weight: 700; - - @media(min-width: 1000px){ - font-size: 36px; - } -} -h3,.h3{ - font-size: 20px; - font-weight: 600; - - @media(min-width: 1000px){ - font-size: 22px; - } -} - -.pb-85px{ - padding-bottom: 45px; - - @media(min-width: 1000px){ - padding-bottom: 85px; - } -} - -.section-margin{ - margin: 60px 0; - - @media(min-width: 1000px){ - margin: 60px 0; - } - - @media(min-width: 1200px){ - margin: 65px 0; - } - - &--medium{ - margin: 40px 0; - - @media(min-width: 800px){ - margin: 60px 0; - } - - @media(min-width: 1200px){ - margin: 60px 0; - } - } -} - -.section-padding{ - padding: 60px 0; - - @media(min-width: 1000px){ - padding: 60px 0; - } - - @media(min-width: 1200px){ - padding: 65px 0; - } - - &--small{ - padding: 40px 0; - - @media(min-width: 1000px){ - padding: 60px 0; - } - } -} - -.bg-magnolia{ - background: $magnolia; -} - -.bg-secshade { - background: #262431; -} - -/* global style end - ============================================================================================ */ diff --git a/_scss/theme/_responsive.scss b/_scss/theme/_responsive.scss deleted file mode 100644 index 43fef14..0000000 --- a/_scss/theme/_responsive.scss +++ /dev/null @@ -1,379 +0,0 @@ -@media (max-width:1619px){ - /* Main Menu Area css - ============================================================================================ */ - .header_area .navbar .search { - margin-left: 40px; - } - /* End Main Menu Area css - ============================================================================================ */ -} -@media (max-width:1300px){ -} -@media (max-width:1199px){ - /* Main Menu Area css - ============================================================================================ */ - .header_area .navbar .nav .nav-item { - margin-right: 28px; - } - /* End Main Menu Area css - ============================================================================================ */ - /* Home Banner Area css - ============================================================================================ */ - .home_banner_area .banner_inner { - padding: 100px 0px; - } - /* End Home Banner Area css - ============================================================================================ */ - .header_area .navbar .tickets_btn { - margin-left: 40px; - } - .home_banner_area .banner_inner .banner_content h2 br { - display: none; - font-size: 36px; - } - .home_banner_area .banner_inner .banner_content h2 { - font-size: 36px; - line-height: 45px; - } -} - -@media (max-width:991px){ - /* Main Menu Area css - ============================================================================================ */ - .navbar-toggler { - border: none; - border-radius: 0px; - padding: 0px; - cursor: pointer; - margin-top: 27px; - margin-bottom: 23px; - } - .header_area .navbar { - background: #412fb3; - } - .navbar-toggler[aria-expanded="false"] span:nth-child(2) { - opacity: 1; - } - .navbar-toggler[aria-expanded="true"] span:nth-child(2) { - opacity: 0; - } - .navbar-toggler[aria-expanded="true"] span:first-child { - transform: rotate(-45deg); - position: relative; - top: 7.5px; - } - .navbar-toggler[aria-expanded="true"] span:last-child { - transform: rotate(45deg); - bottom: 6px; - position: relative; - } - .navbar-toggler span{ - display: block; - width: 25px; - height: 3px; - background: #fff; - margin: auto; - margin-bottom: 4px; - transition: all 400ms linear; - cursor: pointer; - } - .navbar .container{ - padding-left: 15px; - padding-right: 15px; - } - .nav{ - padding: 0px 0px; - } - .header_area + section, .header_area + row, .header_area + div { - margin-top: 117px; - } - .header_top .nav{ - padding: 0px; - } - .header_area .navbar .nav .nav-item .nav-link{ - line-height: 30px; - margin-right: 0px; - display: block; - border-bottom: 1px solid #ededed33; - border-radius: 0px; - } - .header_area .navbar .search{ - margin-left: 0px; - } - .header_area .navbar-collapse{ - max-height: 340px; - overflow-y: scroll; - } - .header_area .navbar .nav .nav-item.submenu ul .nav-item .nav-link { - padding: 0px 15px; - } - .header_area .navbar .nav .nav-item { - margin-right: 0px; - } - .header_area + section, .header_area + row, .header_area + div { - margin-top: 41px; - } - .home_banner_area .banner_inner .banner_content .banner_map_img { - display: none; - } - .header_area.navbar_fixed .main_menu .navbar .nav .nav-item .nav-link { - line-height: 40px; - } - .header_area.white_menu.navbar_fixed .main_menu .navbar .nav .nav-item .nav-link { - line-height: 40px; - } - .header_area.white_menu .navbar .nav .nav-item .nav-link { - color: #222; - } - /* End Main Menu Area css - ============================================================================================ */ - /* Blog page Area css - ============================================================================================ */ - .categories_post img{ - width: 100%; - } - .categories_post { - max-width: 360px; - margin: 0 auto; - } - .blog_categorie_area .col-lg-4{ - margin-top: 30px; - } - .blog_area{ - padding-bottom: 80px; - } - .single-post-area .blog_right_sidebar{ - margin-top: 30px; - } - /* End Blog page Area css - ============================================================================================ */ - - /* Contact Page Area css - ============================================================================================ */ - .contact_info{ - margin-bottom: 50px; - } - /* End Contact page Area css - ============================================================================================ */ - .home_banner_area .donation_inner{ - margin-bottom: -30px; - } - .home_banner_area .dontation_item{ - max-width: 350px; - margin: auto; - } - /* Footer Area css - ============================================================================================ */ - .footer_area .col-sm-6{ - margin-bottom: 30px; - } - .footer_area .footer_inner{ - margin-bottom: -30px; - } - .news_widget { - padding-left: 0px; - } - /* End End Footer Area css - ============================================================================================ */ - .home_banner_area .banner_inner .home_left_img { - display: none; - } - .header_area .navbar .tickets_btn { - display: none; - } - .home_banner_area .banner_inner { - padding: 70px 0px 100px 0px; - } - .left_side_text { - margin-bottom: 50px; - } - .price_item { - max-width: 360px; - margin: 0px auto 30px; - } - .price_inner{ - margin-bottom: -30px; - } -} -@media (max-width:767px){ - .home_banner_area { - min-height: 500px; - } - .home_banner_area .banner_inner { - min-height: 500px; - } - .home_banner_area .banner_inner .banner_content { - margin-top: 0px; - } - /* Blog Page Area css - ============================================================================================ */ - .blog_banner .banner_inner .blog_b_text h2 { - font-size: 40px; - line-height: 50px; - } - .blog_info.text-right{ - text-align: left !important; - margin-bottom: 10px; - } - /* End Blog Page Area css - ============================================================================================ */ - .home_banner_area .banner_inner .banner_content h3 { - font-size: 30px; - } - .home_banner_area .banner_inner .banner_content p br { - display: none; - } - .home_banner_area .banner_inner .banner_content h3 span { - line-height: 45px; - padding-bottom: 0px; - padding-top: 0px; - } - /* Footer Area css - ============================================================================================ */ - .footer-bottom{ - text-align: center; - } - .footer-bottom .footer-social { - text-align: center; - margin-top: 15px; - } - /* End End Footer Area css - ============================================================================================ */ - .made_life_inner .nav.nav-tabs li { - flex: 0 0 50%; - max-width: 50%; - margin-bottom: 15px; - } - .made_life_inner .nav.nav-tabs { - margin-bottom: -15px; - } - .made_life_area.made_white .left_side_text { - margin-bottom: 0px; - margin-top: 30px; - } -} -@media (max-width:600px){ - -} -@media (max-width:575px){ - .top_menu { - display: none; - } - .header_area + section, .header_area + row, .header_area + div { - margin-top: 51px; - } - /* Home Banner Area css - ============================================================================================ */ - .home_banner_area .banner_inner .banner_content h2 { - font-size: 28px; - line-height: 38px; - } - .home_banner_area { - min-height: 450px; - } - .home_banner_area .banner_inner { - min-height: 450px; - } - .blog_banner .banner_inner .blog_b_text { - margin-top: 0px; - } - .home_banner_area .banner_inner .banner_content img{ - display: none; - } - .home_banner_area .banner_inner .banner_content h5 { - margin-top: 0px; - } - /* End Home Banner Area css - ============================================================================================ */ - .p_120 { - padding-top: 70px; - padding-bottom: 70px; - } - .main_title h2 { - font-size: 25px; - } - /* Elements Area css - ============================================================================================ */ - .sample-text-area { - padding: 70px 0 70px 0; - } - .generic-blockquote { - padding: 30px 15px 30px 30px; - } - /* End Elements Area css - ============================================================================================ */ - - /* Blog Page Area css - ============================================================================================ */ - .blog_details h2 { - font-size: 20px; - line-height: 30px; - } - .blog_banner .banner_inner .blog_b_text h2 { - font-size: 28px; - line-height: 38px; - } - /* End Blog Page Area css - ============================================================================================ */ - /* Footer Area css - ============================================================================================ */ - .footer-area { - padding: 70px 0px; - } - /* End End Footer Area css - ============================================================================================ */ - .pad_top { - padding-top: 70px; - } - .pad_btm { - padding-bottom: 70px; - } -} - -@media (max-width:480px){ - /* Main Menu Area css - ============================================================================================ */ - .header_area .navbar-collapse{ - max-height: 250px; - } - /* End Main Menu Area css - ============================================================================================ */ - - /* Home Banner Area css - ============================================================================================ */ - .home_banner_area .banner_inner .banner_content { - padding: 30px 15px; - margin-top: 0px; - } - .banner_content .white_btn { - display: block; - } - .home_banner_area .banner_inner .banner_content h3 { - font-size: 24px; - } - /* End Home Banner Area css - ============================================================================================ */ - .banner_area .banner_inner .banner_content h2 { - font-size: 32px; - } - /* Blog Page Area css - ============================================================================================ */ - .comments-area .thumb { - margin-right: 10px; - } - /* End Blog Page Area css - ============================================================================================ */ - .testi_item .media .d-flex { - padding-right: 0px; - } - .testi_item .media .d-flex img { - width: auto; - margin-bottom: 15px; - } - .testi_item .media{ - display: block; - } - .banner_btn{ - margin-bottom: 20px; - } -} \ No newline at end of file diff --git a/_scss/theme/_section-intro.scss b/_scss/theme/_section-intro.scss deleted file mode 100644 index 977631f..0000000 --- a/_scss/theme/_section-intro.scss +++ /dev/null @@ -1,21 +0,0 @@ -/* section intro start - ============================================================================================ */ -.section-intro{ - max-width: 630px; - margin-right: auto; - margin-left: auto; - - &__title{ - font-weight: 700; - color: $title-color; - margin-bottom: 10px; - } - - &__subtitle{ - font-size: 17px; - color: $text-color; - margin-bottom: 0; - } -} -/* section intro end - ============================================================================================ */ diff --git a/_scss/theme/_variables.scss b/_scss/theme/_variables.scss deleted file mode 100644 index 1701c43..0000000 --- a/_scss/theme/_variables.scss +++ /dev/null @@ -1,25 +0,0 @@ -/* font family - ============================================================================================ */ -$title-font: 'Rubik', sans-serif; -$text-font: 'Roboto', sans-serif; - - -/* color variables - ============================================================================================ */ -$title-color: #3a414e; -$text-color: #797979; -$black: #242429; -$magnolia: #faf9ff; - -$primary-color: #21146a; -$offwhite: #f9f9ff; - - -$link-color: #fdc632; -$white: #fff; -// $soapstone : #fff9f7; - - -/* google fonts - ============================================================================================ */ -@import url("https://fonts.googleapis.com/css?family=Roboto:400,400i,500|Rubik:500, 600"); diff --git a/about.html b/about.html index bbba1fe..e065ecd 100644 --- a/about.html +++ b/about.html @@ -1,14 +1,73 @@ ---- -layout: default -title: About Us ---- -
+ + + + + + + + + + + + About Us + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

About Us

+
+
+
+ +
- + (Photo credit: Yicheng Liu)
@@ -28,7 +87,7 @@

Currently the lab has four PhD students, one Master's student, one undergraduate student and one visiting undergraduate student. We are actively recruiting self-motivated graduate students and - undergraduate interns who are interested in systems building and research. Interested students please check this page + undergraduate interns who are interested in systems building and research. Interested students please check this page

@@ -40,3 +99,35 @@

+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/activity.html b/activity.html index 87cb32d..9186454 100644 --- a/activity.html +++ b/activity.html @@ -1,8 +1,67 @@ ---- -layout: default -title: Group Activities ---- -
+ + + + + + + + + + + + Group Activities + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Group Activities

+
+
+
+ +

Fall '21 Group Hike

After more than one year of working from home due to the pandemic, our group is finally able to get together!! We did a (masked) group hike in the Cascade Falls Loop Trail in late August, and hiked twice longer than planned due to Ryan's misleading instruction :D @@ -22,4 +81,35 @@

Spring '18 Group Celebration Dinner

We had a group dinner to celebrate Yigong's ASPLOS best paper award and Brian's NSF graduate research fellowship. Hot pot fitted the mood :)

-
\ No newline at end of file +
+ + + + + + + + + + + + + + + + diff --git a/assets/main.css b/assets/main.css new file mode 100644 index 0000000..e5c9b73 --- /dev/null +++ b/assets/main.css @@ -0,0 +1,277 @@ +/** Reset some basic elements */ +body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure { margin: 0; padding: 0; } + +/** Basic styling */ +body { font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; color: #111; background-color: #fdfdfd; -webkit-text-size-adjust: 100%; -webkit-font-feature-settings: "kern" 1; -moz-font-feature-settings: "kern" 1; -o-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; display: flex; min-height: 100vh; flex-direction: column; } + +/** Set `margin-bottom` to maintain vertical rhythm */ +h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, dl, figure, .highlight { margin-bottom: 15px; } + +/** `main` element */ +main { display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */ } + +/** Images */ +img { max-width: 100%; vertical-align: middle; } + +/** Figures */ +figure > img { display: block; } + +figcaption { font-size: 14px; } + +/** Lists */ +ul, ol { margin-left: 30px; } + +li > ul, li > ol { margin-bottom: 0; } + +/** Headings */ +h1, h2, h3, h4, h5, h6 { font-weight: 400; } + +/** Links */ +a { color: #2a7ae2; text-decoration: none; } + +a:visited { color: #1756a9; } + +a:hover { color: #111; text-decoration: underline; } + +.social-media-list a:hover { text-decoration: none; } + +.social-media-list a:hover .username { text-decoration: underline; } + +/** Blockquotes */ +blockquote { color: #828282; border-left: 4px solid #e8e8e8; padding-left: 15px; font-size: 18px; letter-spacing: -1px; font-style: italic; } + +blockquote > :last-child { margin-bottom: 0; } + +/** Code formatting */ +pre, code { font-size: 15px; border: 1px solid #e8e8e8; border-radius: 3px; background-color: #eef; } + +code { padding: 1px 5px; } + +pre { padding: 8px 12px; overflow-x: auto; } + +pre > code { border: 0; padding-right: 0; padding-left: 0; } + +/** Wrapper */ +.wrapper { max-width: -webkit-calc(800px - (30px * 2)); max-width: calc(800px - (30px * 2)); margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; } + +@media screen and (max-width: 800px) { .wrapper { max-width: -webkit-calc(800px - (30px)); max-width: calc(800px - (30px)); padding-right: 15px; padding-left: 15px; } } + +/** Clearfix */ +.footer-col-wrapper:after, .wrapper:after { content: ""; display: table; clear: both; } + +/** Icons */ +.svg-icon { width: 16px; height: 16px; display: inline-block; fill: #828282; padding-right: 5px; vertical-align: text-top; } + +.social-media-list li + li { padding-top: 5px; } + +/** Tables */ +table { margin-bottom: 30px; width: 100%; text-align: left; color: #3f3f3f; border-collapse: collapse; border: 1px solid #e8e8e8; } + +table tr:nth-child(even) { background-color: #f7f7f7; } + +table th, table td { padding: 10px 15px; } + +table th { background-color: #f0f0f0; border: 1px solid #dedede; border-bottom-color: #c9c9c9; } + +table td { border: 1px solid #e8e8e8; } + +/** Site header */ +.site-header { border-top: 5px solid #424242; border-bottom: 1px solid #e8e8e8; min-height: 55.95px; position: relative; } + +.site-title { font-size: 26px; font-weight: 300; line-height: 54px; letter-spacing: -1px; margin-bottom: 0; float: left; } + +.site-title, .site-title:visited { color: #424242; } + +.site-nav { float: right; line-height: 54px; } + +.site-nav .nav-trigger { display: none; } + +.site-nav .menu-icon { display: none; } + +.site-nav .page-link { color: #111; line-height: 1.5; } + +.site-nav .page-link:not(:last-child) { margin-right: 20px; } + +@media screen and (max-width: 600px) { .site-nav { position: absolute; top: 9px; right: 15px; background-color: #fdfdfd; border: 1px solid #e8e8e8; border-radius: 5px; text-align: right; } .site-nav label[for="nav-trigger"] { display: block; float: right; width: 36px; height: 36px; z-index: 2; cursor: pointer; } .site-nav .menu-icon { display: block; float: right; width: 36px; height: 26px; line-height: 0; padding-top: 10px; text-align: center; } .site-nav .menu-icon > svg { fill: #424242; } .site-nav input ~ .trigger { clear: both; display: none; } .site-nav input:checked ~ .trigger { display: block; padding-bottom: 5px; } .site-nav .page-link { display: block; padding: 5px 10px; margin-left: 20px; } .site-nav .page-link:not(:last-child) { margin-right: 0; } } + +/** Site footer */ +.site-footer { border-top: 1px solid #e8e8e8; padding: 30px 0; } + +.footer-heading { font-size: 18px; margin-bottom: 15px; } + +.contact-list, .social-media-list { list-style: none; margin-left: 0; } + +.footer-col-wrapper { font-size: 15px; color: #828282; margin-left: -15px; } + +.footer-col { float: left; margin-bottom: 15px; padding-left: 15px; } + +.footer-col-1 { width: -webkit-calc(35% - (30px / 2)); width: calc(35% - (30px / 2)); } + +.footer-col-2 { width: -webkit-calc(20% - (30px / 2)); width: calc(20% - (30px / 2)); } + +.footer-col-3 { width: -webkit-calc(45% - (30px / 2)); width: calc(45% - (30px / 2)); } + +@media screen and (max-width: 800px) { .footer-col-1, .footer-col-2 { width: -webkit-calc(50% - (30px / 2)); width: calc(50% - (30px / 2)); } .footer-col-3 { width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } } + +@media screen and (max-width: 600px) { .footer-col { float: none; width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } } + +/** Page content */ +.page-content { padding: 30px 0; flex: 1; } + +.page-heading { font-size: 32px; } + +.post-list-heading { font-size: 28px; } + +.post-list { margin-left: 0; list-style: none; } + +.post-list > li { margin-bottom: 30px; } + +.post-meta { font-size: 14px; color: #828282; } + +.post-link { display: block; font-size: 24px; } + +/** Posts */ +.post-header { margin-bottom: 30px; } + +.post-title { font-size: 42px; letter-spacing: -1px; line-height: 1; } + +@media screen and (max-width: 800px) { .post-title { font-size: 36px; } } + +.post-content { margin-bottom: 30px; } + +.post-content h2 { font-size: 32px; } + +@media screen and (max-width: 800px) { .post-content h2 { font-size: 28px; } } + +.post-content h3 { font-size: 26px; } + +@media screen and (max-width: 800px) { .post-content h3 { font-size: 22px; } } + +.post-content h4 { font-size: 20px; } + +@media screen and (max-width: 800px) { .post-content h4 { font-size: 18px; } } + +/** Syntax highlighting styles */ +.highlight { background: #fff; } + +.highlighter-rouge .highlight { background: #eef; } + +.highlight .c { color: #998; font-style: italic; } + +.highlight .err { color: #a61717; background-color: #e3d2d2; } + +.highlight .k { font-weight: bold; } + +.highlight .o { font-weight: bold; } + +.highlight .cm { color: #998; font-style: italic; } + +.highlight .cp { color: #999; font-weight: bold; } + +.highlight .c1 { color: #998; font-style: italic; } + +.highlight .cs { color: #999; font-weight: bold; font-style: italic; } + +.highlight .gd { color: #000; background-color: #fdd; } + +.highlight .gd .x { color: #000; background-color: #faa; } + +.highlight .ge { font-style: italic; } + +.highlight .gr { color: #a00; } + +.highlight .gh { color: #999; } + +.highlight .gi { color: #000; background-color: #dfd; } + +.highlight .gi .x { color: #000; background-color: #afa; } + +.highlight .go { color: #888; } + +.highlight .gp { color: #555; } + +.highlight .gs { font-weight: bold; } + +.highlight .gu { color: #aaa; } + +.highlight .gt { color: #a00; } + +.highlight .kc { font-weight: bold; } + +.highlight .kd { font-weight: bold; } + +.highlight .kp { font-weight: bold; } + +.highlight .kr { font-weight: bold; } + +.highlight .kt { color: #458; font-weight: bold; } + +.highlight .m { color: #099; } + +.highlight .s { color: #d14; } + +.highlight .na { color: #008080; } + +.highlight .nb { color: #0086B3; } + +.highlight .nc { color: #458; font-weight: bold; } + +.highlight .no { color: #008080; } + +.highlight .ni { color: #800080; } + +.highlight .ne { color: #900; font-weight: bold; } + +.highlight .nf { color: #900; font-weight: bold; } + +.highlight .nn { color: #555; } + +.highlight .nt { color: #000080; } + +.highlight .nv { color: #008080; } + +.highlight .ow { font-weight: bold; } + +.highlight .w { color: #bbb; } + +.highlight .mf { color: #099; } + +.highlight .mh { color: #099; } + +.highlight .mi { color: #099; } + +.highlight .mo { color: #099; } + +.highlight .sb { color: #d14; } + +.highlight .sc { color: #d14; } + +.highlight .sd { color: #d14; } + +.highlight .s2 { color: #d14; } + +.highlight .se { color: #d14; } + +.highlight .sh { color: #d14; } + +.highlight .si { color: #d14; } + +.highlight .sx { color: #d14; } + +.highlight .sr { color: #009926; } + +.highlight .s1 { color: #d14; } + +.highlight .ss { color: #990073; } + +.highlight .bp { color: #999; } + +.highlight .vc { color: #008080; } + +.highlight .vg { color: #008080; } + +.highlight .vi { color: #008080; } + +.highlight .il { color: #099; } + +/*# sourceMappingURL=main.css.map */ \ No newline at end of file diff --git a/assets/main.css.map b/assets/main.css.map new file mode 100644 index 0000000..6e1a00f --- /dev/null +++ b/assets/main.css.map @@ -0,0 +1,20 @@ +{ + "version": 3, + "file": "main.css", + "sources": [ + "main.scss", + "vendor/bundle/ruby/3.1.0/gems/minima-2.5.1/_sass/minima.scss", + "vendor/bundle/ruby/3.1.0/gems/minima-2.5.1/_sass/minima/_base.scss", + "vendor/bundle/ruby/3.1.0/gems/minima-2.5.1/_sass/minima/_layout.scss", + "vendor/bundle/ruby/3.1.0/gems/minima-2.5.1/_sass/minima/_syntax-highlighting.scss" + ], + "sourcesContent": [ + "@import \"minima\";\n", + "@charset \"utf-8\";\n\n// Define defaults for each variable.\n\n$base-font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !default;\n$base-font-size: 16px !default;\n$base-font-weight: 400 !default;\n$small-font-size: $base-font-size * 0.875 !default;\n$base-line-height: 1.5 !default;\n\n$spacing-unit: 30px !default;\n\n$text-color: #111 !default;\n$background-color: #fdfdfd !default;\n$brand-color: #2a7ae2 !default;\n\n$grey-color: #828282 !default;\n$grey-color-light: lighten($grey-color, 40%) !default;\n$grey-color-dark: darken($grey-color, 25%) !default;\n\n$table-text-align: left !default;\n\n// Width of the content area\n$content-width: 800px !default;\n\n$on-palm: 600px !default;\n$on-laptop: 800px !default;\n\n// Use media queries like this:\n// @include media-query($on-palm) {\n// .wrapper {\n// padding-right: $spacing-unit / 2;\n// padding-left: $spacing-unit / 2;\n// }\n// }\n@mixin media-query($device) {\n @media screen and (max-width: $device) {\n @content;\n }\n}\n\n@mixin relative-font-size($ratio) {\n font-size: $base-font-size * $ratio;\n}\n\n// Import partials.\n@import\n \"minima/base\",\n \"minima/layout\",\n \"minima/syntax-highlighting\"\n;\n", + "/**\n * Reset some basic elements\n */\nbody, h1, h2, h3, h4, h5, h6,\np, blockquote, pre, hr,\ndl, dd, ol, ul, figure {\n margin: 0;\n padding: 0;\n}\n\n\n\n/**\n * Basic styling\n */\nbody {\n font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;\n color: $text-color;\n background-color: $background-color;\n -webkit-text-size-adjust: 100%;\n -webkit-font-feature-settings: \"kern\" 1;\n -moz-font-feature-settings: \"kern\" 1;\n -o-font-feature-settings: \"kern\" 1;\n font-feature-settings: \"kern\" 1;\n font-kerning: normal;\n display: flex;\n min-height: 100vh;\n flex-direction: column;\n}\n\n\n\n/**\n * Set `margin-bottom` to maintain vertical rhythm\n */\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\nul, ol, dl, figure,\n%vertical-rhythm {\n margin-bottom: $spacing-unit / 2;\n}\n\n\n\n/**\n * `main` element\n */\nmain {\n display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */\n}\n\n\n\n/**\n * Images\n */\nimg {\n max-width: 100%;\n vertical-align: middle;\n}\n\n\n\n/**\n * Figures\n */\nfigure > img {\n display: block;\n}\n\nfigcaption {\n font-size: $small-font-size;\n}\n\n\n\n/**\n * Lists\n */\nul, ol {\n margin-left: $spacing-unit;\n}\n\nli {\n > ul,\n > ol {\n margin-bottom: 0;\n }\n}\n\n\n\n/**\n * Headings\n */\nh1, h2, h3, h4, h5, h6 {\n font-weight: $base-font-weight;\n}\n\n\n\n/**\n * Links\n */\na {\n color: $brand-color;\n text-decoration: none;\n\n &:visited {\n color: darken($brand-color, 15%);\n }\n\n &:hover {\n color: $text-color;\n text-decoration: underline;\n }\n\n .social-media-list &:hover {\n text-decoration: none;\n\n .username {\n text-decoration: underline;\n }\n }\n}\n\n\n/**\n * Blockquotes\n */\nblockquote {\n color: $grey-color;\n border-left: 4px solid $grey-color-light;\n padding-left: $spacing-unit / 2;\n @include relative-font-size(1.125);\n letter-spacing: -1px;\n font-style: italic;\n\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n\n\n/**\n * Code formatting\n */\npre,\ncode {\n @include relative-font-size(0.9375);\n border: 1px solid $grey-color-light;\n border-radius: 3px;\n background-color: #eef;\n}\n\ncode {\n padding: 1px 5px;\n}\n\npre {\n padding: 8px 12px;\n overflow-x: auto;\n\n > code {\n border: 0;\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n\n/**\n * Wrapper\n */\n.wrapper {\n max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));\n max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));\n margin-right: auto;\n margin-left: auto;\n padding-right: $spacing-unit;\n padding-left: $spacing-unit;\n @extend %clearfix;\n\n @include media-query($on-laptop) {\n max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));\n max-width: calc(#{$content-width} - (#{$spacing-unit}));\n padding-right: $spacing-unit / 2;\n padding-left: $spacing-unit / 2;\n }\n}\n\n\n\n/**\n * Clearfix\n */\n%clearfix:after {\n content: \"\";\n display: table;\n clear: both;\n}\n\n\n\n/**\n * Icons\n */\n\n.svg-icon {\n width: 16px;\n height: 16px;\n display: inline-block;\n fill: #{$grey-color};\n padding-right: 5px;\n vertical-align: text-top;\n}\n\n.social-media-list {\n li + li {\n padding-top: 5px;\n }\n}\n\n\n\n/**\n * Tables\n */\ntable {\n margin-bottom: $spacing-unit;\n width: 100%;\n text-align: $table-text-align;\n color: lighten($text-color, 18%);\n border-collapse: collapse;\n border: 1px solid $grey-color-light;\n tr {\n &:nth-child(even) {\n background-color: lighten($grey-color-light, 6%);\n }\n }\n th, td {\n padding: ($spacing-unit / 3) ($spacing-unit / 2);\n }\n th {\n background-color: lighten($grey-color-light, 3%);\n border: 1px solid darken($grey-color-light, 4%);\n border-bottom-color: darken($grey-color-light, 12%);\n }\n td {\n border: 1px solid $grey-color-light;\n }\n}\n", + "/**\n * Site header\n */\n.site-header {\n border-top: 5px solid $grey-color-dark;\n border-bottom: 1px solid $grey-color-light;\n min-height: $spacing-unit * 1.865;\n\n // Positioning context for the mobile navigation icon\n position: relative;\n}\n\n.site-title {\n @include relative-font-size(1.625);\n font-weight: 300;\n line-height: $base-line-height * $base-font-size * 2.25;\n letter-spacing: -1px;\n margin-bottom: 0;\n float: left;\n\n &,\n &:visited {\n color: $grey-color-dark;\n }\n}\n\n.site-nav {\n float: right;\n line-height: $base-line-height * $base-font-size * 2.25;\n\n .nav-trigger {\n display: none;\n }\n\n .menu-icon {\n display: none;\n }\n\n .page-link {\n color: $text-color;\n line-height: $base-line-height;\n\n // Gaps between nav items, but not on the last one\n &:not(:last-child) {\n margin-right: 20px;\n }\n }\n\n @include media-query($on-palm) {\n position: absolute;\n top: 9px;\n right: $spacing-unit / 2;\n background-color: $background-color;\n border: 1px solid $grey-color-light;\n border-radius: 5px;\n text-align: right;\n\n label[for=\"nav-trigger\"] {\n display: block;\n float: right;\n width: 36px;\n height: 36px;\n z-index: 2;\n cursor: pointer;\n }\n\n .menu-icon {\n display: block;\n float: right;\n width: 36px;\n height: 26px;\n line-height: 0;\n padding-top: 10px;\n text-align: center;\n\n > svg {\n fill: $grey-color-dark;\n }\n }\n\n input ~ .trigger {\n clear: both;\n display: none;\n }\n\n input:checked ~ .trigger {\n display: block;\n padding-bottom: 5px;\n }\n\n .page-link {\n display: block;\n padding: 5px 10px;\n\n &:not(:last-child) {\n margin-right: 0;\n }\n margin-left: 20px;\n }\n }\n}\n\n\n\n/**\n * Site footer\n */\n.site-footer {\n border-top: 1px solid $grey-color-light;\n padding: $spacing-unit 0;\n}\n\n.footer-heading {\n @include relative-font-size(1.125);\n margin-bottom: $spacing-unit / 2;\n}\n\n.contact-list,\n.social-media-list {\n list-style: none;\n margin-left: 0;\n}\n\n.footer-col-wrapper {\n @include relative-font-size(0.9375);\n color: $grey-color;\n margin-left: -$spacing-unit / 2;\n @extend %clearfix;\n}\n\n.footer-col {\n float: left;\n margin-bottom: $spacing-unit / 2;\n padding-left: $spacing-unit / 2;\n}\n\n.footer-col-1 {\n width: -webkit-calc(35% - (#{$spacing-unit} / 2));\n width: calc(35% - (#{$spacing-unit} / 2));\n}\n\n.footer-col-2 {\n width: -webkit-calc(20% - (#{$spacing-unit} / 2));\n width: calc(20% - (#{$spacing-unit} / 2));\n}\n\n.footer-col-3 {\n width: -webkit-calc(45% - (#{$spacing-unit} / 2));\n width: calc(45% - (#{$spacing-unit} / 2));\n}\n\n@include media-query($on-laptop) {\n .footer-col-1,\n .footer-col-2 {\n width: -webkit-calc(50% - (#{$spacing-unit} / 2));\n width: calc(50% - (#{$spacing-unit} / 2));\n }\n\n .footer-col-3 {\n width: -webkit-calc(100% - (#{$spacing-unit} / 2));\n width: calc(100% - (#{$spacing-unit} / 2));\n }\n}\n\n@include media-query($on-palm) {\n .footer-col {\n float: none;\n width: -webkit-calc(100% - (#{$spacing-unit} / 2));\n width: calc(100% - (#{$spacing-unit} / 2));\n }\n}\n\n\n\n/**\n * Page content\n */\n.page-content {\n padding: $spacing-unit 0;\n flex: 1;\n}\n\n.page-heading {\n @include relative-font-size(2);\n}\n\n.post-list-heading {\n @include relative-font-size(1.75);\n}\n\n.post-list {\n margin-left: 0;\n list-style: none;\n\n > li {\n margin-bottom: $spacing-unit;\n }\n}\n\n.post-meta {\n font-size: $small-font-size;\n color: $grey-color;\n}\n\n.post-link {\n display: block;\n @include relative-font-size(1.5);\n}\n\n\n\n/**\n * Posts\n */\n.post-header {\n margin-bottom: $spacing-unit;\n}\n\n.post-title {\n @include relative-font-size(2.625);\n letter-spacing: -1px;\n line-height: 1;\n\n @include media-query($on-laptop) {\n @include relative-font-size(2.25);\n }\n}\n\n.post-content {\n margin-bottom: $spacing-unit;\n\n h2 {\n @include relative-font-size(2);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.75);\n }\n }\n\n h3 {\n @include relative-font-size(1.625);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.375);\n }\n }\n\n h4 {\n @include relative-font-size(1.25);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.125);\n }\n }\n}\n", + "/**\n * Syntax highlighting styles\n */\n.highlight {\n background: #fff;\n @extend %vertical-rhythm;\n\n .highlighter-rouge & {\n background: #eef;\n }\n\n .c { color: #998; font-style: italic } // Comment\n .err { color: #a61717; background-color: #e3d2d2 } // Error\n .k { font-weight: bold } // Keyword\n .o { font-weight: bold } // Operator\n .cm { color: #998; font-style: italic } // Comment.Multiline\n .cp { color: #999; font-weight: bold } // Comment.Preproc\n .c1 { color: #998; font-style: italic } // Comment.Single\n .cs { color: #999; font-weight: bold; font-style: italic } // Comment.Special\n .gd { color: #000; background-color: #fdd } // Generic.Deleted\n .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific\n .ge { font-style: italic } // Generic.Emph\n .gr { color: #a00 } // Generic.Error\n .gh { color: #999 } // Generic.Heading\n .gi { color: #000; background-color: #dfd } // Generic.Inserted\n .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific\n .go { color: #888 } // Generic.Output\n .gp { color: #555 } // Generic.Prompt\n .gs { font-weight: bold } // Generic.Strong\n .gu { color: #aaa } // Generic.Subheading\n .gt { color: #a00 } // Generic.Traceback\n .kc { font-weight: bold } // Keyword.Constant\n .kd { font-weight: bold } // Keyword.Declaration\n .kp { font-weight: bold } // Keyword.Pseudo\n .kr { font-weight: bold } // Keyword.Reserved\n .kt { color: #458; font-weight: bold } // Keyword.Type\n .m { color: #099 } // Literal.Number\n .s { color: #d14 } // Literal.String\n .na { color: #008080 } // Name.Attribute\n .nb { color: #0086B3 } // Name.Builtin\n .nc { color: #458; font-weight: bold } // Name.Class\n .no { color: #008080 } // Name.Constant\n .ni { color: #800080 } // Name.Entity\n .ne { color: #900; font-weight: bold } // Name.Exception\n .nf { color: #900; font-weight: bold } // Name.Function\n .nn { color: #555 } // Name.Namespace\n .nt { color: #000080 } // Name.Tag\n .nv { color: #008080 } // Name.Variable\n .ow { font-weight: bold } // Operator.Word\n .w { color: #bbb } // Text.Whitespace\n .mf { color: #099 } // Literal.Number.Float\n .mh { color: #099 } // Literal.Number.Hex\n .mi { color: #099 } // Literal.Number.Integer\n .mo { color: #099 } // Literal.Number.Oct\n .sb { color: #d14 } // Literal.String.Backtick\n .sc { color: #d14 } // Literal.String.Char\n .sd { color: #d14 } // Literal.String.Doc\n .s2 { color: #d14 } // Literal.String.Double\n .se { color: #d14 } // Literal.String.Escape\n .sh { color: #d14 } // Literal.String.Heredoc\n .si { color: #d14 } // Literal.String.Interpol\n .sx { color: #d14 } // Literal.String.Other\n .sr { color: #009926 } // Literal.String.Regex\n .s1 { color: #d14 } // Literal.String.Single\n .ss { color: #990073 } // Literal.String.Symbol\n .bp { color: #999 } // Name.Builtin.Pseudo\n .vc { color: #008080 } // Name.Variable.Class\n .vg { color: #008080 } // Name.Variable.Global\n .vi { color: #008080 } // Name.Variable.Instance\n .il { color: #099 } // Literal.Number.Integer.Long\n}\n" + ], + "names": [], + "mappings": "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" +} \ No newline at end of file diff --git a/assets/minima-social-icons.svg b/assets/minima-social-icons.svg new file mode 100644 index 0000000..fa7399f --- /dev/null +++ b/assets/minima-social-icons.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/feed.xml b/feed.xml new file mode 100644 index 0000000..aa31f55 --- /dev/null +++ b/feed.xml @@ -0,0 +1 @@ +Jekyll2026-01-28T00:46:55-05:00/feed.xmlOrdered Systems Lab at U-MThis is the website for the Ordered Systems Lab (a.k.a Order Lab) at University of Michigan, led by Prof. Ryan Huang. \ No newline at end of file diff --git a/index.html b/index.html index 08bd848..6746b8c 100644 --- a/index.html +++ b/index.html @@ -1,7 +1,58 @@ ---- -layout: home ---- -
+ + + + + + + + + + + + Ordered Systems Lab at U-M + + + + + + + + + + + + + +
+ +
+ +
+
@@ -202,3 +253,35 @@

Sponsors

+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + \ No newline at end of file diff --git a/join.html b/join.html new file mode 100644 index 0000000..c8ac8d5 --- /dev/null +++ b/join.html @@ -0,0 +1,153 @@ + + + + + + + + + + + + Join Us + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Join Us

+
+
+
+ +
+
+

OrderLab is growing!

+ +

We are seeking PhD students with strong systems building skills +(e.g., kernel programming, Android framework hacking, distributed +system operations) and motivation for research. Background in program +languages, compiler, and formal methods will be a bonus point. Non-technical +qualities including critical thinking, perseverance, communication, +self driven are valuable as well for graduate school in general.

+ +

However, I don’t expect applicants to be skilled in everything +mentioned above. It is my goal to help train my students to +be well-rounded researchers throughout the PhD education. Thus, +students who do not have much related background but show promise +that the above skills can be developed are also encouraged to apply.

+ +

We are also open to working with Masters and undergraduate students. Students +who have taken undergrad OS (EECS 482, CS 318/418/618) or grad OS +class (EECS 582, CS +718) are preferred.

+ +

How to Apply

+

Prospective PhD students should apply through University of Michigan CSE admission +systems by December 15th +and mention me in your application. It is helpful to email +me for inquiries before applying (please attach your CV) or for letting me +know you have applied afterwards. I can’t promise to reply every email but I +do read most of them.

+ +

Current U-M students can make an appointment with me via email.

+ + + +
For students considering a PhD
+ + +
For students applying for a PhD
+ + +
For students doing a PhD
+ + +
+
+ +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/join.md b/join.md deleted file mode 100644 index 366b56d..0000000 --- a/join.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -layout: single -title: Join Us ---- -

OrderLab is growing!

- -We are seeking PhD students with strong systems building skills -(e.g., kernel programming, Android framework hacking, distributed -system operations) and motivation for research. Background in program -languages, compiler, and formal methods will be a bonus point. Non-technical -qualities including critical thinking, perseverance, communication, -self driven are valuable as well for graduate school in general. - -However, I don't expect applicants to be skilled in everything -mentioned above. It is my goal to help train my students to -be well-rounded researchers throughout the PhD education. Thus, -students who do not have much related background but show promise -that the above skills can be developed are also encouraged to apply. - -We are also open to working with Masters and undergraduate students. Students -who have taken undergrad OS (EECS 482, CS 318/418/618) or grad OS -class (EECS 582, CS -718) are preferred. - -## How to Apply -Prospective PhD students should apply through **University of Michigan CSE** [admission -systems](https://cse.engin.umich.edu/academics/graduate/admissions) by **December 15th** -and mention me in your application. It is helpful to email -me for inquiries before applying (please attach your CV) or for letting me -know you have applied afterwards. I can't promise to reply every email but I -do read most of them. - -Current U-M students can make an appointment with me via email. - -## Useful Links - -##### For students considering a PhD -* [The illustrated guide to a Ph.D](http://matt.might.net/articles/phd-school-in-pictures/) by [Matt Might](http://matt.might.net/) -* [PhD or No PhD](https://medium.com/open-sourced-thoughts/phd-or-no-phd-d3dc89bc8e57) by [Xiao Ma](https://medium.com/@xiaoma) -* [The PhD grind](http://pgbovine.net/PhD-memoir/pguo-PhD-grind.pdf) by [Philip Guo](http://pgbovine.net/index.html) - -##### For students applying for a PhD -* [How to Pick a Graduate Advisor](http://www.cell.com/neuron/fulltext/S0896-6273(13)00907-0) by [Ben Barres](https://profiles.stanford.edu/ben-barres) -* [What to Ask When You're Applying to Grad School](http://transientneha.blogspot.com/2015/02/what-to-ask-when-applying-to-grad.html) by [Neha Narula](http://transientneha.blogspot.com/) -* [Applying to Ph.D. Programs in Computer Science](http://www.cs.cmu.edu/~harchol/gradschooltalk.pdf) by [Mor Harchol-Balter](http://www.cs.cmu.edu/~harchol/) - -##### For students doing a PhD -* [So Long, and Thanks for the Ph.D!](http://www.cs.unc.edu/~azuma/hitch4.html) by [Ron Azuma](http://www.cs.unc.edu/~azuma/) -* [You and Your Research](http://www.cs.virginia.edu/~robins/YouAndYourResearch.html) by Richard Hamming -* [Strong Inference](http://ecoplexity.org/files/Platt.pdf) by John R. Platt -* [Advice to systems researchers](http://www.cs.utexas.edu/users/dahlin/advice.html) by [Mike Dahlin](http://www.cs.utexas.edu/users/dahlin/) -* [Low-level advice for systems research](https://lalith.in/2020/09/27/Low-Level-Advice-For-Systems-Research/) by [Lalith Suresh](https://lalith.in/about) diff --git a/news.html b/news.html index 34f7793..8d0840c 100644 --- a/news.html +++ b/news.html @@ -1,8 +1,67 @@ ---- -layout: default -title: News ---- -
+ + + + + + + + + + + + News + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

News

+
+
+
+ +
  • @@ -130,3 +189,35 @@
+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/projects.html b/projects.html index 5f8b662..32c0d05 100644 --- a/projects.html +++ b/projects.html @@ -1,8 +1,67 @@ ---- -layout: default -title: Research Agenda ---- -
+ + + + + + + + + + + + Research Agenda + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Research Agenda

+
+
+
+ +

Overview

@@ -154,4 +213,35 @@

Defending against immature apps

-
\ No newline at end of file +
+ +
+
+ +
+
+ + + + + + + + + + + + + + diff --git a/pubs.html b/pubs.html index c2beae8..f586721 100644 --- a/pubs.html +++ b/pubs.html @@ -1,8 +1,67 @@ ---- -layout: default -title: Publications ---- -
+ + + + + + + + + + + + Publications + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Publications

+
+
+
+ +

2025

    @@ -300,3 +359,35 @@

    2010

+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/software.html b/software.html index a2e51cb..9fc78b4 100644 --- a/software.html +++ b/software.html @@ -1,8 +1,67 @@ ---- -layout: default -title: Software ---- -
+ + + + + + + + + + + + Software + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

Software

+
+
+
+ +

Group GitHub Repository

@@ -50,3 +109,35 @@

Panorama [

+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/team.html b/team.html index ce2b78f..616d5f7 100644 --- a/team.html +++ b/team.html @@ -1,8 +1,67 @@ ---- -layout: default -title: OrderLab Team Members ---- - + + + + + + + + + + + + OrderLab Team Members + + + + + + + + + + + + + +
+ +
+ + +
+
+
+
+

OrderLab Team Members

+
+
+
+ +
@@ -237,3 +296,35 @@

MS and Undergrad Alumni

+ + +
+
+ +
+
+ + +
+ + + + + + + + + + + diff --git a/vendors/flaticon/_flaticon.scss b/vendors/flaticon/_flaticon.scss deleted file mode 100644 index ccf3dce..0000000 --- a/vendors/flaticon/_flaticon.scss +++ /dev/null @@ -1,104 +0,0 @@ - /* - Flaticon icon font: Flaticon - Creation date: 14/12/2019 04:33 - */ - - @font-face { - font-family: "Flaticon"; - src: url("./fonts/Flaticon.eot"); - src: url("./fonts/Flaticon.eot?#iefix") format("embedded-opentype"), - url("./fonts/Flaticon.woff2") format("woff2"), - url("./fonts/Flaticon.woff") format("woff"), - url("./fonts/Flaticon.ttf") format("truetype"), - url("./fonts/Flaticon.svg#Flaticon") format("svg"); - font-weight: normal; - font-style: normal; -} - -@media screen and (-webkit-min-device-pixel-ratio:0) { - @font-face { - font-family: "Flaticon"; - src: url("./fonts/Flaticon.svg#Flaticon") format("svg"); - } -} - - .fi:before{ - display: inline-block; - font-family: "Flaticon"; - font-style: normal; - font-weight: normal; - font-variant: normal; - line-height: 1; - text-decoration: inherit; - text-rendering: optimizeLegibility; - text-transform: none; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - font-smoothing: antialiased; - } - - .flaticon-warning:before { content: "\f100"; } -.flaticon-document:before { content: "\f101"; } -.flaticon-add-group:before { content: "\f102"; } -.flaticon-medal:before { content: "\f103"; } -.flaticon-gift:before { content: "\f104"; } -.flaticon-conference:before { content: "\f105"; } -.flaticon-billboard:before { content: "\f106"; } -.flaticon-stationery-stacked-papers:before { content: "\f107"; } -.flaticon-report:before { content: "\f108"; } -.flaticon-distance:before { content: "\f109"; } -.flaticon-calendar:before { content: "\f10a"; } -.flaticon-training:before { content: "\f10b"; } -.flaticon-student:before { content: "\f10c"; } -.flaticon-open-book:before { content: "\f10d"; } -.flaticon-growth:before { content: "\f10e"; } -.flaticon-woman:before { content: "\f10f"; } -.flaticon-employee:before { content: "\f110"; } -.flaticon-female-graduate-student:before { content: "\f111"; } -.flaticon-graduate-student-avatar:before { content: "\f112"; } -.flaticon-project-management:before { content: "\f113"; } -.flaticon-fireworks:before { content: "\f114"; } -.flaticon-options:before { content: "\f115"; } -.flaticon-puzzle:before { content: "\f116"; } -.flaticon-overlap:before { content: "\f117"; } -.flaticon-conference-2:before { content: "\f118"; } -.flaticon-student-1:before { content: "\f119"; } -.flaticon-student-2:before { content: "\f11a"; } -.flaticon-student-3:before { content: "\f11b"; } -.flaticon-browser:before { content: "\f11c"; } -.flaticon-browser-1:before { content: "\f11d"; } -.flaticon-web:before { content: "\f11e"; } -.flaticon-server:before { content: "\f11f"; } - - $font-Flaticon-warning: "\f100"; - $font-Flaticon-document: "\f101"; - $font-Flaticon-add-group: "\f102"; - $font-Flaticon-medal: "\f103"; - $font-Flaticon-gift: "\f104"; - $font-Flaticon-conference: "\f105"; - $font-Flaticon-billboard: "\f106"; - $font-Flaticon-stationery-stacked-papers: "\f107"; - $font-Flaticon-report: "\f108"; - $font-Flaticon-distance: "\f109"; - $font-Flaticon-calendar: "\f10a"; - $font-Flaticon-training: "\f10b"; - $font-Flaticon-student: "\f10c"; - $font-Flaticon-open-book: "\f10d"; - $font-Flaticon-growth: "\f10e"; - $font-Flaticon-woman: "\f10f"; - $font-Flaticon-employee: "\f110"; - $font-Flaticon-female-graduate-student: "\f111"; - $font-Flaticon-graduate-student-avatar: "\f112"; - $font-Flaticon-project-management: "\f113"; - $font-Flaticon-fireworks: "\f114"; - $font-Flaticon-options: "\f115"; - $font-Flaticon-puzzle: "\f116"; - $font-Flaticon-overlap: "\f117"; - $font-Flaticon-conference-2: "\f118"; - $font-Flaticon-student-1: "\f119"; - $font-Flaticon-student-2: "\f11a"; - $font-Flaticon-student-3: "\f11b"; - $font-Flaticon-browser: "\f11c"; - $font-Flaticon-browser-1: "\f11d"; - $font-Flaticon-web: "\f11e"; - $font-Flaticon-server: "\f11f";