diff --git a/.github/workflows/hugo.yaml b/.github/workflows/hugo.yaml index f638d7e..8a9cdab 100644 --- a/.github/workflows/hugo.yaml +++ b/.github/workflows/hugo.yaml @@ -37,7 +37,7 @@ jobs: - name: Install Hugo CLI run: | wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ - && sudo dpkg -i ${{ runner.temp }}/hugo.deb + && sudo dpkg -i ${{ runner.temp }}/hugo.deb # dont install dart sass, we arent using it # - name: Install Dart Sass # run: sudo snap install dart-sass @@ -60,7 +60,7 @@ jobs: hugo \ --gc \ --minify \ - --baseURL "${{ steps.pages.outputs.base_url }}/" + --baseURL "${{ steps.pages.outputs.base_url }}/" - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: diff --git a/.gitignore b/.gitignore index bf5d0ef..511d357 100644 --- a/.gitignore +++ b/.gitignore @@ -13,4 +13,4 @@ hugo.linux /.hugo_build.lock # Misc. files to ignore -*.DS_Store \ No newline at end of file +*.DS_Store diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..45bed17 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,14 @@ +# See https://pre-commit.com for more information +# See https://pre-commit.com/hooks.html for more hooks +repos: +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v3.2.0 + hooks: + - id: trailing-whitespace + - id: end-of-file-fixer + - id: check-yaml + - id: check-added-large-files +- repo: https://github.com/crate-ci/typos + rev: v1.24.6 + hooks: + - id: typos diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d3417e2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM alpine:3.20 + +RUN apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community "hugo=~v0.134.2" + +RUN apk add --no-cache vim bash + +WORKDIR /root/src + +CMD ["hugo", "server"] diff --git a/archetypes/default.md b/archetypes/default.md index 1f8c13f..cae8048 100644 --- a/archetypes/default.md +++ b/archetypes/default.md @@ -3,4 +3,3 @@ title = '{{ replace .File.ContentBaseName "-" " " | title }}' date = {{ .Date }} draft = false +++ - diff --git a/archetypes/papers.md b/archetypes/papers.md index 12ad395..b2bfa60 100644 --- a/archetypes/papers.md +++ b/archetypes/papers.md @@ -4,23 +4,23 @@ layout: papers title: "Paper Title" # specify the date it was published date: 1900-01-01 -# list the authors. if a "/people/id" page exists for the person, it will be linked. If not, the author's name is printed exactly as you typed it. +# list the authors. if a "/people/id" page exists for the person, it will be linked. If not, the author's name is printed exactly as you typed it. authors: - - dimitrapanagou + - dimitrapanagou # give the main figure location, relative to /static/ image: /images/default_paper.png # specify the conference or journal that it was published in -venue: +venue: # link to publisher site (optional) -link: +link: # link to arxiv (optional) -arxiv: +arxiv: # link to github (optional) -code: +code: # link to video (optional) -video: +video: # link to pdf (optional) -pdf: +pdf: # abstract abstract: # bib entry (optional). the |- is used to allow for multiline entry. diff --git a/archetypes/people.md b/archetypes/people.md index 94dcd6e..d2d4529 100644 --- a/archetypes/people.md +++ b/archetypes/people.md @@ -5,11 +5,11 @@ category: PhD # give the path relative to static/ image: "/images/default_profile.webp" # start year, used for sorting -year: +year: # link to personal website (optional) -link: -# email id (optional) +link: +# email id (optional) # put mailto: before your email # Example: mailto:abc@umich.edu -mail: +mail: --- diff --git a/content/news/2024-gatekeeper-tro-accepted.md b/content/news/2024-perceivability-best-paper.md similarity index 90% rename from content/news/2024-gatekeeper-tro-accepted.md rename to content/news/2024-perceivability-best-paper.md index 34e3853..81254d9 100644 --- a/content/news/2024-gatekeeper-tro-accepted.md +++ b/content/news/2024-perceivability-best-paper.md @@ -4,4 +4,4 @@ title: "IEEE TCAC Best Student Paper Award" date: 2024-07-14 --- -Our paper ["Sensor-based Planning and Control for Robotic Systems: Introducing Clarity and Perceivability"](/papers/2023-perceivability) has won the IEEE Technical Committee on Aerospace Controls (TCAC) best paper award. +Our paper ["Sensor-based Planning and Control for Robotic Systems: Introducing Clarity and Perceivability"](/papers/2023-perceivability) has won the IEEE Technical Committee on Aerospace Controls (TCAC) best paper award. diff --git a/content/papers/2022-differentially-flat.md b/content/papers/2022-differentially-flat.md index 9f097b1..58953ae 100644 --- a/content/papers/2022-differentially-flat.md +++ b/content/papers/2022-differentially-flat.md @@ -10,16 +10,16 @@ authors: - Ryan K Cosner - Ugo Rosolia - Aaron D Ames - - dimitrapanagou + - dimitrapanagou # give the main figure location, relative to /static/ # link to publisher site (optional) link: https://doi.org/10.1109/LCSYS.2021.3136465 # link to arxiv (optional) -arxiv: +arxiv: # link to github (optional) -code: +code: # link to video (optional) -video: +video: # link to pdf (optional) pdf: /pdfs/2021-differentially-flat.pdf # abstract @@ -39,8 +39,8 @@ problem." bib: |- @ARTICLE{9655322, author={Agrawal, Devansh R. and Parwana, Hardik and Cosner, Ryan K. and Rosolia, Ugo and Ames, Aaron D. and Panagou, Dimitra}, - journal={IEEE Control Systems Letters}, - title={A Constructive Method for Designing Safe Multirate Controllers for Differentially-Flat Systems}, + journal={IEEE Control Systems Letters}, + title={A Constructive Method for Designing Safe Multirate Controllers for Differentially-Flat Systems}, year={2022}, volume={6}, number={}, diff --git a/content/papers/2022-observer-controller.md b/content/papers/2022-observer-controller.md index e4fbc14..7c1a9da 100644 --- a/content/papers/2022-observer-controller.md +++ b/content/papers/2022-observer-controller.md @@ -4,14 +4,14 @@ title: "Safe and robust observer-controller synthesis using control barrier fun date: 2022-06-22 image: /images/2022-observer-controller.png venue: "IEEE L-CSS and CDC 2022" -authors: +authors: - devanshagrawal - dimitrapanagou link: https://doi.org/10.1109/LCSYS.2022.3185142 -arxiv: -code: +arxiv: +code: abstract: "This letter addresses the synthesis of safety-critical controllers using estimate feedback. We propose an observer-controller interconnection to ensure that the nonlinear system remains safe despite bounded disturbances on the system dynamics and measurements that correspond to partial state information. The co-design of observers and controllers is critical, since even in undisturbed cases, observers and controllers designed independently may not render the system safe. We propose two approaches to synthesize observer-controller interconnections. The first approach utilizes Input-to-State Stable observers, and the second uses Bounded Error observers. Using these stability and boundedness properties of the observation error, we construct novel Control Barrier Functions that impose inequality constraints on the control inputs which, when satisfied, certifies safety. We propose quadratic program-based controllers to satisfy these constraints, and prove Lipschitz continuity of the derived controllers. Simulations and experiments on a quadrotor demonstrate the efficacy of the proposed methods." -excerpt: +excerpt: pdf: /pdfs/2022-observer-controller.pdf bib: |- @article{agrawal2022safe, diff --git a/content/papers/2023-gatekeeper-iros.md b/content/papers/2023-gatekeeper-iros.md index e8199f8..fc24050 100644 --- a/content/papers/2023-gatekeeper-iros.md +++ b/content/papers/2023-gatekeeper-iros.md @@ -4,13 +4,13 @@ title: "gatekeeper: Online safety verification and control for nonlinear system date: 2023-10-01 image: /images/2023-gatekeeper-iros.png venue: "IEEE IROS 2023" -authors: +authors: - devanshagrawal - Ruichang Chen - dimitrapanagou -link: https://doi.org/10.1109/IROS55552.2023.10341790 +link: https://doi.org/10.1109/IROS55552.2023.10341790 arxiv: https://arxiv.org/abs/2211.14361 -code: https://github.com/dev10110/gatekeeper +code: https://github.com/dev10110/gatekeeper abstract: "This paper presents the gatekeeper algorithm, a real-time and computationally-lightweight method to ensure that nonlinear systems can operate safely in dynamic environments despite limited perception. gatekeeper integrates with existing path planners and feedback controllers by introducing an additional verification step that ensures that proposed trajectories can be executed safely, despite nonlinear dynamics subject to bounded disturbances, input constraints and partial knowledge of the environment. Our key contribution is that (A) we propose an algorithm to recursively construct committed trajectories, and (B) we prove that tracking the committed trajectory ensures the system is safe for all time into the future. The method is demonstrated on a complicated firefighting mission in a dynamic environment, and compares against the state-of-the-art techniques for similar problems." pdf: /pdfs/2023-gatekeeper-iros.pdf bib: |- @@ -21,5 +21,5 @@ bib: |- pages={259--266}, year={2023}, organization={IEEE} - } ---- \ No newline at end of file + } +--- diff --git a/content/papers/2023-perceivability.md b/content/papers/2023-perceivability.md index 8fa40b0..799fd80 100644 --- a/content/papers/2023-perceivability.md +++ b/content/papers/2023-perceivability.md @@ -4,12 +4,12 @@ title: "Sensor-based Planning and Control for Robotic Systems: Introducing Clar date: 2023-06-21 image: /images/2023-clarity-and-perceivability.png venue: "IEEE L-CSS and CDC 2023" -authors: +authors: - devanshagrawal - dimitrapanagou link: https://doi.org/10.1109/LCSYS.2023.3288493 -arxiv: -code: +arxiv: +code: abstract: "In this letter, we first introduce an information measure, termed clarity , motivated by information entropy, and show that it has intuitive properties relevant to dynamic coverage control and informative path planning. Clarity defines on a scale of [0,1] the quality of the information that we have about a variable of interest in an environment. Clarity lower bounds the expected estimation error of any estimator, and is used as the information metric in the notion of perceivability , which is defined later on and is the primary contribution of this letter. Perceivability captures whether a given robotic (or more generally, sensing and control) system has sufficient sensing and actuation capabilities to gather desired information about an environment. We show that perceivability relates to the reachability of an augmented system, which encompasses the robot dynamics and the clarity about the environment, and we derive the corresponding Hamilton-Jacobi-Bellman equations. Thus, we provide an algorithm to measure an environment’s perceivability, and obtain optimal controllers that maximize information gain. In simulations, we demonstrate how clarity is a useful concept for planning trajectories, how perceivability can be determined using reachability analysis, and how a Control Barrier Function controller can be used to design controllers to maintain a desired level of information." pdf: /pdfs/2023-clarity-and-perceivability.pdf bib: |- diff --git a/content/papers/2024-advances-in-cbfs.md b/content/papers/2024-advances-in-cbfs.md index ffe2cd1..a5f36fb 100644 --- a/content/papers/2024-advances-in-cbfs.md +++ b/content/papers/2024-advances-in-cbfs.md @@ -4,7 +4,7 @@ title: "Advances in the Theory of Control Barrier Functions: Addressing practic date: 2024-03-12 image: /images/2024-advances-in-cbfs.png venue: "Annual Reviews in Control 2024" -authors: +authors: - Kunal Garg - James Usevitch - Joseph Breeden @@ -13,10 +13,10 @@ authors: - Hardik Parwana - dimitrapanagou link: https://doi.org/10.1016/j.arcontrol.2024.100945 -arxiv: -code: +arxiv: +code: abstract: "This tutorial paper presents recent work of the authors that extends the theory of Control Barrier Functions (CBFs) to address practical challenges in the synthesis of safe controllers for autonomous systems and robots. We present novel CBFs and methods that handle safety constraints (i) with time and input constraints under disturbances, (ii) with high-relative degree under disturbances and input constraints, and (iii) that are affected by adversarial inputs and sampled-data effects. We then present novel CBFs and adaptation methods that prevent loss of validity of the CBF, as well as methods to tune the parameters of the CBF online to reduce conservatism in the system response. We also address the pointwise-only optimal character of CBF-induced control inputs by introducing a CBF formulation that accounts for future trajectories, as well as implementation challenges such as how to preserve safety when using output feedback control and zero-order-hold control. Finally we consider how to synthesize non-smooth CBFs when discontinuous inputs and multiple constraints are present." -excerpt: +excerpt: pdf: /pdfs/2024-advances-in-cbfs.pdf bib: |- @article{garg2024advances, @@ -28,4 +28,4 @@ bib: |- year={2024}, publisher={Elsevier} } ---- \ No newline at end of file +--- diff --git a/content/papers/2024-multiagent-coverage.md b/content/papers/2024-multiagent-coverage.md index 2fa52d1..e35223a 100644 --- a/content/papers/2024-multiagent-coverage.md +++ b/content/papers/2024-multiagent-coverage.md @@ -4,11 +4,11 @@ title: "Multi-Agent Clarity-Aware Dynamic Coverage with Gaussian Processes" date: 2024-12-16 image: /images/2024-multiagent-coverage.png venue: "IEEE CDC 2024" -authors: +authors: - devanshagrawal - dimitrapanagou arxiv: https://arxiv.org/abs/2403.17917v1 -code: https://github.com/dev10110/multiagent-clarity-based-dynamic-coverage/ +code: https://github.com/dev10110/multiagent-clarity-based-dynamic-coverage/ abstract: "This paper presents two algorithms for multi-agent dynamic coverage in spatiotemporal environments, where the coverage algorithms are informed by the method of data assimilation. In particular, we show that by explicitly modeling the environment using a Gaussian Process (GP) model, and considering the sensing capabilities and the dynamics of a team of robots, we can design an estimation algorithm and multi-agent coverage controller that explores and estimates the state of the spatiotemporal environment. The uncertainty of the estimate is quantified using clarity, an information-theoretic metric, where higher clarity corresponds to lower uncertainty. By exploiting the relationship between GPs and Stochastic Differential Equations (SDEs) we quantify the increase in clarity of the estimated state at any position due to a measurement taken from any other position. We use this relationship to design two new coverage controllers, both of which scale well with the number of agents exploring the domain, assuming the robots can share the map of the clarity over the spatial domain via communication. We demonstrate the algorithms through a realistic simulation of a team of robots collecting wind data over a region in Austria." pdf: /pdfs/2024-multiagent-coverage.pdf --- diff --git a/content/papers/eclares.md b/content/papers/eclares.md index 2874233..0d2a875 100644 --- a/content/papers/eclares.md +++ b/content/papers/eclares.md @@ -1,12 +1,12 @@ --- layout: papers title: "Eclares: Energy-Aware Clarity-Driven Ergodic Search" -date: 2024-05-13 +date: 2024-05-13 authors: - devanshagrawal - kalebbennaveed - Christopher Vermillion - - dimitrapanagou + - dimitrapanagou image: /images/2024-eclares.png venue: "IEEE ICRA 2024" link: https://doi.org/10.1109/ICRA57147.2024.10611286 @@ -25,4 +25,3 @@ bib: |- organization={IEEE} } --- - diff --git a/content/papers/iccbfs.md b/content/papers/iccbfs.md index 28d248d..2c77bf1 100644 --- a/content/papers/iccbfs.md +++ b/content/papers/iccbfs.md @@ -8,8 +8,8 @@ authors: - devanshagrawal - dimitrapanagou link: https://doi.org/10.1109/CDC45484.2021.9682938 -arxiv: -code: +arxiv: +code: abstract: "This paper introduces the notion of an Input Constrained Control Barrier Function (ICCBF), as a method to synthesize safety-critical controllers for nonlinear control-affine @@ -23,13 +23,13 @@ Barrier Functions, and thus are applicable to systems of non- uniform relative degree. Simulation results are presented for the adaptive cruise control problem, and a spacecraft rendezvous problem." -excerpt: +excerpt: pdf: /pdfs/2021-iccbfs.pdf bib: |- @INPROCEEDINGS{9682938, author={Agrawal, Devansh R. and Panagou, Dimitra}, - booktitle={2021 60th IEEE Conference on Decision and Control (CDC)}, - title={Safe Control Synthesis via Input Constrained Control Barrier Functions}, + booktitle={2021 60th IEEE Conference on Decision and Control (CDC)}, + title={Safe Control Synthesis via Input Constrained Control Barrier Functions}, year={2021}, volume={}, number={}, diff --git a/content/people/dimitrapanagou.md b/content/people/dimitrapanagou.md index 28e6518..2d922f2 100644 --- a/content/people/dimitrapanagou.md +++ b/content/people/dimitrapanagou.md @@ -4,4 +4,3 @@ category: Faculty image: /images/dimitrapanagou.jpg link: https://websites.umich.edu/~dpanagou/ --- - diff --git a/content/people/dmrc.md b/content/people/dmrc.md index 80d44a5..c66705a 100644 --- a/content/people/dmrc.md +++ b/content/people/dmrc.md @@ -7,7 +7,7 @@ image: "/images/cherenson.jpg" # start year, used for sorting year: 2024 # link to personal website (optional) -link: +link: # email id (optional) mail: mailto:dmrc@umich.edu --- diff --git a/content/people/haejoonl.md b/content/people/haejoonl.md index 1970699..742a45a 100644 --- a/content/people/haejoonl.md +++ b/content/people/haejoonl.md @@ -3,11 +3,11 @@ title: Haejoon Lee # choose a category from [Faculty, PostDoc, PhD, Masters, Visiting, Alumni]. Be careful about the capitalization. category: PhD # give the path relative to static/ -image: +image: # start year, used for sorting year: 2023 # link to personal website (optional) -link: +link: # email id (optional) mail: mailto:haejoonl@umich.edu --- diff --git a/content/people/taekyungkim.md b/content/people/taekyungkim.md index b817f1a..7975bdf 100644 --- a/content/people/taekyungkim.md +++ b/content/people/taekyungkim.md @@ -5,4 +5,4 @@ image: "/images/taekyungkim.jpg" year: 2023 link: https://taekyung.me mail: mailto:taekyung@umich.edu ---- \ No newline at end of file +--- diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..8a40740 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,9 @@ +version: "3" + +services: + hugo: + build: . + tty: true + network_mode: "host" + volumes: + - .:/root/src diff --git a/hugo.toml b/hugo.toml index d964c3c..71894f8 100644 --- a/hugo.toml +++ b/hugo.toml @@ -28,10 +28,8 @@ buildFuture = true [[menu.main]] name = "Projects" url = "/projects/" - weight = 4 + weight = 4 [params] dateFormat = "Jan 2, 2006" homeText = "Distributed Autonomous Systems and Control Lab" - - diff --git a/layouts/_default/list.html b/layouts/_default/list.html index 11f57cd..f1c2b7d 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -11,7 +11,7 @@

{{ .Title }}

{{ .Date | time.Format ":date_medium" }}

- {{ if .Params.image }} + {{ if .Params.image }} {{ .Title }} {{ .Content }} {{ end }} - diff --git a/layouts/papers/list.html b/layouts/papers/list.html index 7261930..19527f2 100644 --- a/layouts/papers/list.html +++ b/layouts/papers/list.html @@ -8,8 +8,8 @@

{{ .Title }}

{{ range .Pages.ByPublishDate.Reverse.GroupByDate "2006" }}

{{ .Key }}

- {{ range .Pages }} - {{ partial "paper-card" . }} + {{ range .Pages }} + {{ partial "paper-card" . }} {{ end }}
{{ end }} diff --git a/layouts/papers/single.html b/layouts/papers/single.html index b1c8dba..223d6b9 100644 --- a/layouts/papers/single.html +++ b/layouts/papers/single.html @@ -11,4 +11,4 @@

Abstract

{{ .Content }} -{{ end }} \ No newline at end of file +{{ end }} diff --git a/layouts/partials/head.html b/layouts/partials/head.html index 57b6758..b146487 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -5,4 +5,3 @@ {{ partial "style.html" . }} - diff --git a/layouts/partials/paper-card.html b/layouts/partials/paper-card.html index 8f2d995..68cb4f5 100644 --- a/layouts/partials/paper-card.html +++ b/layouts/partials/paper-card.html @@ -14,7 +14,7 @@
{{ .Title }}
- +
{{ range .Params.authors }} @@ -27,11 +27,11 @@ {{ if $authorPage }} {{ $authorPage.Title }} - {{ else }} + {{ else }} {{ . }} {{ end }} - {{ end }} + {{ end }}
@@ -55,8 +55,8 @@ {{ end }} {{ if .Params.link }} link / - {{ end }} - {{ if .Params.arxiv }} + {{ end }} + {{ if .Params.arxiv }} arxiv / {{ end }} @@ -72,7 +72,7 @@
{{ .Params.bib }}
- {{ end }} + {{ end }} diff --git a/layouts/partials/person-card.html b/layouts/partials/person-card.html index 6b86f73..c81be00 100644 --- a/layouts/partials/person-card.html +++ b/layouts/partials/person-card.html @@ -8,7 +8,7 @@
-
{{ .Title }}
+
{{ .Title }}
{{ if .Params.link }} link / diff --git a/layouts/partials/style.html b/layouts/partials/style.html index acd9db6..6ac3094 100644 --- a/layouts/partials/style.html +++ b/layouts/partials/style.html @@ -15,15 +15,15 @@ } a:hover { - text-decoration-color: rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.85)); + text-decoration-color: rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.85)); color: var(--bs-link-hover-color-rgb); } -a { +a { /* color: inherit; */ color: var(--bs-link-color-rgb); text-decoration: underline; - text-decoration-color: rgba(var(--bs-body-color-rgb),var(--bs-link-opacity,0.5)); + text-decoration-color: rgba(var(--bs-body-color-rgb),var(--bs-link-opacity,0.5)); text-underline-offset: 0.25em; } diff --git a/layouts/people/people.html b/layouts/people/people.html index 12a4c9c..ecc5018 100644 --- a/layouts/people/people.html +++ b/layouts/people/people.html @@ -13,7 +13,7 @@

People

{{ range $category := $categories }} {{ $subpages := where $pages "Params.category" $category }} - {{ if $subpages.Len }} + {{ if $subpages.Len }}

{{ $category }}

@@ -21,11 +21,11 @@

{{ $category }}

{{ partial "person-card" . }}
- {{ end }} + {{ end }}
- {{ end }} + {{ end }} -{{ end }} +{{ end }} -{{ end }} +{{ end }} diff --git a/layouts/people/single.html b/layouts/people/single.html index 82f9e16..5c395bc 100644 --- a/layouts/people/single.html +++ b/layouts/people/single.html @@ -29,4 +29,3 @@

Papers

{{ end }} - diff --git a/readme.md b/readme.md index 6ad702f..54d9661 100644 --- a/readme.md +++ b/readme.md @@ -9,10 +9,24 @@ To see the website locally, run ``` hugo server ``` -and navigate to the url, usually `http://localhost:1313/`. +and navigate to the url, usually `http://localhost:1313/`. -After the changes have been made, commit them onto a new branch, and create a PR to merge the content into `main`. -The github workflows will automatically deploy the new version of the website. +After the changes have been made, commit them onto a new branch, and create a PR to merge the content into `main`. +The github workflows will automatically deploy the new version of the website. + +## Docker + +You can also use the dockerfiles here to do this. Simply run +``` +docker compose build +``` +to build the image, and then to run the container +``` +docker compose up -d +docker exec -it dasc-labgithubio-hugo-1 hugo server +``` + +This should print the location where the web server is available, and you can open it in a browser. Updates made to the local repo should automatically get rendered. ## Adding Content @@ -23,31 +37,31 @@ To add a new person, starting from the root directory, run ``` hugo new content people/id.md ``` -where `id` must be replaced by the id you want to create. +where `id` must be replaced by the id you want to create. Navigate to `/content/people/id.md` and edit the front matter. -After the front matter, you can add more details. These will be rendered on `dasc-lab.github.io/people/id` page. +After the front matter, you can add more details. These will be rendered on `dasc-lab.github.io/people/id` page. ### Adding a paper -Similarly, to add a paper, run +Similarly, to add a paper, run ``` hugo new content papers/id.md ``` -and then edit `/contents/papers/id.md`. Again, you can add more info after the front matter, to have it render on the individual page. +and then edit `/contents/papers/id.md`. Again, you can add more info after the front matter, to have it render on the individual page. -If you link the author id correctly, each author's page will be automatically updated to include all the papers too. +If you link the author id correctly, each author's page will be automatically updated to include all the papers too. ## Styles and Layout -This website uses boostrap https://getbootstrap.com/ v5.3.3 to create styles. +This website uses bootstrap https://getbootstrap.com/ v5.3.3 to create styles. -To customize additional css, edit `/layouts/partials/style.html`. -To customize how the `person` and `papers` render, edit `/layouts/partials/person-card` or `/layouts/partials/paper-card`. +To customize additional css, edit `/layouts/partials/style.html`. +To customize how the `person` and `papers` render, edit `/layouts/partials/person-card` or `/layouts/partials/paper-card`. ## TODO -- add search functionality +- add search functionality - add projects - add news - fix homepage