|
| 1 | +# U Lab @UIUC |
1 | 2 |
|
2 |
| -# ulab-uiuc |
| 3 | +Welcome to the repositry for our lab website! Our design philosophy is to empower every lab member to contribute and update the website effortlessly, regardless of their technical backgrounds in JavaScript, HTML, or CSS skills. |
| 4 | + |
| 5 | +## Quick Start |
| 6 | + |
| 7 | +### Prerequisites |
| 8 | + |
| 9 | +- **No additional environment setup is required.** |
| 10 | + |
| 11 | +### Update Steps |
| 12 | + |
| 13 | +1. Locate Configuration Files |
| 14 | + - Navigate to the `/src/config/` directory to find relevant configuration `.jsx` files. |
| 15 | + - Identify the specific files that need to be modified. |
| 16 | +2. Modify Configuration and Assets |
| 17 | + - Update the necessary data in `/src/config/`. |
| 18 | + - If required, make corresponding changes in `/src/assets/`. |
| 19 | +3. Deploy Changes |
| 20 | + - Commit your changes and push to the main branch. |
| 21 | + - The deployment will be triggered automatically. |
| 22 | +4. Verify Deployment |
| 23 | + - Check GitHub Actions to confirm the deployment's success. |
| 24 | + - Review any logs or notifications for potential issues. |
| 25 | + |
| 26 | +## Examples |
| 27 | + |
| 28 | +### Update Personal Information |
| 29 | + |
| 30 | +1. Find your list in `/src/config/People.jsx`. |
| 31 | + |
| 32 | +2. Update your personal information in the list. |
| 33 | + |
| 34 | + ```js |
| 35 | + const phd_students = [ |
| 36 | + ..., |
| 37 | + { |
| 38 | + name: "Yanru Qu", // Mandatory |
| 39 | + img: require("../assets/people/YanruQu.jpg"), // Optional |
| 40 | + link: "https://yanruqu.com", // Optional |
| 41 | + description: "coadvised w/ [Prof. Ge Liu](https://www.mit.edu/~geliu/)", // Optional |
| 42 | + }, |
| 43 | + ... |
| 44 | + ]; |
| 45 | + ``` |
| 46 | + |
| 47 | + If you want to update your profile image, remember to upload it to `../assets/people/`. |
| 48 | + |
| 49 | + Our website supports markdown rendering in the description part. Follow markdown grammars if you want to use different formats like hyperlinks. |
| 50 | + |
| 51 | +3. Push your changes to the main branch. You updates will be visible at [https://ulab-uiuc.github.io/#/people](https://ulab-uiuc.github.io/#/people) if the deployment is successful. |
| 52 | + |
| 53 | +### Update Publication Information |
| 54 | + |
| 55 | +1. Find your list in `/src/config/Publication.jsx`. |
| 56 | + |
| 57 | +2. Update your publication information in the list. |
| 58 | + |
| 59 | + ```jsx |
| 60 | + const publications = [ |
| 61 | + ... |
| 62 | + { |
| 63 | + key: "yu2024researchtown", // Mandatory |
| 64 | + title: "ResearchTown: Simulator of Human Research Community", // Mandatory |
| 65 | + authors: |
| 66 | + "Haofei Yu, Zhaochen Hong, Zirui Cheng, Kunlun Zhu, Keyang Xuan, Jinwei Yao, Tao Feng, Jiaxuan You", // Mandatory |
| 67 | + year: "2024", // Mandatory |
| 68 | + venue: "Preprint", // Mandatory |
| 69 | + links: { |
| 70 | + paper: "https://arxiv.org/abs/2412.17767", // Optional |
| 71 | + code: "https://github.com/ulab-uiuc/research-town", // Optional |
| 72 | + thread: "https://x.com/youjiaxuan/status/1840767158868918639", // Optional |
| 73 | + contact : "mailto:[email protected]", // Optional |
| 74 | + video: "https://www.youtube.com/embed/Yz-r7KGXbyM", // Optional |
| 75 | + }, |
| 76 | + files: { |
| 77 | + markdown: require("../assets/publications/yu2024researchtown/researchtown.md"), // Optional |
| 78 | + bib: require("../assets/publications/yu2024researchtown/researchtown.bib"), // Optional |
| 79 | + pdf: require("../assets/publications/yu2024researchtown/researchtown.pdf"), // Optional |
| 80 | + }, |
| 81 | + tags: ["LLM", "Agent"], // Mandatory |
| 82 | + }, |
| 83 | + ... |
| 84 | + ] |
| 85 | + ``` |
| 86 | + |
| 87 | + Feel free to write a introduction to your publicaiton in a markdown file. Our website can render all the texts, figures, and tables, and code blocks in your markdown file. Examples are provided in [https://ulab-uiuc.github.io/#/publications/researchtown](https://ulab-uiuc.github.io/#/publications/yu2024researchtown). |
| 88 | + |
| 89 | +3. Push your changes to the main branch. You updates will be visible at [https://ulab-uiuc.github.io/#/publications](https://ulab-uiuc.github.io/#/publications) if the deployment is successful. In the meanwhile, you will have a separate publication page visible at [https://ulab-uiuc.github.io/#/publications/key](https://ulab-uiuc.github.io/#/publications/key). |
| 90 | + |
| 91 | +## Guidelines |
| 92 | + |
| 93 | +### Configuration Principles |
| 94 | + |
| 95 | +- Follow existing examples in configuration files as a reference. |
| 96 | +- When updating data in `/src/config/`, modify only the specific items within the provided data structures. |
| 97 | + |
| 98 | +### Text Formatting |
| 99 | + |
| 100 | +- Most body texts can be updated using markdown syntax. |
| 101 | +- Markdown allows rendering of various formats like bold text, hyperlinks, etc. |
| 102 | + |
| 103 | +### Data Management |
| 104 | + |
| 105 | +- Not all keys in a dictionary require a value. Missing values are acceptable in certain contexts. |
| 106 | +- Example: In `/src/config/People.jsx`, you can omit the `link` key if no personal website is available. |
| 107 | + |
| 108 | +### File Management |
| 109 | + |
| 110 | +- Use `require(path)` when dealing with files in `/src/config/`. |
| 111 | +- Paths are relative: files are stored in `/src/assets/`, so use `../assets/` in configuration files. |
| 112 | +- Maintain an organized folder structure when updating files in `/src/assets/`. |
| 113 | + |
| 114 | +### Link Conventions |
| 115 | + |
| 116 | +- When using internal links, include `/#` in the prefix because we are using Hash routers. Example: For the ResearchTown project page, use `/#/publications/yu2024researchtown`. |
| 117 | + |
| 118 | +## References |
| 119 | + |
| 120 | ++ [HAN Lab @MIT](https://hanlab.mit.edu) |
| 121 | ++ [Makeability Lab @UW](https://makeabilitylab.cs.washington.edu) |
| 122 | + |
| 123 | +## Contact |
| 124 | + |
| 125 | + |
0 commit comments