{"id":24303057,"url":"https://github.com/tovacinni/research-website-template","last_synced_at":"2025-04-04T17:04:01.249Z","repository":{"id":270956316,"uuid":"911922537","full_name":"tovacinni/research-website-template","owner":"tovacinni","description":"React + Next.js template for research websites (for PhD students, researchers, etc)","archived":false,"fork":false,"pushed_at":"2025-01-12T04:00:43.000Z","size":142,"stargazers_count":154,"open_issues_count":2,"forks_count":55,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T16:04:03.209Z","etag":null,"topics":["nextjs","portfolio","portfolio-template","portfolio-website","react","react-portfolio-template","research-tool","research-website","tailwindcss","template-project"],"latest_commit_sha":null,"homepage":"https://tovacinni.github.io/research-website-template/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tovacinni.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-04T07:42:21.000Z","updated_at":"2025-03-26T04:36:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"2a24c6f7-74f1-4703-ab24-2f8db4a503a6","html_url":"https://github.com/tovacinni/research-website-template","commit_stats":null,"previous_names":["tovacinni/research-website-template"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tovacinni%2Fresearch-website-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tovacinni%2Fresearch-website-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tovacinni%2Fresearch-website-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tovacinni%2Fresearch-website-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tovacinni","download_url":"https://codeload.github.com/tovacinni/research-website-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217174,"owners_count":20903008,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nextjs","portfolio","portfolio-template","portfolio-website","react","react-portfolio-template","research-tool","research-website","tailwindcss","template-project"],"created_at":"2025-01-17T00:34:10.731Z","updated_at":"2025-04-04T17:04:01.232Z","avatar_url":"https://github.com/tovacinni.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# research-website-template\n\nThis is a React + Next.js template meant for research websites. See a [demo of the template here](https://tovacinni.github.io/research-website-template/). My own [personal website](https://tovacinni.github.io) is also built with the same template.\n\nIn practice it could probably be used by anyone.\n\nIt is meant to be customizeable, all through modifying the `src/data` - which have arrays of objects that are used to generate the website.\n\nFor example, `src/data/publication.ts` contains an array like:\n\n```typescript\nexport const publicationData: Publication[] = [\n  {\n    year: \"2023\",\n    conference: \"International Conference on Machine Learning (ICML)\",\n    title: \"Robust Causal Discovery Under Distribution Shift\",\n    authors: \"Jane Smith, Xue Chen, Sarah Johnson\",\n    paperUrl: \"https://arxiv.org/abs/2302.13095\",\n    codeUrl: \"https://github.com/jsmith/robust-causal-discovery\",\n  },\n];\n```\n\nTo update your website, you can simply add objects to the array.\n\nThe schemas are defined in the same files, and many fields are optional for flexibility:\n\n```typescript\nexport interface Publication {\n  year: string;\n  conference: string;\n  title: string;\n  authors: string;\n  paperUrl?: string;\n  codeUrl?: string;\n  bibtex?: string;\n  tldr?: string;\n  imageUrl?: string;\n  award?: string;\n}\n```\n\nAny field with a `?` at the end is optional. Filling them in will create the UI components corresponding to them automatically.\n\nYou can also change the order of the sections in `src/data/section-order.ts`, and if you want full customization you can just edit the React components in `src/components`.\n\nThis project was birthed from annoyance over HTML + CSS templates- such as the very popular [Jon Barron template](https://github.com/jonbarron/website). The Jon Barron template is amazing because it is simple \u0026 complete which is why it's so popular- but over time, maintenance becomes difficult from the amount of duplicate code it creates (the Jon Barron index is now over 4000 lines of code). This is meant to be a much more minimal (to maintain) alternative (and was a good way to spend a few hours to build over holiday weekend).\n\n## Prerequisites\n\nFirst, install Node.js and npm through the [Node.js official website](https://nodejs.org/).\n\nVerify installation by running:\n\n```bash\nnode --version\nnpm --version\n```\n\n## Installation\n\n1. Fork the repository\n\n2. Clone the repository\n\n   ```bash\n   git clone [your-repository-url]\n   cd [repository-name]\n   ```\n\n3. Install dependencies\n\n   Inside the repository, run:\n\n   ```bash\n   npm install\n   ```\n\n## Running the Application\n\n1. To start the development server, run (in the repository directory):\n\n   ```bash\n   npm run dev\n   ```\n\n2. Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.\n\n## Deploying onto GitHub Pages\n\n1. Fork or clone this repo and push to your own repository at `[your-github-username].github.io`.\n\n2. In your repository settings, ensure the repository name matches `[your-github-username].github.io` if you want it to be your main GitHub Pages site.\n\n3. Push your changes to the main branch.\n\n4. Go to the GitHub page for your repository and go to `Settings` then `Pages`. If you set Source to be `GitHub Actions`, it should suggest you a build script for Next.js.\n\n5. Commit the build script and see things building.\n\nYour site should now be live at `https://[your-github-username].github.io/`.\n\n## Deploying to your own domain\n\nThe easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/) from the creators of Next.js.\n\n1. Create a [Vercel account](https://vercel.com/signup) if you haven't already\n2. Push your code to a Git repository (GitHub, GitLab, or Bitbucket)\n3. Import your repository on Vercel\n4. Vercel will automatically detect Next.js and configure the build settings\n5. Click \"Deploy\"\n\n## Contributing\n\nFeel free to drop a pull request whenever!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftovacinni%2Fresearch-website-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftovacinni%2Fresearch-website-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftovacinni%2Fresearch-website-template/lists"}